11.07.2015 Aufrufe

Strukturerhaltende Approximationen von Wurzel ... - G-CSC Home

Strukturerhaltende Approximationen von Wurzel ... - G-CSC Home

Strukturerhaltende Approximationen von Wurzel ... - G-CSC Home

MEHR ANZEIGEN
WENIGER ANZEIGEN
  • Keine Tags gefunden...

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Strukturerhaltende</strong> <strong>Approximationen</strong> <strong>von</strong><strong>Wurzel</strong>-DiffusionsgleichungenBachelorarbeit20. September 2011vorgelegt <strong>von</strong>Kirsten BernhardGeb. am: 7. August 1987in: Frankfurt am MainMatrikelnummer: 3608409Studienrichtung: Mathematikeingereicht beiProf. Dr. Thomas GerstnerFachbereich Informatik und MathematikInstitut für MathematikGoethe UniversitätFrankfurt am MainFrankfurt am Main, den 20. September 2011


Abbildungsverzeichnis1. Pfad eines Wiener Prozesses . . . . . . . . . . . . . . . . . . . . . . . . . . 72. Prozess mit konstanten Koeffizienten . . . . . . . . . . . . . . . . . . . . . 93. Prozess mit geometrischer SDGL . . . . . . . . . . . . . . . . . . . . . . . 104. <strong>Wurzel</strong>-Prozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115. starke Konvergenzordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . 186. schwache Konvergenzordnung . . . . . . . . . . . . . . . . . . . . . . . . . 187. Pfad des CIR-Modells für d > 1 . . . . . . . . . . . . . . . . . . . . . . . . 288. Pfad des CIR-Modells für d ≤ 1 . . . . . . . . . . . . . . . . . . . . . . . . 299. Empirische Verteilung des CIR-Prozesses mittels der exakten Simulationund der Simulation durch das Euler-Verfahren nach Deelstra und Delbaen(Euler-DD) mit κ = 0.3, θ = 0.04, σ = 0.2, X 0 = 0.04 und T = 0.25 . . . . 3510. Fehler ɛ(∆) als eine Funktion mit κ = 1, θ = 1, X 0 = 0.01 und σ = 1 . . . 3511. Fehler ɛ(∆) als eine Funktion mit κ = 1, θ = 1, X 0 = 0.01 und σ = √ 3 . . 3612. Regressionsgeraden für die starke Konvergenz mit κ = 1, θ = 1, X 0 = 0.01und σ = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3613. Regressionsgeraden für die starke Konvergenz mit κ = 1, θ = 1, X 0 = 0.01und σ = √ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3714. Regressionsgeraden für die schwache Konvergenz mit κ = 1, θ = 1, X 0 =0.01 und σ = 1 für 500 Runden . . . . . . . . . . . . . . . . . . . . . . . . 3815. Regressionsgeraden für die schwache Konvergenz mit κ = 1, θ = 1, X 0 =0.01 und σ = 1 für 1000 Runden . . . . . . . . . . . . . . . . . . . . . . . 393


Anfangs werden im Kapitel 2 die wichtigsten Grundlagen zu stochastischen Prozessengegeben. Im Kapitel 3 wird auf die Standard-Diskretisierungsverfahren eingegangen. Eswerden wichtige Begriffe, wie beispielsweise die Konvergenzordnung, eingeführt. Im Kapitel4 beginnt der Hauptteil dieser Arbeit. Es wird auf die <strong>Wurzel</strong>-Diffusionsgleichung eingegangenund das CIR-Modell näher vorgestellt. Außerdem werden die positivitätserhaltendenDiskretisierungsverfahren für das CIR-Modell gegeben. Im letzten Kapitel 5 werden numerischeErgebnisse dieser Diskretisierungsverfahren aufgezeigt.Die verwendeten Programme dieser Bachelorarbeit wurden in Matlab implementiert. Siebefinden sich im Anhang.2. Stochastische ProzesseIn diesem Kaptiel wird in die Theorie stochastischer Prozesse eingeführt. Der wichtigstestochastische Prozess für diese Bachelorarbeit, der Wiener Prozess, wird vorgestellt.Ausserdem beschäftigt sich dieses Kapitel mit dem Begriff des Ito-Prozesses, sowie demLemma <strong>von</strong> Ito. Die Herangehensweise dieses Kapitels orientiert sich an [3], sowie [10].Definition [Stochastischer Prozess]Unter einem stochatischer Prozess versteht man eine Zufallsgröße X(t), deren Wert überdie Zeit t zufälligen Änderungen ausgesetzt ist. Genauer gesagt handelt es sich bei einemstochastischen Prozess um eine Familie <strong>von</strong> Zufallsvariablen.Für eine stetige, kontinuierlich variierende Zeitvariable t ∈ I = [0, T ] ⊆ R bezeichnet{X(t)|t ∈ I} einen stetigen stochastischen Prozess.2.1. Wiener ProzessEin Wiener-Prozess, auch Brownsche Bewegung genannt, ist ein zeitstetiger stochastischerProzess, dessen Zuwächse dW (t), mit denen sich der Prozess über die Zeit t ändert,unabhängig und normalverteilt mit Mittelwert 0 und dem Zeitintervall dt entsprechendeVarianz sind. Das heißt es gilt:dW (t) ∼ N(0, dt). (2.1.1)Die Verteilung der Zuwächse eines Wiener Prozesses lässt sich mittels einer standardnormalverteiltenZufallsvariablen simulieren. Es gilt:dW (t) ∼ √ dtZ(t) mit Z(t) ∼ N(0, 1). (2.1.2)Das zeigt, dass die Zuwächse des Wiener Prozesses entsprechend einer √ dt-mal standardnormalverteiltenZufallsvariablen verteilt sind. Dies ist bedeutsam für die Implementierungstochastischer Differentialgleichungen.Eine weitere Eigenschaft des Wiener Prozesses ist, dass die nichtüberlappenden Zuwächseunabhängig sind. Es gilt demnach für 0 ≤ t 1 < t 2 ≤ t 3 < t 4W t2 − W t1 und W t4 − W t3 sind unabhängig. (2.1.3)6


Abbildung 1: Pfad eines Wiener ProzessesMit dem nachstehenden Algorithmus kann man einen Pfad eines Wiener Prozesses simulieren:% Simulation eines Pfades des Wiener ProzessesInput h = 0.01 % SchrittweiteW (1) = 0 % Startwertfor i = 1 : 100W (i + 1) = W (i) + randn ∗ √ hendDer Befehl “randn” erzeugt standardnormalverteilte Zufallsvariablen in Matlab.In Abbildung (4.5.3) wird ein Pfad eines Wiener Prozesses und seinem Mittelwert dargestellt.Als nächstes wird ein weiterer wichtiger stochastischer Prozess eingeführt, der Ito-Prozess.Definition [Ito-Prozess]Ein stochastischer Prozess X(t), der folgender stochastischen DifferentialgleichungdX(t) = a(X, t)dt + b(X, t)dW (t) (2.1.4)mit dW (t) ∼ Z(t) √ dt und Z(t) ∼ N(0, 1) genügt, heißt Ito-Prozess. W (t) stellt einenWiener Prozess dar und Z(t) ist eine standardnormalverteilte Zufallsvariable. Die stochastischeDifferentialgleichung (2.1.4) wird auch Ito-stochastische Differentialgleichung7


genannt. Der Parameter a(X, t) heißt Drift- und der Parameter b(X, t) Diffusionskoeffizient.Diese können sowohl <strong>von</strong> der Zeit t, als auch <strong>von</strong> der stochastischen VariablenX(t) abhängen. Durch die Wahl der Parameter a(X, t) und b(X, t) kann man den inDefinition (2.3) beschriebenen Prozess X(t) spezifizieren.Satz [Erwartungswert und Varianz der Ito-Gleichung][vgl. [3], p.20]Für den Erwartungswert und die Varianz der Ito-Gleichung gilt:E[dX(t)] = a(X, t)dt (2.1.5)V ar[dX(t)] = E[dX(t) − E[dX(t)] 2 ] = E[(b(x, t)dW (t)) 2 ] = b(X, t) 2 dt (2.1.6)2.2. Lemma <strong>von</strong> ItoSei X(t) ein Ito-Prozess und f : R + × R → R eine in der ersten Komponente einfachund in der zweiten Komponente zweifach stetig differenzierbare Funktion, so ist auchY t := f(X t , t) ein Ito-Prozess und es gilt:Beweisdf = ( ∂f∂t + a∂f ∂x + 1 2 b2 ∂2 f)dt + b∂f dW. (2.2.1)∂x2 ∂xEine Beweisskizze dieses Lemmas findet man beispielsweise in [3].2.3. Spezielle stochastische ProzesseIn diesem Kapitel der Bachelorarbeit werden einige spezielle stochastische Prozesse vorgestellt.Auf den <strong>Wurzel</strong>-Diffusionsprozess wird im Kapitel 4.0.1 näher eingegangen. DieAbbildungen in diesem Kapitel wurden mittels dem Euler-Maruyama-Verfahren erstellt.Dieses sowie andere Diskretisierungsverfahren werden im nächsten Kapitel erläutert.Prozesse, die auf konstanten Koeffizienten beruhenBei Prozessen, die auf stochastischen Differentialgleichungen mit konstanten Koeffizientenberuhen werden der Drift- und Diffusionsparameter konstant gewählt. Sie sind somitweder <strong>von</strong> der Zeit t, noch <strong>von</strong> der stochastischen Zufallsvariable X(t) abhängig. Diesist der einfachste Fall einer stochastischen Differentialgleichung. Es gilt:a(x, t) = µ, b(X, t) = σ → dX(t) = µdt + σdW (t)Es ergibt sich nach (2.1) für den Erwartungswert und die VarianzE[dX(t)] = µdt und V ar[dX(t)] = σ 2 dW (t).8


Abbildung 2: Prozess mit konstanten KoeffizientenEntsprechend des Erwartungswerts seiner Änderungen entwickelt sich der Pfad des Prozessesum die Trendgerade b(t) = µ ∗ t + X(0). Die Schwankungen um diese Geradebleiben gleich stark auf Grund des konstanten Diffusionsparameters. Die Abbildung (2)zeigt einen Pfad des Prozesses mit X(0) = 1, µ = 0.3 und σ = 0.2. In Blau eingezeichnetist die eben erläuterte Trendgerade, um die der Prozess schwankt.Prozesse mit geometrischer stochastischer DifferentialgleichungIn diesem Fall sind der Drift- und der Diffusionsparameter <strong>von</strong> den <strong>von</strong> der Zeit tverfügbaren Informationen abhängig. Es gilt:a(x, t) = µX(t), b(X, t) = σX(t) → dX(t) = µX(t)dt + σX(t)dW (t)Für den Erwartungswert und die Varianz bei Prozessen mit geometrischer stochastischerDifferentialgleichung ergibt sich nach (2.1):E[dX(t)] = µX(t)dt und V ar[dX(t)] = σ 2 X(t) 2 dW (t).Die Pfade des Prozesses folgen einem exponentiellen Trend. Wir erhalten für die Trendgeradein diesem Fall a(t) = e µt . Die Schwankungen des Prozesses um diese Geradenehmen mit der Zeit t entsprechend der Proportionalität der Varianz zu X(t) 2 zu, daauch X(t) steigt. Dieser Prozesstyp eignet sich für die Modellierung <strong>von</strong> Aktienkursen. InAbbildung (3) ist ein Pfad des Prozesses mit geometrischer stochastischen Differentialgleichungmit X(0) = 1, µ = 0.3 und σ = 0.2 und die Trendgerade a(t) = e µt abgebildet.9


