Thema Datum  Von Nutzer Rating
Antwort
17.04.2008 12:39:07 Bachus
NotSolved
17.04.2008 16:45:49 Holger
NotSolved
17.04.2008 17:42:10 Bachus
NotSolved
Blau Aw:Aw:Aw:Wie addiere ich die resultate aus einem l
18.04.2008 09:54:31 Holger
NotSolved
20.04.2008 12:34:02 Bachus
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
18.04.2008 09:54:31
Views:
693
Rating: Antwort:
  Ja
Thema:
Aw:Aw:Aw:Wie addiere ich die resultate aus einem l
Hallo Bachus,
überprüfe deine Formel. Was du damit willst, habe ich nicht verstanden, so dass ich dir keinen Tipp geben kann. Aber im Ausdruck (1 - Exp(-i / tau)) / (i / tau) wird der Divisor für i=0 ebenfalls 0, so dass die Division keinen Sinn, sondern einen Fehler ergibt. Stehen bei stetiger Verzinsung wirklich im Exponenten der ersten Exponentialfunktion weitere Exponentialfunktionsausdrücke?
Hoffentlich reichen die Hinweise
Holger

Bachus schrieb am 17.04.2008 17:42:10:

Lieber Holger vielen dank für die Antwort. Habe meinen Code verändert, das Ding will aber immer noch nicht laufen, leider. Ich besuche eine Vorlesung, die auf sehr hohem Niveau gehalten wird (Für die 10 Stunden die ich bisher Vba hatte ;)
Bei der Aufgabe geht es darum einen normalen Bond zu Pricen mit Nelson Siegel Daten.

Das Pricing fängt von hinten an, also zuerst der Preis eines Zerocouponbonds mit der ganzen Laufzeit(maturity) berechnen.
Was mit dem Coupon+1 multipliziert wird.(So hat man einen Zerocouponbon mit einem Nennwert entsprechend Coupon und Nennwert.
Bis hierhin habe ich nur einen Bond der einen Coupon gibt, und zwar am Ende. Aber die Coupons erhalte ich ja je nach frequency 2mal im jahr..UND ZWAR DIE HäLfte je..(das habe ich noch nicht einbezogen).

Also muss ich ab Maturity (Laufzeit) -1/frequency die Coupons bewerten. Ich sehe die Coupons als zerocouponbonds (da ich Sie mit dem Coupon multipliziere haben sie den Nennwert des Coupons.
Dafür kommt die schleife ins Spiel, ( bei zum Beispiel einer Maturity von 7 und einer Frequency von 1,
muss die schleife den wert von 6 coupons bestimmen). Diese Werte müssen eben addiert werden und schlussendlich zudem zerocoupon bon den ich zuerst bestimmt habe dazu gerechnet werden.

Bei mir siehr das denn so aus:




Function PriceNS(maturity As Double, coupon As Double, _
frequency As Long, level As Double, _
slope As Double, curvature As Double, _
tau As Double) As Double

Application.Volatile
Dim cr As Double
Dim summecr As Double
Dim e As Double
Dim i As Double
e = 2.71828183


summecr = 0
For i = (maturity - 1 / frequency) To 0 Step -1 / frequency ' hier berechne ich rückwärts jeden einzelnen coupon mit stetiger verzinsung

cr = coupon * (e ^ ((-i) * (level + (-slope + curvature) * _
(1 - Exp(-i / tau)) / (i / tau) _
- curvature * Exp(-i / tau)))) ' hier berechne ich den wert eines zerocouponbons mit facevalue = coupon
summecr = summecr + cr
Next i

PriceNS = ((e ^ ((-maturity) * (level + (-slope + curvature) * _
(1 - Exp(-maturity / tau)) / (maturity / tau) _
- curvature * Exp(-maturity / tau))) * (1 + coupon))) + summecr 'hier addiere ich zum bond mit einem coupon, die werte restlichen Coupons dazu

End Function

Funktioniert leider nicht.
Gibt nur an WERT...

Obli a
Level 4.00%
Slope -3.00%
Curvature 1.00%
Tau 1
Maturity 7
Coupon 4.00%
Frequency 1

Wären zum Beispiel Daten.

Ich wäre dir sehr dankbar wenn du mir helfen könntest! Danke




Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
17.04.2008 12:39:07 Bachus
NotSolved
17.04.2008 16:45:49 Holger
NotSolved
17.04.2008 17:42:10 Bachus
NotSolved
Blau Aw:Aw:Aw:Wie addiere ich die resultate aus einem l
18.04.2008 09:54:31 Holger
NotSolved
20.04.2008 12:34:02 Bachus
NotSolved