Abbildung 3: Prozess mit geometrischer SDGL<strong>Wurzel</strong>-ProzessAuch in diesem Fall hängen der Drift- und der Diffusionsparameter <strong>von</strong> den <strong>von</strong> der Zeitt verfügbaren Informationen ab. Es gilt:a(x, t) = µX(t), b(X, t) = σ √ X(t) → dX(t) = µX(t)dt + σ √ X(t)dW (t)Für Erwartungswert und Varianz gilt hier nach (2.1):E[dX(t)] = µX(t)dt und V ar[dX(t)] = σ 2 X(t)dW (t).Man erkennt schnell, das dieser Prozess sich nur in der Varianz vom geometrischenProzess unterscheidet. Aus diesem Grund ist die Trendgerade hier gleich der im geometrischenFall a(t) = e µt . Die Schwankungen fallen entsprechend schwächer aus, da dieVarianz hier nur proportional zu X(t) ist. Abbildung (4) zeigt genau das. Hier ist auchwieder X(0) = 1, µ = 0.3 und σ = 0.2. Die Trendgerade ist a(t) = e µt .Mean-Reversion-ProzessAuch im Fall der Mean-Reversion-Prozesse sind der Drift- und der Diffusionskoeffizent<strong>von</strong> den <strong>von</strong> der Zeit t verfügbaren Informationen abhängig. Hier gilt:10


Abbildung 4: <strong>Wurzel</strong>-Prozessa(x, t) = κ(θ − X(t)), b(X, t) = σX(t) → dX(t) = κ(θ − X(t))dt + σX(t)dW (t)Für den Erwartungswert und die Varianz gilt hier, nach (2.1):Mean-reversion-EffektE[dX(t)] = κ(θ − X(t))dt und V ar[dX(t)] = σ 2 X(t) 2 dW (t).Mean-Reversion-Prozesse besitzen in dem Driftterm die folgende Eigenschaft:Wenn der Prozess X(t) unter das Gleichgewichtniveau θ kommt, dann besitzt der Prozesseine positive Driftrate, geht der Prozess über das Gleichgewichtsniveau, so hat erdementsprechend eine negative Driftrate. Das bedeutet, dass der Prozess <strong>von</strong> der Stärkeder Regulierungsfunktion κ in Abhängikeit der Entfernung des Prozesses zum Gleichgewichtsniveauwieder zum Gleichgewichtsniveau gezogen wird. Aus dieser Eigenschaftfolgt, dass der Prozess in Erwartung stets gegen das Gleichgewichtsniveau driftet. Diesertendenzielle Zug wird durch den stochastischen Diffusionsanteil überlagert. So ist esmöglich, dass man trotz negativer Driftrate, durch hohen Diffusionseinfluss, einen positivenZuwachs erhält. Je weiter sich der Prozess vom Gleichgewichtsniveau entfernt,desto größer wird die Wahrscheinlichkeit, dass der Prozess X(t) im nächsten Schritt inRichtung θ zurückkehrt. Dieser Effekt wird Mean-reversion-Effekt genannt.Wählt man κ < 0, so hätte der Prozess völlig andere Eigenschaften:Für X(0) > θ würde der Prozess X(t) gegen +∞ divergieren. Anderenfalls, also X(0)


2. Die Anfangszufallsvariable X t0 sei nicht antizipativ bzgl. des Wiener Prozesses W tmitE(X 2 t 0) < ∞.BeweisUnter diesen beiden Voraussetzungen besitzt die Ito-stochastische DifferentialgleichungdX t = f(t, X t )dt + g(t, X t )dW teine eindeutige Lösung auf [t 0 , T ] mit Anfangswert X t0 .Eine Idee des Beweises gibt [10].3.2. Euler-VerfahrenHerleitungDie Herleitung des stochastischen Euler-Verfahrens hat dieselbe Motivation, wie die Herleitungdes deterministischen Euler-Verfahrens. Dazu betrachten wir die stochastischeDifferentialgleichung (Ito-SDGL)dX(t) = a(X, t)dt + b(X, t)dW (t)auf dem Intervall [t 0 , T ] mit Anfangswert X(0). Die Lösung X(t) genügt der stochastischenIto-IntegralgleichungX(t) = X(0) +∫ tt 0a(X, s)ds +auf dem Intervall [t 0 , T ], sowie der Integralgleichung∫ tn+1∫ tt 0b(X, s)dW (s)∫ tn+1X(t n+1 ) = X(t n ) + a(X, s)ds + b(X, s)dW (s)t n t nauf dem Teilintervall [t n , t n+1 ] <strong>von</strong> [t 0 , T ]. Wie im deterministischen Fall kann man jetztdie Integrandenfunktionen a und b zu der Auswertungsstelle t n = s “einfrieren”. Darauserhalten wir die folgende Approximationmit∫ tn+1∫ tn+1X(t n+1 ) ≈ X(t n ) + a(X, t n )ds +t n t n∫ tn+1= X(t n ) + a(X, t n ) + 1 · ds + b(X, t n )t nb(X, t n )dW (s)∫ tn+1= X(t n ) + a(X, t n )∆ n + b(X, t n )∆W n∆ n = t n+1 − t n =∫ tn+1t n1 · dW (s)t n1 · ds mit einem Fehler O(h)∫ tn+1∆W n = W (t n+1 ) − W (t n ) = 1 · dW (s) mit einem Fehler O( √ h)t nDiese Approximation scheint konsistent mit der Definition des Ito-Integrals zu sein.13


für den Erwartungswert E(X). Dieser Schätzer ist erwartungstreu, das heißt es giltE(Θ n ) = 1 nn∑E(X i ) = 1 ni=1n∑E(X) = E(X).i=1Und die Varianz des Schätzers konvergiert gegen Null für n → ∞.V ar(Θ n ) = 1 n 2n∑i=1V ar(X i ) = 1 V ar(X) → 0.nWir wollen nun das Euler-Maruyama-Verfahren, angewandt auf die stochastische DifferentialgleichungdX t = µX t dt + σX t dWempirisch auf starke Konvergenz testen. Dieser Test nennt sich lineare Ausgleichsrechnungoder lineare Regressionsanalyse. Dazu gehen wir da<strong>von</strong> aus, dass wir die Ungleichungɛ(∆) ≤ K∆ βnäherungsweise als Gleichung auffassen können. Durch logarithmieren erhalten wirlog ɛ(∆) ≈ log K + β log ∆.Plotten wir nun also ɛ(∆) und ∆ mit doppel-logarithmischer Skala, so können wir dieKonvergenzordnung als die Steigung der Geradeny(x) ≈ log C + βxmit y(x) = log ɛ(∆) und x = log ∆ auffassen. Diese Gerade wird auch lineare Ausgleichsgeradeoder Regressionsgerade genannt.Methode der kleinsten QuadrateDa die Punkte (log ∆, log ɛ(∆)) in der Praxis nicht exakt auf der eben beschriebenenGeraden liegen werden, bestimmt man die Geradengleichung γ mittels der Methode derkleinsten Quadrate.Man berechnet z ∗ = (log C, γ) als Lösung des folgenden Minimierungsproblemz ∗ = argmin z∈R ||Az − b|| 2 .Hier ist || · || 2 die euklidische Norm. Es seien⎛⎞1 log ∆ 1⎜⎟A = ⎝ . . ⎠ ∈ R m×2 , (3.5.2)1 log ∆ m16


=⎛⎜⎝log ɛ(∆ 1 ).log ɛ(∆ m )⎞⎟⎠ ∈ R m . (3.5.3)Das Argumentenminimum bedeutet, dass z ∗ das folgende Problem löst :||Az ∗ − b|| 2 = minz∈R 2 ||Az − b|| 2.z ∗ kann man direkt über eine QR-Zerlegung lösen. In Matlab kann die Methode zurLösung des Minimierungsproblem durch den Befehl A\b gelöst werden. Als Ergebniserhält man einen zweidimensionalen Vektor, dessen zweiter Eintrag die Steigung derGerade angibt.BeispielIn Abbildung (5) kann man jetzt die starken Konvergenzordnungen des Euler-Maruyama-Verfahrenund des Milstein-Verfahrens, angewandt auf die stochastische DifferentialgleichungdX t = µX t dt + σX t dWmit µ = −0.5, σ = 0.9, X 0 = 1 und T = 1, erkennen. Zusätzlich wurden Kontrolllinienmit den Steigungen − 1 2und −1 in die Abbildung eingezeichnet. Man sieht, dassdas Euler-Maruyama-Verfahren eine starke Konvergenz <strong>von</strong> 1 2hat und das Milstein-Verfahren hat eine starke Konvergenz <strong>von</strong> 1. Die lineare Ausgleichsrechnung ergibt bei500 Runden:Verfahren γ ResiduumEuler-Maruyama-Verfahren 0.4505 0.2495Milstein-Verfahren 1.0516 0.2142Um die Ausgleichsrechnung für die schwache Konvergenzordnung zu bestimmen, gehtman analog zu der oben vorgestellten Methode vor. Nur das Fehlerkriterium muss angepasstwerden. In Abbildung (6) sieht man die Ausgleichsgeraden für die schwachenKonvergenzen des Euler-Maruyama-Verfahrens und des Milstein-Verfahrens. Da wir vermuten,dass beide Verfahren eine schwache Konvergenzordnung 1 haben, ist zusätzlicheine Kontrollinie mit der Steigung -1 eingezeichnet. Man kann gut erkennen, dass beideAusgleichsgeraden der Verfahren eine Steigung <strong>von</strong> -1 haben, was bedeutet, dass unsereVermutung richtig war. Tatsächlich liefert die lineare Ausgleichsrechnung bei 500Runden:Verfahren γ ResiduumEuler-Maruyama-Verfahren 0.5748 3.4001Milstein-Verfahren 0.9549 0.245517


Abbildung 5: starke KonvergenzordnungAbbildung 6: schwache Konvergenzordnung18


3.6. Methoden 2. OrdnungBetrachte Ito-SDGLdX(t) = a(X, t)dt + b(X, t)dW (t)Eine Lösung X(t) auf dem Intervall [0, T ] genügt der stochastischen IntegralgleichungX(t) = X(0) +∫ t0a(X, s)ds +∫ t0b(X, s)dW (s)Für jedes zweimal stetig differenzierbare U lautet die stochastische Kettenregeloder in IntegralformmitdU(X, t) = L 0 U(X, t)dt + L 1 U(X, t)dW (t)U(X, t) = U(X(0)) +∫ t0L 0 U(X, s)ds +∫ tL 0 U = ∂U∂t + a∂U ∂x + 1 2 b2 ∂2 U∂x 2L 1 U = b ∂U∂xJetzt haben wir 2 Integrale, die wir weiterentwickeln können.0L 1 U(X, s)dW (s)U ≡ a im Riemann-Integral∫ t0 a(X, s)ds = ∫ (t0a(X, 0) + ∫ s0 L0 a(X, τ)dτ + ∫ s0 L1 a(X, τ)dW τ)ds∫ t0U ≡ bb(X, s)dW s =+∫ s0∫ t0im Ito-Integral(b(X, 0) +∫ sL 1 b(X, τ)dW τ)dW s0L 0 b(X, τ)dτDaraus erhalten wir den ersten Schritt der Taylor-Approximation++X(t) = X(0) + a(X, 0)∫ t ∫ s0 0∫ t ∫ s00L 0 a(X, τ)dτds +L 0 b(X, τ)dτdW s +∫ tdt + b(X, 0)0∫ t ∫ s0 0∫ t ∫ s00∫ t0dW sL 1 a(X, τ)dW τ dsL 1 b(X, τ)dW τ dW s19


Einen Schritt weiter erhalten wirX(t) = X(0) + a(X, 0)+L 0 a(X, 0)+L 0 b(X, 0)∫ t ∫ s0 0∫ t ∫ s00∫ t0dt + b(X, 0)dτds + L 1 a(X, 0)dτdW s + L 1 b(X, 0)+neuer Rest∫ t0∫ t ∫ s0 0∫ t ∫ s00dW sdW τ dsdW τ dW sDer neue Restterm besteht jetzt aus Dreifach-Integralen. Durch das Einsetzen der OperatorenL 0 und L 1 erhalten wir die ApproximationX(n + 1) ≈ X(n) + a∆ n + b∆W + (aa ′ + 1 2 b2 a ′′ )I (0,0)+(ab ′ + 1 2 b2 b ′′ )I (0,1) + ba ′ I (1,0) + bb ′ I (1,1)mit ∆W = W (t n+1 ) − W (t n ). Um das Verfahren anwenden zu können, müssen wir jetztnoch die stochastischen Multi-Integrale auswerten.3.7. Simulation stochastischer Multi-Integrale[vgl. [5], pp.350-351 und [9], pp.168-172]• I (0,0) = ∫ t n+1t n• I (1,1) = ∫ t n+1t n∫ st ndτds = 1 2 ∆ n 2∫ st ndW τ dW s = 1 2 [(∆W )2 − ∆ n ]• Für stochastische Doppelintegrale mit i 1 = i 2 haben wir die “einfache” Formel∫ tn+1∫ st n= 1 2 ( ∫ tn+1t ndW τ dW st ndW s ) 2 − 1 2∫ tn+1t n= 1 2 [(∆W )2 − ∆ n ]Einfach im Sinne, dass sie nur die einfachen Zuwächse ∆W, ∆ n enthält.• I (0,1) = ∫ t n+1t n∫ st ndτdW (s) = ∫ t n+1t n(s − t)dW (s)dt20


• Durch pfadweise Integration erhalten wirJetzt müssen wir uns nur nochI (0,1) = ∆ n W (t n+1 ) −= ∆ n [W (t n+1 ) − W (t n )] −I (1,0) =∫ tn+1t n∫ tn+1t n= ∆ n ∆W − I (1,0)∫ tn+1t n[W (s) − W (t n )]dsW (s)ds[W (s) − W (t n )]dsanschauen. Wir wissen: Es gilt Identität I (1,0) +I (0,1) = I (0) I (1) , ausserdem kennen wir dieVerteilungen I (0,1) ∼ N(0, ∆3 n3). Und zusätzlich kennen wir die Korrelation E[I (1,0) I (1) ] =∆ 2 n2. Wir können ∆W und I (1,0) mit ∆W und ∆Z mit folgender Verteilung( ∆W∆Z)(∼ N 0,(1 ∆n2 ∆2 n12 ∆2 1n 3 ∆3 nsimulieren. Daraus erhalten wir das folgende Schema 2.OrdnungX(n + 1) = X(n) + a∆ n + b∆W + (ab ′ + 1 2 b2 b ′′ )[∆W ∆ n − ∆Z]) )+a ′ b∆Z + 1 2 bb′′ [∆W 2 − ∆ n ]+(aa ′ + 1 2 b2 a ′′ ) 1 2 ∆2 n3.8. Vektorwertige stochastische DifferentialgleichungenWir haben die DarstellungX i (t n+1 ) = X i (t n ) +∫ tn+1t na i (u)du +m∑k=1∫ tn+1t nb i,k dW k (u), i = 1, . . . , dmit X i d-dimensionaler Zufallsvektor und W k m-dimensionaler Wiener-Prozess.Sei X(t) = (X 1 t , . . . , X d t ) T eine Lösung der d-dimensionalen Ito-SDGLdX(t) = a(X, t)dt +m∑b k (X, t)dW j twobei W (t) = (Wt 1 , . . . , Wtm ) t ein m-dimensionaler Wiener-Prozess ist.Sei U : [0, T ] × R d → R 1 und definiere Y (t) = U(X, t). Dann lautet die Ito-FormeldY (t) = L 0 U(X, t)dt +k=1m∑L k U(X, t)dWtkk=121


oder in der Integralversionmit den Operatorenund∫ tU(X(t)) = U(X, 0) + L 0 U(X, s)ds +t 0L 0 U = ∂U d∑∂t + ∂Ua i + 1 ∂x i 2L k =i=1d∑i=1b ik∂U∂x i,d∑m∑k=1i,j=1 k=1∫ tt 0L k U(X, s)dW k sm∑ ∂ 2 Ub ik b jk∂x i ∂x jk = 1, . . . , mWir approximieren mit denselben Schritten wie im skalaren Fall. Daraus erhalten wirfolgende DiskretisierungX i (t n+1 ) = X i (t n ) + a i (X, t n )∆ n +m∑b ik (X, t n )∆W kk=1für jedes i = 1, . . . , d++ 1 2 L0 a i (X, t n )I (k,0)m∑ (L 0 b ik (X, t n )I (0,k) +k=13.9. Kommutativitätsbedingungm∑)L j b ik (X, t n )I (j,k)Oft können wir die Struktur einer SDGL benutzen, um das Verfahren zu vereinfachenund die Auswertung der Multi-Integrale zu vermeiden. Eine stochastische Differentialgleichungm∑dX(t) = a(X, t)dt + b j (X, t)dW j tbesitzt kommutatives Rauschen, wennIn diesem Fall benutzen wir die Identitätj=1j=1L i b j (x) ≡ L j b i (x), ∀t, i, j ∈ {1, . . . , m}.I (i,j) + I (j,i) = I (i) I (j) = ∆W i n∆ j num die SummeL i b j (X(n))I (i,j) + L j b i (X(n))I (j,i)22


zu vereinfachen. Wir erhalten= L i b j (X(n)){I (i,j) + I (j,i) }= L i b j (X(n))I (i) I (j)= L i b j (X(n))∆W i n∆W j nWenn die Kommutativitätsbedingung erfüllt ist, kann man die Auswertung der stochastischenMuli-Integrale vermeiden.Allgemeines schwaches Taylor-VerfahrenDas allgemeine schwache Taylor-Verfahren der Ordnung β = 1, 2, . . . hat die FormX(t n+1 ) ≈ X(t) +β∑n=1∑Wenn β = 1 erhalten wir so das Euler-Verfahren.Allgemeines starkes Taylor-Verfahrenj 1 ,...,j nL j 1. . . L j n−1b jn I (j1 ,...,j n)Das allgemeine starke Taylor-Verfahren der Ordnung β = 1 2 , 1, 3 2, . . . hat die Form∑X(t n+1 ) ≈ X(t) +L j 1. . . L j n−1b jn I (j1 ,...,j n)(j 1 ,...,j n)∈A βDie Menge A β ist wie folgt definiert: Ein Vektor A mit Indizes (j 1 , . . . , j n ) liegt in A β ,wenn entweder (i) die Anzahl der Indizes n plus die Anzahl der Indizes, die gleich 0 sindkleiner oder gleich 2β sind, oder (ii) n = β + 1 2und alle n Indizes 0 sind.4. <strong>Wurzel</strong>-DiffusionsprozessIm Kapitel 2.3 wurden bereits <strong>Wurzel</strong>-Prozesse vorgestellt. In diesem Teil der Arbeitbeschäftigen wir uns mit <strong>Wurzel</strong>-Diffusionsprozessen (square root diffusion) der FormdX(t) = κ(θ − X(t))dt + σ √ X(t)dW (t). (4.0.1)Die amerikanischen Mathematiker Cox, Ingersoll und Ross schlugen in ihrer Arbeit “Atheory of the term structure of interest rates” 1985 den <strong>Wurzel</strong>-Diffusionsprozess erstmaligals Modell für kurzfristige Zinssätze vor (short rate model). Daher wird der Prozessauch CIR-Modell genannt. Die Herangehensweise dieses Kapitels folgt der <strong>von</strong> [3].23


4.1. Definition [CIR-Modell]Das CIR-Modell ist durch die stochastische DifferentialgleichungdX(t) = κ(θ − X(t))dt + σ √ X(t)dW (t) (4.1.1)gegeben. Die Parameter κ ≥ 0, θ > 0, σ seien reell und W (t), t ≥ 0 sei ein WienerProzess. Bei diesem Prozess findet im Driftterm die Idee der Mean-Reversion Anwendung.Der beschriebene Prozess X(t) wird mit der Mean-Reversion-Stärke κ zumMean-Reversion-Niveau θ gezogen. Das CIR-Modell ist eine Zusammensetzung aus einemMean-Reversion-Prozess sowie einem <strong>Wurzel</strong>-Prozess. Vorausgesetzt es gelten diefolgenden BedingungenX(0) > 0 sowie 2κθ ≥ σ 2 ,so kann es beim CIR-Modell auf Grund der Proportionalität der Volatilität σ zu √ X(t)fast sicher zu keinen negativen Werten kommen. Wenn der Prozess die Nullinie erreicht,das heißt X(t) = 0, wird auch der gesamte Diffusionsterm σ √ X(t) auf Null gesetzt.Dann kommt das Mean-Reversion-Prinzip zum Tragen und es können nur noch Werteauftreten, die sich näher am Mean-Reversion-Niveau befinden.Es existiert keine geschlossene Lösung für diesen Prozess, was die analytische Umgänglichkeitdes Prozess erschwert. Allerdings kann man mit Hilfe der Übergangsdichte,welche bekannt ist, Pfade exakt simulieren.4.2. Übergangsdichte eines stochastischen ProzessesMit der Übergangsdichte ρ(x) eines Prozesses kann die Wahrscheinlichkeit, dass derProzess zum Zeitpunkt t n+1 einen Wert zwischen a und b annimmt, vorausgesetzt, dassder Prozess zum Zeitpunkt t n gleich X war, angegeben werden.ρ(X ′ , t n+1 |X, t n ) bezeichnet die Übergangsdichte, die die Wahrscheinlichkeit beschreibt,dass der Prozess zur Zeit t n gleich X ′ , unter der eben genannten Bedingung, so gilt:P (a ≤ X(t n+1 ) ≤ b|X(t n ) = X) =∫ bap(X ′ , t n+1 |X, t n ). (4.2.1)Alle betreffenden Informationen des Prozesses sind in der Übergangsdichte enthalten.Die Übergangsdichte des CIR-Modells ist durch eine nichtzentrale Chi-Quadratverteilunggegeben.4.3. Parameterbeschreibung• θ ist das Gleichgewichtsniveau des Prozesses, auch Mean-Reversion-Level genannt.• κ gibt die Stärke der Regulierungsfunktion an, man sagt auch Mean-Reversion-Speed.• σ ist die Volatilität des Prozesses.24


4.4. PropositionSei X(0) ≥ 0. Wenn 2κθ ≥ σ 2 (Stabilitätsbedingung) gilt, so ist der Prozess fast sicherstrikt positiv für alle t ≥ 0.BegründungDer Grund für die in (4.4) gegebene Bedingung ist, wenn X(t) gegen 0 konvergiert, dassauch der Diffusionsterm gegen 0 konvergiert. Dann wird der Prozess vom positiven Driftnach oben gezogen.4.5. Chi-Quadratverteilung / nichtzentrale Chi-Quadratverteilung[vgl. [5], pp.122-124]Wie bereits erwähnt, hat das CIR-Modell als Übergangswahrscheinlichkeit die nichtzentraleChi-Quadratverteilung. Diese wird in diesem Teil der Arbeit definiert und erläutert.Wenn ν eine positive ganze Zahl ist und Z 1 , . . . Z ν unabhängige standardnormalverteilteZufallsvariablen sind, so heißt die Verteilung <strong>von</strong>Z 2 1 + · · · + Z 2 νChi-Quadratverteilung mit ν Freiheitsgraden. Im Zeichen Xν 2 . Die Xν 2 -Verteilung ist gegebendurch∫P (Xν 2 1 y≤ y) =2 ν 2 Γ( ν 2 ) e − z ν2 z 2 −1 dz (4.5.1)mit einer Gamma-Verteilung Γ und es gilt Γ(n) = (n − 1)!, wenn n eine positive ganzeZahl ist. Dieser Ausdruck definiert eine gültige Wahrscheinlichkeitsverteilung für ν > 0und ist damit auch die Definition für nicht-ganzzahlige ν.Für n ∈ N und a 1 , . . . , a ν konstant ist die Verteilung <strong>von</strong>0ν∑(Z i + a i ) 2 (4.5.2)i=1die nichtzentrale Chi-Quadratverteilung (X ′ 2ν ) mit ν Freiheitsgraden und λ = ∑ νi=1 a2 idem Nichtzentralitätsparameter. Es gilt:= e − λ 2P (X ′ 2ν (λ) ≤ y) = F X′ (λ)(y)2∞∑j=0( 1 ∫2 λ)j /j! y2 ( ν 2 )+j Γ( ν 2 + j)für y > 0. Aus (4.5.3) folgt, dass für ν > 1 und ν ganzzahlig gilt0νz ( ν 2 )+j−1 e − z 2 dz. (4.5.3)X ′ 2ν (λ) = X ′ 21 (λ) + X 2 v−1. (4.5.4)25


Glasserman [5] sagt in seinem Buch, dass nach Johnson diese Darstellung auch für nichtganzzahligeν > 0 gilt. Für ν > 0 zeigt Gleichung (4.5.4), dass eine nichtzentrale Chi-Quadratverteilte Zufallsvariable wie eine gewöhnliche Chi-Quadratverteilte Zufallsvariablemit zufälligem Parameter des Freiheitsgrades dargestellt werden kann.Wenn N eine Poissonverteilte Zufallsvariable mit Mittelwert λ 2ist, dann giltP (N = j) = e − λ 2( λ 2 )j, j = 0, 1, 2, . . . .j!Betrachtet man nun eine Zufallsvariable Xν+2N2 mit N Poisson-verteilt1 . Bedingt aufN = j hat die Zufallsvariable die gewöhnliche X 2 -Verteilung mit ν + 2j Freiheitsgraden.Dann gilt:P (X 2 ν+2N ≤ y|N = j) =∫1y2 ( ν 2 )+j Γ(( ν 2 ) + j)und die unbedingte Verteilung ist gegeben durch∞∑P (N = j)P (Xν+2N 2 ≤ y|N = j) =j=0∞∑j=0e − λ 20e − z 2 z( ν 2 )+j−1 dz (4.5.5)( λ 2 )jP (Xν+2j 2 ≤ y). (4.5.6)j!Um einen Pfad des CIR-Modells exakt zu simulieren, kann man auf diese Eigenschaftenzurückgreifen. Es gilt für die nichtzentrale Chi-QuadratverteilteÜbergangswahrscheinlichkeit die Verteilung (4.5.3). Auf unseren Prozess bezogen gilt:X(t) = σ2 (1 − e −κ(t−u) )X ′ 2d4κ()4κe −κ(t−u)σ 2 (1 − e −κ(t−u) ) X(u) , t > u (4.5.7)mitd = 4θκσ 2 . (4.5.8)Das heißt man kann sagen, dass wenn X(u) bekannt ist, ist X(t) eine (σ2 (1−e −κ(t−u) )4κ-malnichtzentrale Chi-Quadratverteilte Zufallsvariable mit d Freiheitsgraden und Nichtzentralitätsparameter4κe −κ(t−u)λ =σ 2 (1 − e −κ(t−u) X(u). (4.5.9))Äquivalent dazu ist die AussageP (X(t) ≤ y|X(u)) = F ′ X 2 (λ)d()4κyσ 2 (1 − e −κ(t−u) )(4.5.10)1 Definition Possionverteilung: Sei λ ∈ R +. Eine Zufallsvariable X, deren Zielbereich alle natürlichenZahlen 0, 1, . . . umfasst, heißt Poissonverteilt mit Parameter λ, kurz Pois(λ)-verteilt, wennmit k = 0, 1, 2, . . . [vgl. [8], p.27 ].P (X = k) = e −λ λ kk! ,26


mit d wie in (4.5.8), λ wie in (4.5.9) und F ′ X 2 (λ) wie in (4.5.3). Die Chi-Quadratverteilungdist ein Spezialfall der Gammaverteilung 2 . Mit diesem Wissen kann man nun die Pfadedes CIR-Modells exakt simulieren.4.6. Simulation eines Pfades des CIR-Modells[vgl. [5], p.124]1. Fall: d > 1für i = 0, . . . , n − 1definierec = σ 2 (1 − e −κ(t i+1−t i ) )/4κλ = X(t i )(e −κ(t i+1−t i ) )/cgeneriereZ ∼ N(0, 1)Y ∼ X 2 d−1setzeende2. Fall: d ≤ 1für i = 0, . . . , n − 1definiereX(t i+1 ) = c[(Z + √ λ) 2 + Y ]c = σ 2 (1 − e −κ(t i+1−t i ) )/4κλ = X(t i )(e −κ(t i+1−t i ) )/cgeneriere( ) λN ∼ P ois2Y ∼ X 2 d+2NsetzeendeX(t i+1 ) = cY2 Definition Gammaverteilung: Die Gammaverteilung ist durch die folgende Wahrscheinlichkeitsdichtegegeben:1f(y) =Γ(a)β a ya−1 e −yβ ,mit y ≥ 0 und reellen Parametern a und β [vgl. [5] ].27


Abbildung 7: Pfad des CIR-Modells für d > 1Abbildung (7) zeigt einen Pfad des CIR-Modells für den Fall d > 1. Es wurde mittels derin (4.6) beschriebenen Simulation (links) erstellt. Abbildung (8) zeigt dementsprechendeinen Pfad, der mittels der in (4.6) beschriebenen Simulation (rechts) erstellt wurde. Inbeiden Abbildungen ist zusätzlich noch das Mean-reversion-Level mit eingezeichnet.4.7. Diskretisierungsverfahren für das CIR-ModellDie eben erläuterte Methode zur exakten Simulation des CIR-Modells ist numerischsehr aufwendig, da man für jeden Schritt eine normalverteilte und eine gammaverteilteZufallsvariable ziehen muss. Dies ist für zum Beispiel Monte-Carlo-Simulationen 3 ausdiesem Grund eher ungeeignet. Eine andere Möglichkeit, zwar nicht exakt, jedoch schnellerist die Anwendung <strong>von</strong> den in Kapitel 3 kennengelernten Diskretisierungsmethoden,wie beispielsweise das einfache Euler-Maruyama-Verfahren. Hier ist jedoch zu beachten,dass jedes X(t n ), welches durch beispielsweise das Euler-Maruyama-Verfahren erzeugtwurde, mit positiver Wahrscheinlichkeit negative Werte annehmen kann. Diskretisierungsverfahren,die die Struktur des CIR-Modells erhalten, also die die Positivität desProzesses garantieren, werden in diesem Kapitel der Arbeit vorgestellt. Die vorgestelltenDiskretisierungsverfahren wurden aus [1], [2], [3], [7] und [12] entnommen.3 Die Monte Carlo Simulation ist heutzutage ein wichtiges Instrument bei der Preisgestaltung <strong>von</strong> Wertpapieren[vgl. [5] ]. Für die Anwendung der Monte Carlo Simulation wird ein Integrand an zufälliggewählten Stützstellen ausgewertet. Der Integralwert wird als Mittel der Funktionswerte an diesenStützstellen berechnet [vgl. [4] ].28


Abbildung 8: Pfad des CIR-Modells für d ≤ 14.7.1. PositivitätDefinition[vgl. [6]]Es sei X t ein positiver stochastischer Prozess, das heißt es gilt für alle t > 0,P ({X t > 0}) = 1.Unter dieser Bedingung nennen wir das numerische Diskretisierungsverfahren mit derApproximation X(n) für X(t n ) positivitätserhaltend genau dann, wenngilt für alle n ∈ N.4.7.2. Euler-Maruyama-VerfahrenP ({X(n + 1) > 0|X(n) > 0}) = 1Wir beginnen wieder mit dem einfachsten Verfahren, dem Euler-Maruyama-Verfahren.Das Euler-Maruyama-Verfahren haben wir folgendermaßen definiert (siehe Kapitel 3)X(n + 1) = X(n) + a(X(n))∆ n + b(X(n))∆W (n),n = 0, 1, 2, ..., N − 129


mit ∆ n = t n+1 − t n = ∫ t n+1t n1 · ds und ∆W n = W (t n+1 ) − W (t n ) = ∫ t n+1t n1 · dW (s).Daraus ergibt sich für das CIR-ModellX(n + 1) = X(n) + κ(θ − X(n))∆ n + σ √ X(n)∆W (n),n = 0, 1, 2, ..., N − 1.Dieses Verfahren liefert an den Zeitpunkten t n+1 = t 0 + (n + 1)∆ n , die für∆W < − X t n+ κ(θ − X tn )∆ nσ √ X tntrotz X tn > 0 eine negative Approximation für X tn+1 [vgl. [6], p.237]. In diesem Fallwürde das Verfahren scheitern. Das Euler-Maruyama-Verfahren ist also nicht positivitätserhaltend.Wir wollen uns nun Verfahren anschauen, mit denen man das CIR-Modell approximierenkann, ohne dass das Verfahren auf Grund <strong>von</strong> negativen Werten scheitert.Euler-Verfahren nach HighamHigham hat folgende Lösung für das Problem der Strukturerhaltung vorgeschlagen. Erhat √ X(t) durch √ |X(t)| ersetzt. Daraus erhält man folgendes VerfahrenX(n + 1) = X(n) + κ(θ − X(n))∆ n + σ √ |X(n)|∆W (n). (4.7.1)Dieses Verfahren ist nicht positivitätserhaltend für <strong>Wurzel</strong>-Diffusionsgleichungen, wiedas CIR-Modell [vgl. [12] ].Euler-Verfahren nach Deelstra und DelbaenDeelstra und Delbaen haben eine andere Möglichkeit vorgeschlagen, die Probleme zuverhindern. Sie haben folgendes Verfahren untersucht:X(n + 1) = X(n) + κ(θ − X(n) + )∆ n + σ √ X(n) + ∆W (n), (4.7.2)mit X + = max(x, 0). Die Besonderheit dieses Prozesses ist, dass der Prozess kleiner Nullwerden kann, an den Punkten, an denen das Verfahren deterministisch wird mit einerAufwärtsbewegung κθ. Das bedeutet, man kann die Positivität der Diskretisierung nichtgarantieren.Euler-Maruyama-Verfahren nach DiopDiop betrachtete die folgende Lösung für das Problem:X(n + 1) = |X(n) + κ(θ − X(n))∆ n + σ √ X(n)∆W (n)|. (4.7.3)Dieses Verfahren spiegelt die Lösung an der Achse X = 0. Das Euler-Verfahren nachDiop ist positivitätserhaltend für CIR-Prozesse.30


Diese Methoden liefern zwar positive Prozesse, jedoch ist es zweifelhaft, ob diese Verfahrenzulässige Realisierungen eines Pfades <strong>von</strong> (4.0.1) erzeugen [vgl. [6] ]. Wir könnendurch implizite Verfahren die Positivität eines Prozesses erhalten. In den nächsten Schrittenwollen wir diese impliziten Verfahren vorstellen.4.7.3. Milstein-VerfahrenBeim Milstein-Verfahren gilt analog zum Euler-Maruyama-Verfahren, dass für{∆W < min − X t n+ κ(θ − X tn )σ √ , √ }∆ nX tndas Verfahren trotz positivem Anfangswert X tn > 0 eine negative Approximation fürX tn+1 liefert [vgl. [6], p.238]. Man muss also wieder das Verfahren so ändern, dass mandie Positivität des CIR-Modells gewährleisten kann. Diese Positivität kann man mit demdrift-impliziten Milstein-Verfahren garantieren.Drift-implizites Milstein-VerfahrenDas drift-implizite Milstein-Verfahren hat die folgende FormX(n + 1) = X(n) + a(X(n + 1))∆ n + b(X(n))∆W + 1 4 b′ (X(n))b(X(n))(∆W 2 − ∆ n ).(4.7.4)Anhand dieser Gleichung ist zu erkennen, dass sich die drift-implizite Variante nur inder impliziten Behandlung des Driftterms a <strong>von</strong> dem normalen Milstein-Verfahren unterscheidet.4.7.4. Satz [Drift-implizites Milstein-Verfahren & Positivität][vgl [6], pp.237-238]Das drift-implizite Milstein-Verfahren (4.7.4), angewandt auf das CIR-Modell (4.0.1),ist positivitätserhaltend für beliebige Schrittweiten ∆ n .BeweisFür das CIR-Modell (4.0.1) ist ein Diskretisierungsschritt mittels dem drift-implizitenMilstein-Verfahren (4.7.4) gegeben durchX(n + 1) = X(n) + κ(θ − X(n + 1))∆ n + σ∆W + 1 4 σ2 (∆W 2 − ∆ n ). (4.7.5)Wenn wir diese Gleichung nach X(n + 1) auflösen erhalten wirX(n + 1) = X(n) + κθ∆ n + σ √ X(n)∆W + 1 4 σ2 ((∆W ) 2 − ∆ n )1 + κ∆ n. (4.7.6)31


Es muss also nur gezeigt werden, dass der Zähler stets positiv ist. Wir fassen alle Zufallstermein eine Funktion zusammeng(∆W ) = σ √ (X(n)∆W + 1 4 σ2 ∆W 2 (4.7.7)daraus erhalten wir mitg ′ (∆W ) = σ √ X(n) + 1 2 σ2 ∆W (4.7.8)sofort, dass( )min g(∆W ) = g − s√ X(n)= −X(n). (4.7.9)∆W ∈R σJetzt können wir damit den Zähler wie folgt abschätzenX(n) + (κθ − 1 4 σ2 )∆ n + g(∆W )≥ X(n) + (κθ − 1 4 σ2 )∆ n + min ∆W ∈R g(∆W )= X(n) + (κθ − 1 4 σ2 )∆ n − X(n)= (κθ − 1 4 σ2 )∆ n > 0.Die letzte Ungleichung folgt aus der Stabilitätsbedingung 2κθ > σ 2 . Gilt die Stabilitätsbedingungnicht, ist es sinnvol,l an den Stellen, an denen X(t) negativ wird, aufdas Verfahren (4.7.2) zurückzugreifen.4.7.5. Taylor Verfahren schwacher Ordnung 2[vgl. [5] ,pp.355-357]Um ein Verfahren mit schwacher Ordnung 2 für das CIR-Modell zu verwenden, benutztGlasserman das vereinfachte Taylor-VerfahrenX(t n+1 ) = (t n ) + a(x, t)∆ n + b(X, t)∆W n+ 1 2 (a′ b + ab ′ + 1 2 b2 b ′′ )∆W n ∆ n + 1 2 bb′ [∆W 2 n − ∆ n ]+(aa ′ + 1 2 b2 a ′′ ) 1 2 ∆2 n. (4.7.10)Um zu vermeiden, dass man die <strong>Wurzel</strong> aus einer negativen Zahl ziehen oder durch Nullteilen muss, ersetzt er X(t n ) durch ˆX(t n ) = |X(t n )|. Daraus ergibt sich das folgendevereinfachte Taylor Verfahren 2. Ordnung für <strong>Wurzel</strong>-Diffusionsprozesse√X(t n+1 ) = ˆX(t n ) + κθ∆ n − κ ˆX(t n )∆ n + σ ˆX(t n )∆W n32


⎛[ ]+ ⎝ κθ4 − σ2 σ√16 ˆX(t n )− 3κσ √2⎞ˆX(t n ) ⎠ ∆W n ∆ n− 1 2 κ2 (θ − ˆX(t n ))∆ 2 n. (4.7.11)Dieses Verfahren hat nach Glasserman eine schwache Konvergenzordnung 2. Diese wirdim nächsten Kapitel nachgeprüft.5. Numerische Ergebnisse5.1. Starke KonvergenzIn diesem Teil der Bachelorarbeit wollen wir uns mit der starken Konvergenz der Verfahrennach Deelstra und Delbaen, nach Diop und dem Drift-impliziten Milstein-Verfahrenbeschäftigen. Dies wollen wir in numerischer Weise machen. Wir bedienen uns hierfürder in Kapitel 3.5 vorgestellten Methode der Ausgleichsrechnung (Regressionsanalyse)und zusätzlich dem Verfahren der kleinsten Quadrate. Da wir keine geschlosseneLösungsformel für das CIR-Modell zur Verfügung haben, mit der wir den Fehler derVerfahren bestimmen können, müssen wir auf folgendes Lemma zurückgreifen.33


Lemma[vgl. [1], p. 374]folgen-Betrachten wir ein Verfahren X n , das gegen den kontinuierlichen Prozess X tndermaßen konvergiertE[maxn||X(∆) n − X tn ||].Dann gilt:E[maxn||X(∆) n − X tn ||] ⇔ E[max ||X n(∆) − X n (2∆) ||]BeweisFür den Beweis wird auf [1], p.374 verwiesen.Aus diesem Lemma können wir folgern, dass wir unser Verfahren auf starke Konvergenztesten können, indem wir unser Verfahren erst mit einer kleinen Schrittweite implementierenund danach noch einmal dasselbe Verfahren mit einer gröberen Schrittweitenutzen und daraus unseren Fehler bestimmen. Deelstra & Delbaen sowie Diop habenihre Verfahren bereits auf starke Konvergenz getestet. Auch <strong>von</strong> dem Drift-implizitenMilstein-Verfahren wissen wir, dass es im starken Sinne konvergent ist [vgl. [1] ]. Dasbedeutet, wir können das Lemma auf unsere Verfahren ohne Probleme anwenden. Fürdie numerischen Tests wählen wir das Standardzeitintervall [0, 1], das heißt wir setzenT = 1 und berechnen damit unseren Fehlerɛ(∆) = E[maxn||X(∆) n − X n (Σ) ||], mit Σ > ∆, für verschiedene Parameter κ, θ und σ. Im letzten Kapitel haben wirdas Verfahren nach Deelstra und Delbaen vorgestellt. Dieses Verfahren ist nicht positivitätserhaltend.Diese Eigenschaft kann man in Abbildung (9) sehen. Man kann beimVergleichen der beiden empirischen Verteilungen erkennen, dass der CIR-Prozess simuliertmittels dem Euler-Verfahren nach Deelstra und Delbaen zu viele Werte nahe derNull oder sogar kleiner Null annimmt [vgl.[5], pp.124-125 ]. Abbildung (10) und Abbildung(11) zeigen die Konvergenz des Fehlers ɛ(∆) in einer Funktion mit Schrittweite h fürverschiedene Parameter. Man kann erkennen, dass das Drift-implizite Milstein-Verfahreneinen kleineren Fehler gibt, als die beiden anderen Verfahren. Das gilt für alle Parameter,die getestet wurden. Man kann erkennen, dass die Konvergenz des Drift-implizitenMilstein-Verfahren ohne die Bedingung der Stabilitätsbedingung langsamer wird.Um eine Idee <strong>von</strong> der Konvergenzgeschwindigkeit zu bekommen, wenden wir nun dielineare Ausgleichsrechnung an. Dazu plotten wir unseren Fehler jetzt in einer doppeltlogarithmischenSkala.Wir vermuten eine starke Konvergenzordnung <strong>von</strong> 1 2für das Euler-Verfahren nach Deelstraund Delbaen, sowie für das Euler-Verfahren nach Diop. Für das Drift-impliziteMilstein-Verfahren erwarten wir eine starke Konvergenzordnung <strong>von</strong> 1, falls die Stabilitätsbedingungerfüllt ist und sonst eine starke Konvergenz <strong>von</strong> 1 2. In Abbildung (12) se-34


Abbildung 9: Empirische Verteilung des CIR-Prozesses mittels der exakten Simulationund der Simulation durch das Euler-Verfahren nach Deelstra und Delbaen(Euler-DD) mit κ = 0.3, θ = 0.04, σ = 0.2, X 0 = 0.04 und T = 0.25Abbildung 10: Fehler ɛ(∆) als eine Funktion mit κ = 1, θ = 1, X 0 = 0.01 und σ = 135


Abbildung 11: Fehler ɛ(∆) als eine Funktion mit κ = 1, θ = 1, X 0 = 0.01 und σ = √ 3Abbildung 12: Regressionsgeraden für die starke Konvergenz mit κ = 1, θ = 1, X 0 = 0.01und σ = 136


Abbildung 13: Regressionsgeraden für die starke Konvergenz mit κ = 1, θ = 1, X 0 = 0.01und σ = √ 3hen wir den doppelt-logarithmischen Plot zu Abbildung (10) für 200 Runden. Man kannerkennen, dass die Regressionsgerade der Euler-Methode nach Deelstra und Delbaen eineSteigung <strong>von</strong> ≈ 1 2hat. Dasselbe gilt für die Regressionsgerade das Euler-Verfahrens nachDiop. Das Drift-implizite Milstein-Verfahren zeigt eine Regressionsgerade mit Steigung≈ 1. Tatsächlich ergab die lineare Ausgleichsrechnung für κ = 1, θ = 1, σ = 1 bei 200Runden:Verfahren γ ResiduumEuler-Verfahren DD 0.4981 0.0973Euler-Verfahren Diop 0.4953 0.1006drift-implizites Milstein 1.0323 0.1138Für die zweite Simulation ist die Stabilitätsbedingung nicht erfüllt. Es gilt:2κθ − σ 2 = 2 ∗ 1 ∗ 1 − √ 3 2 = −1.Wir erwarten, dass die Konvergenz des Drift-impliziten Milstein-Verfahren deutlich langsamerwird. Wir sehen in Abbildung (13) die zugehörigen Regressionsgeraden für 200Runden. Die lineare Ausgleichsrechnung ergab für κ = 1, θ = 1 und σ = √ 3 bei 200Runden:Verfahren γ ResiduumEuler-Verfahren DD 0.4489 0.2342Euler-Verfahren Diop 0.4578 0.1280drift-implizites Milstein 0.6842 0.319537


Abbildung 14: Regressionsgeraden für die schwache Konvergenz mit κ = 1, θ = 1, X 0 =0.01 und σ = 1 für 500 RundenWir lagen also mit unserer Vermutung richtig. Das Drift-implizite Milstein-Verfahrenkonvergiert ohne Stabilitätsbedingung deutlich langsamer.5.2. Schwache KonvergenzAls Nächstes werden die Verfahren auf schwache Konvergenz getestet. Wir wissen aus [1],dass unsere Verfahren, unter der Stabilitätsbedingung, im schwachen Sinne konvergentsind. Wir wenden wieder die lineare Ausgleichsrechnung an. Es ist nur das Fehlerkriteriumin unserer Implementierung zu ändern. Für unseren Fehler haben wir nunmaxn‖E(P (X(∆) n)) − E(P (X tn ))‖ ≤ K P,T ∆ βwobei die Konstante hier <strong>von</strong> T und <strong>von</strong> P abhängt. Sie gilt für alle Polynome P (oder<strong>von</strong> einer anderen geeigneten Klasse <strong>von</strong> Testfunktionen). Als Testfunktion wählen wirdie Identität, das heißt P (X n ) = X n . Ansonsten gehen wir analog zur starken Konvergenzvor. In Abbildung (14) sehen wir die Regressionsgeraden der Verfahren fürdie schwache Konvergenz bei 500 Runden. Man kann sehen, dass alle drei Verfahrennäherungsweise eine schwache Konvergenz <strong>von</strong> 1 haben. Die lineare Ausgleichsrechnungergibt für κ = 1, θ = 1 und σ = 1 bei 500 Runden:Verfahren γ ResiduumEuler-Verfahren DD 0.7810 1.2708Euler-Verfahren Diop 0.8242 1.3137drift-implizites Milstein 1.0424 0.211838


Abbildung 15: Regressionsgeraden für die schwache Konvergenz mit κ = 1, θ = 1, X 0 =0.01 und σ = 1 für 1000 RundenIn Abbildung (15) sehen wir den selben Plot wie in Abbildung (14) jedoch mit derdoppelten Anzahl an Runden. Die lineare Ausgleichsrechnung liefert hier:Verfahren γ ResiduumEuler-Verfahren DD 0.9198 1.7242Euler-Verfahren Diop 0.9595 1.6551drift-implizites Milstein 1.0293 0.2132Das Euler-Verfahren nach Diop hat eine schnellere schwache Konvergenz als das Verfahrennach Deelstra und Delbaen. Die schnellste schwache Konvergenz hat jedoch dasDrift-implizite Milstein-Verfahren.Wir fassen nun unsere Ergebnisse in einer Tabelle zusammen:Verfahren starke Konv. schwache Konv. PositivitätEuler-Verfahren DD ≈ 1 2≈ 1 NeinEuler-Verfahren Diop ≈ 1 2≈ 1 Ja, für alle κ, θ, σ ≥ 0drift-implizites Milstein ≈ 1 ≈ 1 Ja, für 2κθ ≥ σ 2drift-implizites Milstein ≈ 1 2≈ 1 Nein, für 2κθ < σ 2Im nächsten Schritt wollen wir numerisch zeigen, dass unsere Standard-Diskretisierungs-39


verfahren nicht strukturerhaltend für <strong>Wurzel</strong>-Diffusionsgleichungen sind. Dazu verwendenwir das Drift-implizite Milstein-Verfahren als Referenzlösung. Wir haben ja bereitsdie starke Konvergenzordnung dieses Verfahrens gesehen, aus diesem Grund können wirdas Verfahren ohne Probleme als Referenzlösung verwenden.Um zu zeigen, dass unsere Standard-Diskretisierungsverfahren für <strong>Wurzel</strong>-Diffusionsgleichungenungeeignet sind verwenden wir den Matlabcode (10). Wir erhalten dabei diefolgende Fehlermeldung:“negativer Wert für X(n), Verfahren scheitert”.Damit folgt, dass durch die Simulation der Pfade mittels der Standard-Diskretisierungsverfahrennegative Werte für das CIR-Modell geliefert werden und diese die Struktur<strong>von</strong> <strong>Wurzel</strong>-Diffusionsgleichungen nicht erhalten.6. SchlussbetrachtungIn dieser Arbeit wurden strukturerhaltende stochastische <strong>Approximationen</strong> für <strong>Wurzel</strong>-Diffusionsgleichungen vogestellt, ihre Konvergenzordnung numerisch bestimmt und untereinanderverglichen.Um diese Diskretisierungsverfahren zu bekommen, wurden erst die Standard-Diskretisierungsverfahren,wie das Euler-Maruyama-Verfahren und das Milstein-Verfahren, hergeleitet.Es wurde die lineare Ausgleichsrechnung erläutert, um numerisch die Konvergenzordnungbestimmen zu können. Um eine Vorstellung <strong>von</strong> der Konvergenzordnung zu bekommen,wurden die Standard-Diskretisierungsverfahren getestet. Dies ergibt für dasEuler-Maruyama-Verfahren eine starke Konvergenz <strong>von</strong> ≈ 1 2und eine schwache Konvergenz<strong>von</strong> ≈ 1. Das Milstein-Verfahren hat eine starke sowie eine schwache Konvergenzordnung<strong>von</strong> ≈ 1.Das CIR-Modell wurde betrachtet und festgestellt, dass es keine geschlossene Lösungsformelfür dieses Modell gibt. Durch die nichtzentrale Chi-Quadrat-verteilteÜbergangswahrscheinlichkeit kann man dieses Modell jedoch exakt simulieren. Dies istjedoch numerisch sehr aufwendig, da man in jedem Schritt eine normalverteilte undeine gammaverteilte Zufallsvariable simulieren muss. Aus diesem Grund ist es sinnvoll,sich Diskretisierungsverfahren für <strong>Wurzel</strong>-Diffusionsgleichungen anzuschauen. Diese sindzwar nicht exakt, jedoch schneller zu simulieren.Für <strong>Wurzel</strong>-Diffusionsprozesse sind stochastische <strong>Approximationen</strong>, die die Positivitätdes Prozesses garantieren, strukturerhaltend. Grund dafür ist die <strong>Wurzel</strong> im Diffusionsterm.Bezogen auf das CIR-Modell wird gezeigt, dass unsere Standard-Diskretisierungsverfahrennicht positivitätserhaltend sind. Eine Implementierung dieser Verfahren, angewendet aufdas CIR-Modell, scheitert. Um dies zu verhindern, gibt es verschiedene Abänderungender Standard-Diskretisierungsverfahren für <strong>Wurzel</strong>-Diffusionsgleichungen.Das Euler-Verfahren nach Deelstra und Delbaen verhindert das Ziehen einer <strong>Wurzel</strong> aus40


einer negativen Zahl durch das Ersetzen des Diffusionsterms des CIR-Modells durchσ √ X(n) + mit X + = max(x, 0). Dieses Verfahren ist jedoch nicht positivitätserhaltendfür das CIR-Modell, da der Prozess an den Punkten, an denen das Verfahren deterministischwird, kleiner Null werden kann. Das Verfahren liefert eine starke Konvergenzordnung<strong>von</strong> ≈ 1 2, sowie eine schwache Konvergenzordnung <strong>von</strong> ≈ 1. Eine Verbesserungzu diesem Verfahren ist das Euler-Verfahren nach Diop. Diop wählt für sein Verfahrenden Absolutbetrag des Standard Euler-Verfahrens. Das heißt, das Verfahren spiegelt dienegativen Werte des Prozesses an der x-Achse. Dieses Verfahren liefert auch eine starkeKonvergenzordnung <strong>von</strong> ≈ 1 2und eine schwache Konvergenzordnung <strong>von</strong> ≈ 1. Umdie starke Konvergenz zu verbessern, kann man das Drift-implizite Milstein-Verfahrenverwenden. Dieses Verfahren ist unter der Stabilitätsbedingung positivitätserhaltend fürdas CIR-Modell. Dann hat das Verfahren eine starke und schwache Konvergenzordnung<strong>von</strong> ≈ 1. Gilt jedoch die Stabilitätsbedingung nicht, so ist das Drift-implizite Milstein-Verfahren nicht mehr positivitätserhaltend und die starke Konvergenz wird deutlichlangsamer. Die starke Konvergenzordnung verringert sich <strong>von</strong> ≈ 1 auf ≈ 1 2. In diesemFall ist es sinnvoll, auf das Euler-Verfahren nach Diop zurückzugreifen.Im numerischen Teil dieser Arbeit wurde die Konvergenzordnung speziell für das CIR-Modell untersucht. Alle Implementierungen wurden mit Matlab erstellt. Die Programmcodesbefinden sich im Anhang.41


A. ProgrammcodesListing 1: Code zur Simulation eines Wiener-Prozesses1 %Programm zur Simulation e i n e s Pfades des Wiener P r o z e s s e s2 %Dieser Code wurde verwendet , um d i e Figure 1 zu erzeugen3 randn( ’ s t a t e ’ , 5 )4 N=2ˆ16;5 t = ( 0 : 1 :N) ’ /N;6 W = [ 0 ; cumsum(randn(N, 1 ) ) ] / sqrt (N) ;7 plot ( t ,W) ;8 hold on9 plot ( t , 0 ∗ t , ’ : r ’ )10 axis ( [ 0 1 −2 2 ] )11 t i t l e ( ’ Pfad e i n e s Wiener−P r o z e s s e s mit dem M i t t e l w e r t ’ )12 legend ( ’ Wiener−Prozess ’ , ’ M i t t e l w e r t ’ )13 xlabel ( ’ Z e i t ’ )14 ylabel ( ’ Wert des Wiener−P r o z e s s e s ’ )15 hold o f fDie nächsten beiden Codes sind die wichtigsten dieser Arbeit. Sie sind universell einsetzbar.Man kann mit ihnen beliebige stochastische Differentialgleichungen auf ihreKonvergenzordnungen überprüfen. Mann muss lediglich die Funktionen f und g auf diezu betrachtende stochastische Differentialgleichung anpassen.Listing 2: Code Test auf starke Konvergenz1 function t a y l o r s d e ( X 0 , f , g , dg , rounds )2 %Mit H i l f e d i e s e s Programmes kann man3 %s t o c h a s t i s c h e D i f f e r e n t i a l g l e i c h u n g e n4 %auf s t a r k e Konvergenz t e s t e n5 function t a y l o r s d e ( X 0 , f , g , dg , rounds )6 % dX t = f ( t , X t ) dt + g ( t , X t ) dW t7 maxM = 2ˆ16;8 M = f l i p l r ( 2 . ˆ ( 5 : 1 4 ) ) ;%Anzahl der S c h r i t t e9 e r r o r e u l e r = zeros ( numel (M) , 1 ) ;10 e r r o r m i l s t e i n = zeros ( numel (M) , 1 ) ;11 for r = 1 : rounds12 %R e f e r e n z l o e s u n g13 h = 1/maxM; %S c h r i t t w e i t e der R e f e r e n z l o e s u n g14 U = randn(maxM, 2 ) ;15 dW = U( : , 1 ) ∗ sqrt ( h ) ; %Inkremente des Wiener−Porozesses16 W = [ 0 ; cumsum(dW) ] ;%Wiener−Prozess17 X r e f = zeros (maxM + 1 , 1 ) ;18 X r e f ( 1 ) = X 0 ;19 %Berechnung der R e f e r e n z l o e s u n g20 for i =2:maxM+121 X r e f ( i ) = m i l s t e i n ( X r e f ( i −1) , f , g , dg , dW( i −1) , h ) ;22 end23 %Berechnung der Loesung mit g r o e b e r e r S c h r i t t w e i t e24 for m=1:numel (M)25 h=1/M(m) ;26 f a c t o r = maxM/M(m) ;42


27 X e u l e r = zeros (M(m) + 1 , 1 ) ;28 X e u l e r ( 1 ) = X 0 ;29 X m i l s t e i n = zeros (M(m) + 1 , 1 ) ;30 X m i l s t e i n ( 1 ) = X 0 ;31 for i =2:M(m)+132 dW n = W( f a c t o r ∗( i −1) + 1 ) − W( f a c t o r ∗( i −2) + 1 ) ;33 X e u l e r ( i ) = e u l e r ( X euler ( i −1) , f , g , dW n , h ) ;34 X m i l s t e i n ( i ) = m i l s t e i n ( X m i l s t e i n ( i −1) , f , g , dg , dW n , h ) ;35 end36 %Berechnung des F e h l e r s37 e r r o r e u l e r (m) = e r r o r e u l e r (m) + ( X r e f (end)− X euler (end ) ) ˆ 2 ;38 e r r o r m i l s t e i n (m) = e r r o r m i l s t e i n (m) + ( X r e f (end)− X m i l s t e i n (end ) ) ˆ 2 ;39 end40 end41 e r r o r e u l e r = sqrt ( e r r o r e u l e r . / rounds ) ;42 e r r o r m i l s t e i n = sqrt ( e r r o r m i l s t e i n . / rounds ) ;43 %P l o t t e n der A u s g l e i c h s g e r a d e mit K o n t r o l l i n i e n44 loglog ( M, e r r o r e u l e r , ’− b ’ , ’ Linewidth ’ , 4 ) ;45 hold on46 loglog ( M, e r r o r m i l s t e i n , ’− g ’ , ’ Linewidth ’ , 4 ) ;47 loglog ( M, 0 . 8 . ∗M.ˆ −(1/2) , ’ : ok ’ , ’ Linewidth ’ , 2 ) ;48 loglog ( M, 0 . 8 . ∗M.ˆ −(1) , ’ : ok ’ , ’ Linewidth ’ , 2 ) ;49 legend ( ’ Euler ’ , ’ M i l s t e i n ’ , ’ K o n t r o l l l i n i e n 1/2 , 1 ’ )50 xlabel ( ’ Z e i t ’ )51 ylabel ( ’ S c h a e t z e r f r den a b s o l u t e n Fehler ’ )52 grid53 %Methode der k l e i n s t e n Quadrate54 d t l i s t=h ∗ ( 2 . ˆ ( 0 : numel (M) −1));55 A=[ ones ( numel (M) , 1 ) , log ( d t l i s t ) ’ ] ;56 b=log ( e r r o r e u l e r ) ;57 x=A\b ;58 gamma=x ( 2 )59 residuum=norm(A∗x−b )60 c=log ( e r r o r m i l s t e i n ) ;61 y=A\ c ;62 sigma=y ( 2 )63 residuum2=norm(A∗y−c )64 endListing 3: Code Test auf schwache Konvergenz1 function t a y l o r s d e w e a k ( X 0 , f , df , ddf , g , dg , ddg , rounds )2 % dX t = f ( t , X t ) dt + g ( t , X t ) dW t3 %Anzahl der S c h r i t t e der R e f e r e n z l o e s u n g4 maxM = 2ˆ16;5 %Anzahl der S c h r i t t e6 M = f l i p l r ( 2 . ˆ ( 5 : 1 4 ) ) ;7 e r r o r e x a c t = 0 ;8 e r r o r e u l e r = zeros ( numel (M) , 1 ) ;9 e r r o r m i l s t e i n = zeros ( numel (M) , 1 ) ;10 for r = 1 : rounds11 %R e f e r e n z l o e s u n g12 %S c h r i t t w e i t e der R e f e r e n z l o e s u n g13 h = 1/maxM;43


14 %Inkremente des Wiener−Porozesses15 U = randn(maxM, 2 ) ;16 dW = U( : , 1 ) ∗ sqrt ( h ) ;17 %Wiener−Prozess18 W = [ 0 ; cumsum(dW) ] ;19 X r e f = zeros (maxM + 1 , 1 ) ;20 X r e f ( 1 ) = X 0 ;21 %Berechnung der R e f e r e n z l o e s u n g22 for i =2:maxM+123 X r e f ( i ) = m i l s t e i n ( X r e f ( i −1) , f , g , dg , dW( i −1) , h ) ;24 end25 e r r o r e x a c t = e r r o r e x a c t + X r e f (end ) ;26 %Berechnung der Loesung mit g r o e b e r e r S c h r i t t w e i t e27 for m=1:numel (M)28 h=1/M(m) ;29 f a c t o r = maxM/M(m) ;30 X e u l e r = zeros (M(m) + 1 , 1 ) ;31 X e u l e r ( 1 ) = X 0 ;32 X m i l s t e i n = zeros (M(m) + 1 , 1 ) ;33 X m i l s t e i n ( 1 ) = X 0 ;34 for i =2:M(m)+135 dW n = W( f a c t o r ∗( i −1) + 1 ) − W( f a c t o r ∗( i −2) + 1 ) ;36 X e u l e r ( i ) = e u l e r ( X euler ( i −1) , f , g , dW n , h ) ;37 X m i l s t e i n ( i ) = m i l s t e i n ( X m i l s t e i n ( i −1) , f , g , dg , dW n , h ) ;38 end39 e r r o r e u l e r (m) = e r r o r e u l e r (m) + X euler (end ) ;40 e r r o r m i l s t e i n (m) = e r r o r m i l s t e i n (m) + X m i l s t e i n (end ) ;41 end42 end43 e r r o r e x a c t = e r r o r e x a c t / rounds ;44 e r r o r e u l e r = abs ( e r r o r e u l e r . / rounds − e r r o r e x a c t ) ;45 e r r o r m i l s t e i n = abs ( e r r o r m i l s t e i n . / rounds − e r r o r e x a c t ) ;46 %P l o t47 loglog ( M, e r r o r e u l e r , ’− b ’ , ’ Linewidth ’ , 4 ) ;48 hold on49 loglog ( M, e r r o r m i l s t e i n , ’− g ’ , ’ Linewidth ’ , 4 ) ;50 loglog ( M, 0 . 8 . ∗M.ˆ −(1) , ’ : ok ’ , ’ Linewidth ’ , 2 ) ;51 legend ( ’ Euler ’ , ’ M i l s t e i n ’ , ’ K o n t r o l l l i n i e 1 ’ )52 xlabel ( ’ Z e i t ’ )53 ylabel ( ’ S c h a e t z e r f r den a b s o l u t e n Fehler ’ )54 grid55 %Methode der k l e i n s t e n Quadrate56 d t l i s t = 2 . ˆ ( [ 1 : numel (M)] −10);57 A=[ ones ( numel (M) , 1 ) , log ( d t l i s t ) ’ ] ;58 b=log ( e r r o r e u l e r ) ;59 x=A\b ;60 gamma=x ( 2 )61 residuum=norm(A∗x−b )62 c=log ( e r r o r m i l s t e i n ) ;63 y=A\ c ;64 sigma=y ( 2 )65 residuum2=norm(A∗y−c )66 end44


Für diese Bachelorarbeit wurden verschieden Verfahren verwendet. Diese wurden in verschiedeneFunktionen implementiert und sollen nun vorgestellt werden:Listing 4: Code Standard Euler-Verfahren1 function X n1 = e u l e r ( X n , f , g , dW, h )3 X n1 = X n + f ( X n )∗ h + g ( X n )∗dW;5 endListing 5: Code Milstein-Verfahren1 function X n1 = m i l s t e i n ( X n , f , g , dg , dW, h )3 X n1 = X n + f ( X n )∗ h + g ( X n )∗dW + 0 . 5 ∗ g ( X n )∗ dg ( X n ) ∗ (dWˆ2 − h ) ;5 endListing 6: Code Euler-Verfahren nach Deelstra und Delbaen1 function X n1 = e u l e r d d ( X n , f , g , dW, h )3 X n1 = X n + f d d ( X n )∗ h + g dd ( X n )∗dW;5 endListing 7: Code Euler-Verfahren nach Diop1 function X n1 = e u l e r d i o p ( X n , f , g , dW, h )3 X n1 = abs ( X n + f ( X n )∗ h + g ( X n )∗dW) ;5 endListing 8: Code drift-implizites Milstein-Verfahren1 function X n1 = m i l s t e i n i m p l z i t ( X n , g , kappa , theta , sigma , dW, h )3 X n1 = ( X n +kappa∗ theta ∗h + g ( X n )∗dW + (1/4)∗ sigma ˆ2∗(dWˆ2−h))/(1+ kappa∗h ) ;4 endListing 9: Code exakte Simulation eines CIR-Pfades1 function [X] = c i r p a t h n o r m a l c h i ( t , kappa , theta , sigma , X0)2 %Programm zur exakten Simulation e i n e s Pfades3 %des CIR−Modells m i t t e l s e i n e r normalen4 %Chi−Quadrat−V e r t e i l u n g6 dt = d i f f ( t ( : ) ) ;7 n = length ( t ) ;8 X = [ X0 ; nan∗ dt ] ;9 v = sigma ˆ 2 ;45


10 d = 4∗ kappa∗ theta /v ;11 e = exp(−kappa∗ dt ) ;12 c = v.∗(1 − e )/(4∗ kappa ) ;13 for i = 1 : ( n−1)14 l = X( i )∗ e ( i )/ c ( i ) ;15 Z= randn ;16 Y=chi2rnd (d−1);17 X( i +1) = c ( i ) ∗ [ ( Z+sqrt ( l )).ˆ2+Y ] ;18 end20 function [X] = c i r p a t h p o i s s ( t , kappa , theta , sigma , X0)21 %Programm zur exakten Simulation e i n e s Pfades22 %des CIR−Modells m i t t e l s e i n e r Poisson−V e r t e i l u n g23 dt = d i f f ( t ( : ) ) ;24 n = length ( t ) ;25 X = [ X0 ; nan∗ dt ] ;26 v = sigma ˆ 2 ;27 d = 4∗ kappa∗ theta /v ;28 e = exp(−kappa∗ dt ) ;29 c = v.∗(1 − e )/(4∗ kappa ) ;30 for i = 1 : ( n−1)31 l = X( i )∗ e ( i )/ c ( i ) ;32 N= p o i s s r n d ( l / 2 ) ;33 Y=chi2rnd ( d+2∗N) ;34 X( i +1) = c ( i )∗Y;35 end36 endListing 10: Code Test der Standard-Diskretisierungsverfahren für das CIR-Programm1 \ l a b e l { code }2 function t a y l o r s d e e u l e r m i l s t e i n w u r z ( X 0 , f , g , dg , rounds )3 %Anzahl der S c h r i t t e der R e f e r e n z l o e s u n g4 maxM = 2ˆ16;5 %Anzahl der S c h r i t t e6 M = f l i p l r ( 2 . ˆ ( 5 : 1 4 ) ) ;7 e r r o r e u l e r = zeros ( numel (M) , 1 ) ;8 e r r o r m i l s t e i n = zeros ( numel (M) , 1 ) ;9 %e r r o r t a y l o r 1 5 = z e r o s ( numel (M) , 1 ) ;10 for r = 1 : rounds11 %R e f e r e n z l o e s u n g12 %S c h r i t t w e i t e der R e f e r e n z l o e s u n g13 h = 1/maxM;14 %Inkremente des Wiener−P r o z e s s e s15 U = randn(maxM, 1 ) ;16 dW = U( : , 1 ) ∗ sqrt ( h ) ;17 %Wiener−Prozess18 W = [ 0 ; cumsum(dW) ] ;19 X r e f = zeros (maxM + 1 , 1 ) ;20 X r e f ( 1 ) = X 0 ;21 %Berechnung der R e f e r e n z l o e s u n g23 for i =2:maxM+124 X r e f ( i ) = m i l s t e i n i m p l z i t ( X r e f ( i −1) , f , g , dW( i −1) , h ) ;46


25 end27 %Berechnung der Loesung mit g r o e b e r e r S c h r i t t w e i t e28 for m=1:numel (M)29 h=1/M(m) ;30 f a c t o r = maxM/M(m) ;31 X e u l e r = zeros (M(m) + 1 , 1 ) ;32 X e u l e r ( 1 ) = X 0 ;33 X m i l s t e i n = zeros (M(m) + 1 , 1 ) ;34 X m i l s t e i n ( 1 ) = X 0 ;36 for i =2:M(m)+137 i f any( X e u l e r < 0)38 error ( ’ n e g a t i v e r Wert f u e r X n , Verfahren s c h e i t e r t ’ )39 end40 i f any( X m i l s t e i n < 0)41 error ( ’ n e g a t i v e r Wert f u e r X n , Verfahren s c h e i t e r t ’ )42 end43 dW n = W( f a c t o r ∗( i −1) + 1 ) − W( f a c t o r ∗( i −2) + 1 ) ;44 X e u l e r ( i ) = e u l e r ( X euler ( i −1) , f , g , dW n , h ) ;45 X m i l s t e i n ( i ) = m i l s t e i n ( X m i l s t e i n ( i −1) , f , g , dg , dW n , h ) ;46 end48 e r r o r e u l e r (m) = e r r o r e u l e r (m) + ( X r e f (end)− X euler (end ) ) ˆ 2 ;49 e r r o r m i l s t e i n (m) = e r r o r m i l s t e i n (m) + ( X r e f (end)− X m i l s t e i n (end ) ) ˆ 2 ;50 end51 end53 e r r o r e u l e r = sqrt ( e r r o r e u l e r . / rounds ) ;54 e r r o r m i l s t e i n = sqrt ( e r r o r m i l s t e i n . / rounds ) ;55 %P l o t56 loglog ( M, e r r o r e u l e r , ’− b ’ , ’ Linewidth ’ , 2 ) ;57 hold on58 loglog ( M, e r r o r m i l s t e i n , ’− g ’ , ’ Linewidth ’ , 2 ) ;59 %l o g l o g ( M, e r r o r t a y l o r 1 5 , ’− r ’ , ’ Linewidth ’ , 4 ) ;60 loglog ( M, 0 . 8 . ∗M.ˆ −(1/2) , ’ : ok ’ , ’ Linewidth ’ , 1 ) ;61 loglog ( M, 0 . 8 . ∗M.ˆ −(1) , ’ : ok ’ , ’ Linewidth ’ , 1 ) ;62 %l o g l o g ( M, 0 . 8 . ∗M.ˆ −(3/2) , ’ : ok ’ , ’ Linewidth ’ , 2 ) ;63 legend ( ’ Euler ’ , ’ M i l s t e i n ’ , ’ K o n t r o l l l i n i e n 1/2 , 1 ’ )64 xlabel ( ’ Z e i t ’ )65 ylabel ( ’ Fehler ’ )66 grid68 end47


Literatur[1] ALFONSI, AURLIEN: On the discretization schemes for the CIR (and Besselsquared) processes. Monte Carlo Methods and Appl., Vol. 11, No.4, pp.355-384(2005)[2] ANDERSEN, LEIF: Efficient Simulation of the Heston Stochastic Volatility Model.Working paper series, 2006[3] GERING, VERA: Parameterschätzung stochastischer Prozesse aus der Finanzweltmittels (Dünngitter-) Histogramm-Matching-Verfahren. Diplomarbeit, Köln,2006[4] GERSTNER, THOMAS: Skript zur Vorlesung:Finanzmathematik (ComputationalFinance). Vorlesungsskript, Frankfurt, 2010[5] GLASSERMAN, PAUL: Monte Carlo Methods in Financial Engineering. Springer,New York, 2004[6] GÜNTHER, MICHAEL: Finanzderivate mit Matlab: Mathematische Modellierungund numerische Simulation. Online-Ausgabe Wiesbaden: Vieweg+ TeubnerVerlag/Springer Fachmedien Wiesbaden GmbH, Wiesbaden, 2010[7] KAHL, C.; GÜNTHER, M.; ROSSBERG, T.: Structure preserving stochastic integrationschemes in interest rate derivate modeling. Applied Numerical Mathematics58 (2008) 284-295[8] KERSTING, G.; WALKOLBINGER, A.: Elementare Stochastik. Birkhäuser,2007[9] KLOEDEN, PETER E.; PLATEN, ECKHARD Numerical Solution of StochasticDifferential Equations. Springer, 1995[10] KLOEDEN, PETER E.: Skript zur Vorlesung: Numerik stochastischer Differentialgleichungen.Vorlesungsskript, Frankfurt, 2010[11] LÜTKE SCHELHOWE, BORIS: Der Ritt auf der Zinskurve. Einsatz eines Zinsstrukturmodellsin der barwertigen Zinsbuchsteuerung. Diplomarbeit, Münster,2009[12] NEUENKIRCH, A.: Approximation of SDEs under Non-Standard Assumption.Frankfurt48

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!