Bewertung von Barrier Optionen mit der Finite-Differenzen

Werbung
Bewertung von Barrier Optionen
mit der Finite-Differenzen-Methode
Diplomarbeit
vorgelegt von
Ming Liao
Universität Bielefeld
Fakultät für Wirtschaftswissenschaften
9. Juni 2011
Themensteller:
2. Prüfer:
Prof. Dr. Thomas Braun
Prof. Dr. Reinhold Decker
I
Inhaltsverzeichnis
Einleitung
1
1
Grundlagen der Optionsbewertung
2
1.1
Optionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Brown’sche Bewegung und Itôs Formel . . . . . . . . . . . . . . . . . .
3
2
3
4
Black-Scholes-Modell und Vanilla Option Bewertung
11
2.1
Annahmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.2
Black-Scholes Partial Differentialgleichungsmethode . . . . . . . . . . .
11
2.3
Die Black-Scholes Formel für europäische Optionen . . . . . . . . . . .
14
Barrier Option
19
3.1
Eigenschaften der Barrier Option . . . . . . . . . . . . . . . . . . . . . .
19
3.2
Black-Scholes-Modell zur Optionsbewertung . . . . . . . . . . . . . . .
22
3.3
Black-Scholes-Modell zur europäische Barrier Optionsbewertung . . . .
24
Finite-Differenzen-Methode
31
4.1
Einleitung in die Finite-Differenzen-Methode . . . . . . . . . . . . . . .
31
4.2
Finite-Differenzen-Approximation . . . . . . . . . . . . . . . . . . . . .
33
4.3
Die implizite Finite-Differenzen-Methode . . . . . . . . . . . . . . . . .
35
4.3.1
Standard Option Bewertung . . . . . . . . . . . . . . . . . . . .
35
4.3.2
Implizite Finite-Differenzen-Methode für Barrier Optionsbewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
Die explizite Finite-Differenzen-Methode . . . . . . . . . . . . . . . . .
47
4.4.1
Standard Option Bewertung . . . . . . . . . . . . . . . . . . . .
47
4.4.2
Explizite Finite-Differenzen-Methode für Barrier Option Bewertung 54
4.4.3
Modifizierter expliziter finiter Differenzen Ansatz zur Barrier Optionsbewertung . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
Crank-Nicolson-Methode . . . . . . . . . . . . . . . . . . . . . . . . . .
61
4.5.1
Standard Option Bewertung . . . . . . . . . . . . . . . . . . . .
61
4.5.2
Bewertung einer Barrier Option mit der Crank-Nicolson Methode
65
4.4
4.5
5
Sensitivitäten von Optionspreisen
68
5.1
Sensitivitätskennzahlen . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
5.2
Sensitivitätsanalyse der Differenzen-Methode . . . . . . . . . . . . . . .
71
II
6
Fazit
73
Anhang
75
A Beweise und Theoreme
75
Beweis der Black-Scholes Bewertungs-Formel (2.15) . . . . . . . . . . . . . .
75
Beweis für die Transformation (3.7), (3.8) und (3.9) . . . . . . . . . . . . . . .
76
Beweis für die Transformation (3.11), (3.12) und (3.13) . . . . . . . . . . . . .
78
Beweis die Delta und Gamma . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
Berechnung des Deltas einer Barrier Option . . . . . . . . . . . . . . . . . . .
80
B Code
81
Allgemeine Symbol Bedeutung . . . . . . . . . . . . . . . . . . . . . . . . . .
81
B.1. Simulation des Wiener-Prozess. . . . . . . . . . . . . . . . . . . . . . . .
81
B.2 Simulation für Pfade eines Wiener Prozesses. . . . . . . . . . . . . . . . .
81
B.3. Simulation of Geometric Brownian Motion. . . . . . . . . . . . . . . . . .
82
B.4. Monte-Carlo-Simulation für Pfade der geometrischen Brownschen Bewegung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
B.5. Simulation des Underlying asset. . . . . . . . . . . . . . . . . . . . . . .
83
B.6. European Call/Put Optionsbewertung mit Monte-Carlo-Simulation. . . . .
84
B.7. Option Bewertung (Call/Put) mit Black-Scholes Formula. . . . . . . . . .
85
B.8. Barrier Option Bewertung mit Monte Carlo Simulation. . . . . . . . . . .
86
B.9. Barrier Option Bewertung mit BS-Modell. . . . . . . . . . . . . . . . . .
87
B.10. amerikanischen und europäischen VerkaufsOption Bewertung mit implizite FDM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
B.11. amerikanischen und europäischen VerkaufsOption Bewertung mit explizite FDM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
B.12. europäischen Verkaufsoption Bewertung mit Crank-Nicolson Methode. .
92
B.13. europäischen Down-and-out VerkaufsOption Bewertung mit implizite Differenze Methode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
B.14. europäischen Down-and-out VerkaufsOption Bewertung mit explizite Differenzen Methode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
94
B.15. europäischen Down-and-out VerkaufsOption Bewertung mit modifizierte
explizite Differenzen Methode. . . . . . . . . . . . . . . . . . . . . . . .
95
B.16. europäischen Down-and-out Put Barrier Option Bewertung mit CrankNicolson Methode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
96
B.17. Down-and-out Barrier Optionsbewertung mit Monte Carlo Simulation. . .
97
Inhaltsverzeichnis
III
B.18. Amerikanische Down-and-out Put Optionsbewertung mit implizite FDM.
98
B.19. Beispiel der Greek. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
99
B.20. Abbildung der Greek. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
B.21. Delta der Down-and-in Call Barrier Option. . . . . . . . . . . . . . . . . 102
B.22. Sensitivitätskennzahl einer Europäische Call Option. . . . . . . . . . . . 103
B.23. Die Delta einer Europäische oder Amerikanische Put Option. . . . . . . . 104
Literaturverzeichnis
105
Abbildungsverzeichnis
IV
Abbildungsverzeichnis
1.1
Call–und–Put Optionen. Quelle: [10, S.4] . . . . . . . . . . . . . . . . .
3
1.2
Simulation für Pfade eines Wiener Prozesses. X-Achse: Zeit T; Y-Achse:
√
t − sN(0, 1). Quelle: eigene Darstellung. . . . . . . . . . . . . . . . . .
5
Monte-Carlo-Simulation für Pfade der geometrischen Brownschen Bewegung. Quelle: eigene Darstellung. . . . . . . . . . . . . . . . . . . . . .
10
4.1
Gitter der Finite-Differenzen-Methode . . . . . . . . . . . . . . . . . . .
32
4.2
Vorwärts-, Rückwärts- und Zentral-Differenzen-Approximation, Quelle:
[21, S.137] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4.3
Implizite Finite-Differenzen-Methode. Quelle: [6, S.511] . . . . . . . . .
37
4.4
Europäische Verkaufsoptionsbewertung durch implizite Finite-DifferenzenMethode für M = 20 und N = 10. Quelle: eigene Darstellung. . . . . . . 43
4.5
Europäische Verkaufsoptionsbewertung mittels impliziter Finite-DifferenzenMethode für M = 200 und N = 100. Quelle: eigene Darstellung. . . . . . 43
4.6
Gitterstruktur einer Down Barrier Option . . . . . . . . . . . . . . . . .
44
4.7
Down-and-out Put Barrier Option mittels der Implizite-Differenzen- Methode. Quelle: eigene Darstellung. . . . . . . . . . . . . . . . . . . . . .
46
Amerikanische Down-and-out Put Barrier Option mittels der ImpliziteDifferenzen- Methode. Quelle: eigene Darstellung. . . . . . . . . . . . .
47
Explizite Finite-Differenzen-Methode. Quelle: Vgl. [6, S.511] . . . . . .
48
1.3
4.8
4.9
4.10 Explizite Finite-Differenzen-Methode als Trinomialbaum. Quelle: [6, S.514] 49
4.11 Europäische Verkaufsoptionsbewertung mit explizite Finite-DifferenzenMethode. Quelle: eigene Berechnung. . . . . . . . . . . . . . . . . . . .
52
4.12 Instabilitätsproblem der expliziten Methode. Quelle: eigene Berechnung. .
53
4.13 Down-and-out Put Barrier Option mit modifizierter expliziter Differenzen
Methode. Quelle: eigene Berechnung. . . . . . . . . . . . . . . . . . . .
60
4.14 Down-and-out Verkaufsoption mit Crank-Nicolson-Methode. Quelle: eigene Darstellung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
5.1
Sensitivitätskennzahlen für t = 0 (punktierte Linie), t = 5/4(durchgezogene
Linie) und t = 10/4 (dicke Linie), jeweils mit K = 50, T = 5/12, r = 0.1
und σ = 0.4. Quelle: eigene Darstellung . . . . . . . . . . . . . . . . . . 69
5.2
Das Delta mit folgende Annahme: K = 50, T = 5/12, r = 0.1 und σ = 0.4.
Quelle: eigene Darstellung . . . . . . . . . . . . . . . . . . . . . . . . .
72
Tabellenverzeichnis
V
Tabellenverzeichnis
1
2
3
4
5
6
Simulation für den Aktienkurs bei µ = 0.14, σ = 0.2 und ∆t = 0.01. Quelle: eigene Berechnung. . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
Bewertung der amerikanischen Option mit der impliziten FDM. Quelle:
eigene Berechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
Bewertung der europäischen Option mit der impliziten FDM. Quelle: eigene Berechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
Bewertung der amerikanische Option mit der expliziten FDM. Quelle:
eigene Berechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
Bewertung der europäische Option mit der explizite FDM. Quelle: eigene
Berechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
Bewertung der europäischen Option mit der Crank-Nicolson-Methode.
Quelle: eigene Berechnung . . . . . . . . . . . . . . . . . . . . . . . . .
64
Abkürzungsverzeichnis
Abkürzungsverzeichnis
bzw.
d.h.
usw.
Vgl.
z.B.
min
max
inf
PDE
FDM
beziehungsweise
das heißt
und so weiter
vergleiche
zum Beispiel
minimiere
maximiere
infimum
partial difference equality
Finite-Differenzen-Methode
VI
Symbolverzeichnis
Symbolverzeichnis
N:
’:
Wt
E(·)
H
K
N(0, 1)
N(x)
C
P
c
p
r
µ
σ
T
T −t
S
S0
ST
Π
cdo
cdi
pdo
pdi
cuo
cui
puo
pui
natürliche Zahlen
reelle Zahlen
Wiener-Prozess
Erwartungswert einer Variablen
Barrier
Ausübungspreis (Strike price)
standard normal distribution
Kumulation Verteilungsfunktion
Preis einer amerikanischen Kaufoption
Preis einer amerikanischen Verkaufsoption
Preis einer europäischen Kaufoption
Preis einer europäischen Verksaufoption
risikoloser Zinssatz
erwartete Rendite einer Aktie
Volatilität des Aktienkurses
Ausübungszeitpunkt (maturity date)
Restlaufzeit der Option
aktueller Aktienkurs zum Zeitpunkt t in [0,T]
aktueller Aktienkurs in Zeitpunkt Null
Kurs des zugrunde liegenden Wertpapiers zum Zeitpunkt T.
/Kurs des Basiswerts. /Aktienkurs bei Fälligkeit
underlying.
Portfolio zur Optionsbewertung
Down-and-out call
Down-and-in call
Down-and-out put
Down-and-in put
Up-and-out call
Up-and-in call
Up-and-out put
Up-and-in put
VII
Einleitung
1
Einleitung
Seit den 90er Jahren ist eine rapide Entwicklung bei den Finanzinnovationen festzustellen.
Es fand sowohl eine Liberalisierung der Finanzmärkte als auch deren globale Integrationen statt. Dadurch ist der Derivatemarkt immer weiter angewachsen. Die Statistik des
Deutschen Derivate Verbandes zeigt im Jahresbericht 2009, dass Ende 2009 in Deutschland rund 350.000 Anlageprodukte und Hebelprodukte an den Börsen Stuttgart (EUWAX)
und Frankfurt (Scoach) notiert waren. Bei den Hebelprodukten dominierten 2009 Optionen deren Underlyings Aktien gewesen sind. Sie stellten einen Anteil von 78 Prozent.
Danach folgten Hebelprodukte die als Basiswert Währungen und Rohstoffe besaßen. Ihr
Anteil erreichte dabei 21.3 Prozent am Gesamtvolumen der Hebelprodukte. 1 Dies zeigt,
dass Optionen eine große Rolle auf dem Derivatemarkt spielen. Vor diesem Hintergrund
ist die Bewertung von Optionen von so großer Bedeutung.
Es existieren zwei unterschiedliche Arten wie die Bewertung von Optionen vorgenommen
werden kann. Es wird unterschieden zwischen analytischer und numerischer Bewertung.
Hierbei stellt die Black-Scholes Gleichung das einzige analytische Bewertungsverfahren
zur Optionsbewertung dar. Zu den numerischen Verfahren gehören das Binominalmodell,
die Finite-Differenzen-Methode und die Monte Carlo Simulation.
Diese Arbeit beschränkt sich dabei auf die Betrachtung des analytischen Verfahrens des
Black-Scholes-Modells und bei den numerischen Verfahren auf die Finite-DifferenzenMethode. Die Tabellen, die Graphiken und die Beispiele in dieser Arbeit wurden mit
Hilfe des Programms MATLAB selbst erstellt. Dabei wurden die Funktionen und die
für die Analyse notwendigen Simulationen ebenfalls selbständig mit MATLAB durchgeführt. Die hierfür verwandten Programm-Codes befinden sich im Anhang der Arbeit.
Diese Arbeit befasst sich mit dem Unterschied zwischen dem Black-Scholes-Modell und
der Finite-Differenzen-Methode. Diese wird beispielhaft mit Hilfe der Barrier Option dargestellt.
Zunächst werden in einem einführenden Kapitel die Grundlagen der Optionsbewertung
vorgestellt. In Kapitel zwei wird eine Erläuterung des Black-Scholes-Modell und die Bewertung von Vanilla Optionen durchgeführt. Im Anschluss wird in Kapitel drei näher
auf die Barrier Optionen eingegangen, da in dieser Arbeit der Fokus auf die Bewertung
von Barrier Option gelegt wurde. Das vierte Kapitel behandelt die Finite-DifferenzenMethode zur Barrier Optionsbewertung. Hier wird auf die drei Verfahren der FiniteDifferenzen-Methode: implizite-, explizite- und Crank-Nicolson-Methode eingegangen.
Im fünfte Kapitel wird eine Sensitivitätsanalyse des Black-Scholes Modell und der FiniteDifferenzen-Methode vorgenommen. Im Fazit werden dann abschließend die Ergebnisse
des Vergleiches zwischen Black-Scholes Modell und der Finite-Differenzen-Methode zusammengefasst.
Danksagung Zunächst gilt mein Dank Prof. Dr. Thomas Braun, der mich bei der Anfertigung dieser Diplomarbeit unterstützt und mit Hinweisen angeholfen hat. Ein ganz
besonderer Dank geht an Herr André Schöne für die gute Betreuung.
1
Vgl. [18, S.8]
1
Grundlagen der Optionsbewertung
1
2
Grundlagen der Optionsbewertung
1.1
Optionen
Es existieren zwei unterschiedliche Typen von Optionen, die Vanilla- und Exotic Optionen. Die Vanilla Option wird als die Standard Option bezeichnet. Die exotische Option
hingegen ist eine spezielle Form der Option, der nicht standardisierten Produkte. Barrier
Optionen gehören in diesem Schema zu den exotischen Optionen.
Im folgenden Absatz wird näher auf Vanilla Optionen eingegangen.
Um im Anschluss näher auf die Barrier Optionen eingehen zu können, ist es zunächst
notwendig, einige Grundbegriffe der Standard- oder Vanilla-Optionen zu erläutern.
Eine Standard-Option ist ein Vertrag, welcher dem Inhaber einer Option das Recht zum
Kauf oder Verkauf des Basiswertes bei einem vorgegebenen Preis (genannt Ausübung
oder Basispreis K) innerhalb einer vorgegebenen Zeit T (sogenannter Zeitraum bis zur
Fälligkeit oder Zeit bis zum Verfall der Option) verleiht. 2 Wenn der Inhaber sein Recht
zum Kauf oder Verkauf des Basiswertes nur bei Fälligkeit ausüben kann, wird die Option als eine europäische Option bezeichnet. Wenn der Inhaber sein Recht zum Kauf oder
Verkauf des Basiswertes jedoch jederzeit wahrnehmen kann, wird die Option als amerikanische Option bezeichnet.3
Es gibt darüber hinaus noch weitere Möglichkeiten zur Klassifizierung von StandardOptionen. Beispielsweise gibt es eine Klassifizierung in Call- und Put-Option. Der Call
ist eine Kaufoption und Put ist eine Verkaufsoption.
Da die Option ein Recht verbrieft, hat sie einen gewissen Wert, den Optionspreis. Dieser ändert sich mit dem Preis des zugrunde liegenden Basiswertes S. Als Basiswert kann
es sich zum Beispiel um Aktien, Währungen, Rohstoffen und Indizes handeln. Da der
Basiswertes S als riskante Anlageklasse gilt, handelt er sich bei dem Preis um eine Zufallsvariable. Daher ist der Optionspreis, welcher aus diesem abgeleitet ist, ebenso eine
Zufallsvariable. Sobald jedoch der Ausübungspreis K fixiert wurde, ist der Optionspreis
zu bestimmen.
Der Optionspreis lässt sich durch die Partial-Differential-Methode errechnen. Bei dieser
Methode wird ein Portfolio Π (Vgl. Kapitel 2.2) zusammengestellt.
2
3
Vgl.[8, S.8]
Vgl.[6, S.29]
1
Grundlagen der Optionsbewertung
3
VT
VT
CT = (K − ST )+
PT = (K − ST )+
ST
ST
Abbildung 1.1: Call–und–Put Optionen. Quelle: [10, S.4]
Der Ausübungspreis wird mit K bezeichnet. T bezeichnet den Verfallstag oder den Ausübungszeitpunkt. ST wird als der Kurs des Basiswertes kenntlich gemacht. Der Wert
des europäischen Call zum Verfallstag wird durch die folgenden Auszahlungsfunktionen
(payoffs) beschrieben:
max(ST − K, 0) =: (ST − K)+ ,
und
max(K − ST , 0) =: (K − ST )+ .
In die Abbildung wird die Auszahlungsfunktion gezeigt. Hier wird VT als Auszahlung
in Zeitpunkt T . Auf Grund der Annahmen der Arbitragfreiheit ergibt sich die Call-PutParität:
ct + K e−r(T −t) = pt + St , 0 ≤ t ≤ T.
(1.1)
Die Call-Put-Parität ist eine Beziehung zwischen den Preisen der europäischen Call-und
Put-Optionen, wobei beide Optionen den gleichen Basiswert und das gleiche Verfallsdatum besitzen. 4
1.2
Brown’sche Bewegung und Itôs Formel
Die Kursbewegung eines underlying Vermögenswerts ist ein stochastischer Prozess. Im
Jahr 1900 analysierte der französische Mathematiker Louis Bachelier Kursbewegungen
an der Pariser Börse mit der Brown’schen Bewegung.5 In diesem Kapitel wird eine Einführung in das theoretische Modell des Wiener-Prozesses, die geometrische Brownsche
Bewegung sowie in das Black-Scholes-Modell gegeben. Es wird auch die stochastische
Differentialgleichung und das Itô-Lemma vorgestellt.
Ein stochastischer Prozess besteht aus Zufallsvariablen, es kann sich hierbei um abzählbar viele Elemente (zeitdiskreter Prozess) oder unabzählbar viele Elemente (zeitstetiger
4
5
Vgl.[10, S.14]. In Beispiel wird mit t = 0 angenommen.
Vgl.[10, S.55].
1
Grundlagen der Optionsbewertung
4
Prozess) handeln. In dieser Arbeit sollen jedoch hauptsächlich der zeitstetige Prozess: der
Wiener-Prozess-und der Itô-Prozess im Zentrum der Betrachtung stehen.
Die Brown’sche Bewegung ist nach dem schottischen Botaniker Robert Brown benannt,
der sie 1827 bei seinen Untersuchungen von Pollenkörnern unter dem Mikroskop beobachtete. Dabei stellte dieser fest, wie Pflanzenpollen sich in einem Wassertropfen unregelmäßig hin- und herbewegten. Eine mathematische Konstruktion auf Basis der Maßtheorie
gelang Norbert Wiener dabei erst im Jahr 1923.
Der Wiener-Prozess (Brownsche-Bewegung) ist ein zeitstetiger stochastischer Prozess,
der normalverteilte, unabhängige Zuwächse hat.
Definition 1.1. Ein stochastischer Prozess (Wt )t∈’ heißt (Standard-)Wiener-Prozess, wenn
die vier folgenden Bedingungen gelten: 6
1. W0 = 0.
2. Unabhängige Zuwächse: Für gegebenes ti mit 0 < t1 < t2 < · · · < tn , sind alle Inkremente Wtn −Wtn−1 , Wtn−1 −Wtn−2 , . . ., Wt2 −Wt1 unabhängig.
3. Stationär und normalverteilte Zuwächse:
Wt −Ws ∼ N (0,t − s) ,
für alle
0 ≤ s < t.
4. Stetigkeit: Die einzelnen Pfade sind sicher stetig.
√
Weil N(t − s) die gleiche Distribution wie t − sN(0, 1) hat, bekommt man N(t − s)
normalerverteilte Pseudozufallszahlen aus standard normalerverteilte Pseudozufallszahlen. In MATLAB, mit dem Befehl “randn(M,N)” kann ein Matrix erzeugt werden, die
aus M × N unabhängigen Standard normalerverteilte Pseudozufallszahlen (Pseudozufall)
besteht. Daher ist es einfach die Bewegungen des Wiener Prozesses mit stationär und normalverteilten Zuwächsen zu simulieren. Um diese Bewegung des Aktienkurses zu veranschauerlichen, wird diese im folgenden Beispiel dargestellt. (Code B.1)
Beispiel 1.2. In diesem Beispiel gilt, T = 2, dT = 0.01 und die Anzahl des Pfader m = 4.
Zur Erzeugung der Darstellung wurde die Berechnung jeweils viermal hintereinander mit
identischen Ausgangsparametern durchgeführt. Durch das Programm “BB_Path(T, dT,
m)” (Code siehe Anhang Code B.2) wurde die Abbildung (1.2) generiert. Die Abbildung
zeigt eine Approximation der Pfade des Aktienkurses, entsprechend dem theoretischen
Modell des Wiener Prozesses. Wie in der Graphik zu sehen ist, kann der Verlauf der
Pfade dabei erheblich voneinander abweichen.
6
[14, S.244]
1
Grundlagen der Optionsbewertung
5
Abbildung 1.2: √
Simulation für Pfade eines Wiener Prozesses. X-Achse: Zeit T; Y-Achse:
t − sN(0, 1). Quelle: eigene Darstellung.
Itô Formel (auch Itôs Lemma), benannt nach dem japanischen Mathematiker Itô Kiyoshi,
ist ein zentrales Werkzeug für die stochastische Analysis. Es ist die Verallgemeinerung
der Kettenregel auf das stochastische Kalkül.
Sei xt , x ≥ 0, ein Itô Prozess,
dxt = a(xt )dt + b(xt )dWt ,
(1.2)
wobei Wt , t ≥ 0 ein Wiener Prozess ist. Funktion a, b sind zwei Funktionen in : [0, ∞) × ’
zu ’.
Lemma 1.3 (Itôs Lemma). Sei g : [0, ∞) × ’ → ’ eine solche Funktion, die in der ersten
Komponente einfach und in der zweiten Komponente eine zweifach stetig differenzierbare
Funktion ist. 7
Die Taylor-Reihe für gt = g(xt ) ergibt den Stufensprung in yt :
dgt =
∂g
∂g
1 ∂2 g
dt + dxt +
(dxt )2 ,
∂t
∂x
2 ∂x2
wobei (dxt )2 = dxt · dxt ist und nach den folgende Regeln:8
dt · dt = 0,
7
8
Vgl.[12, S.44]
Vgl. [14, S.251]
dt · dxt = 0,
dWt · dWt = dt.
1
Grundlagen der Optionsbewertung
6
Ergibt sich
dxt · dxt = [µdt + σdWt ] · [µdt + σdWt ]
= µ2 dt + 2µσdtdWt + σ2 dWt
= σ2 dt,
gt ist auch ein Itô-Prozess und es gilt
dgt =
∂g
∂g 1 2
∂2 g
∂g
+ a(xt ) + b (xt ) 2 dt + b(xt ) dWt .
∂t
∂x 2
∂x
∂x
Im Folgenden Beispiel wird ein spezielles Itô Lemma betrachtet. Es gilt dabei, dass
f : ’ → ’ eine 2−mal stetig differenzierbare Funktion ist.
1
dg(xt ) = g0 (xt )dxt + g00 (xt )b2 (xt )dt
2
1 2
0
00
= a(xt )g (xt ) + b (xt )g (xt ) dt + b(xt )g0 (xt )dt.
2
(1.3)
Beispiel 1.4. Unter der Annahme, dass im deterministischen Fall b = 0 ergibt sich die
nachfolgende Formel:
d
g(xt ) = g0 (xt ) · a(xt )dt.
dt
Es gilt die folgende geometrische Brownsche Bewegung:
dS = µSdt + σSdWt .
Sei g(xt ) = ln xt , dann g0 (xt ) =
1
xt
(1.4)
und g00 (xt ) = − x12 .
t
Aus (1.3) ergibt sich:
1
1 1
1 2
2
d ln S = dS − · 2 · (σS) dt = µ − σ dt + σdWt ,
S
2 S
2
dann
σ2
t .
S = S0 exp σWt + µ −
2
(1.5)
Diese Lösung der Stochastischen Differentialgleichung (1.4), ist eine geometrische Brownsche Bewegung. Die Gleichung (1.5) wird als Annäherung für den Preisprozess eine Aktien verwendet. Dabei nimmt man vereinfachend an, dass die prozentuale Rendite über
disjunkte Zeitintervalle unabhängig und normalverteilt ist. 9
9
Vgl. [14, S.251]
1
Grundlagen der Optionsbewertung
7
Daraus er gibt sich die folgende Formel,
dS
= µdt + σdWt ,
S
S0 = a.
(1.6)
Der Parameter µ heißt dabei Drift und beschreibt die deterministische Tendenz des Prozesses, d.h. die Drift gibt an wie sich der Aktienkurs entwickelt. Der Parameter σ beschreibt
die Volatilität und damit die stärke der Schwankung.
Ist die Volatilität σ = 0, so verschwindet der Diffusionsterm in der obigen Differentialgleichung, es ergibt sich dann die gewöhnliche Differentialgleichung
dS(t) = µ S(t),
S0 = a.
welche die Exponentialfunktion St = a eµt als Lösung besitzt. Für die allgemeine Gleichung (1.6), bei Itôs Lemma, ist maßgebend (Vgl. (1.5))
St = a exp
σ2
µ−
t + σWt .
2
(1.7)
Mit Hilfe dieser Formel erhält man den Wert von ST .
Das Programm “ UnderlyingAssetBSModel” (Code sehen Anhang Code B.5) verwendet
diese Formel, um die Preise für Vermögenswerte in Terminal Daten zu erhalten, d.h. dass
zu jedem Zeitpunkt von beginn bis zum Fälligkeitsdatum der Aktienkurs bestimmet werden kann.
Die wesentliche Bereiche bei der Optionsbewertung sind oberhalb und unterhalb diese
Ausübungspreis. Es sollen also die folgenden Wahrscheinlichkeiten berechnet werden:
P(ST > K) und
P(ST < K),
(1.8)
wobei ST der Preis des Vermögenswert zum Zeitpunkt T , und K den Ausübungspreis darstellt.
Zu diesem Zweck wird die nachfolgende Notation eingeführt. Es wird N(·) als die kumulative Verteilungsfunktion mit Standard Normalverteilung angenommen . Das heisst,
wenn ζ ∼ N(0, 1) ist, dann gilt für alle x ∈ ’, dass die Wahrscheinlichkeit der Zufallsvariablen ζ kleiner als x ist, daraus ergibt sich
Z x
N(x) : P(ζ < x) =
−∞
y2
1
√ e− 2 dy.
2π
Die getroffene Annahme gilt auch für die Gleichung (1.7), eine Logarithmierung der Gleichung ergibt
1 2
ln ST = ln S0 + µ − σ T + σWT
2
Hier wird ST auch Log-Normalverteilung genannt.
1
Grundlagen der Optionsbewertung
Dann
8
ln SST0 − (µ − 12 σ2 )T
√
∼ N(0, 1).
ζ :=
σ T
(1.9)
Durch einsetzen von (1.9) in (1.8) ergibt sich
ln SST0 − (µ − 12 σ2 )T
ln SK0 − (µ − 12 σ2 )T
√
√
P(ST < K) = P
<
σ T
σ T
!
ln SST0 − (µ − 12 σ2 )T
√
=P ζ<
σ T
= N −d˜2 ,
mit
!
(1.10)
ln SK0 + (µ − 12 σ2 )T
˜
√
d2 =
.
σ T
Durch die Bedingung
N(−x) = 1 − N(x) = P(ζ > x).
(1.11)
Ergibt sich aus den Gleichungen (1.11) und (1.10)
P(ST > K) = 1 − N(−d˜2 ) = N(d˜2 ).
(1.12)
Zum besseren Verständniss wird jetzt eine Simulation der geometrischen Brownschen
Bewegung in einem Beispiel durchgeführt.
Beispiel 1.5. Die Aktienkurse zu einem diskreten Zeitpunkt werden als geometrische
Brownsche Bewegung bezeichnet. Das Modell beschreibt folgende Gleichung
√
∆S/S = µ∆t + σε ∆t,
bzw.
√
∆S = Sµ∆t + Sσε ∆t.
(1.13)
S bezeichnet den Aktienkurs zu einem bestimmten Zeitpunkt. ∆S ist die Änderung des
Aktienkurses innerhalb des nächsten Zeitintervalls ∆t. ε ist ein zufälliger Wert aus der
Standardnormalverteilung N(0, 1).
Angenommen, der Aktienkurs sei S0 = 20, die Zeit T = 0.1, die erwartete Rendite µ =
0.14, die Volatilität des Aktienkurses σ = 0.2 und ∆t = 0.01.10
Aus der Gleichung (1.13) erhalten wir
∆S = 0.14 × 0.01 × S + 0.02 ×
10 Vgl
Beispiel in [6, S.335]
√
0.1 × S × ε.
1
Grundlagen der Optionsbewertung
9
Es werden mit Hilfe von MATLAB Befehl randn(·) eine Zufallszahl ε erzeugt. (Siehe
Anhang Code B.3) . Für den ersten Zeitraum wird ein ε = 0.4142 ermittelt. Die Tabelle 1
zeigt einen mögliche Entwicklung des Aktienpreises an.
Bei der Änderung über den ersten Zeitraum erhalten wir:
∆S = 0.0014 × 20 + 0.2 × 20 × 0.4142 = 0.1937
Für den zweiten Zeitraum beginnt der Aktienkurs folglich bei 20.1937. Der Wert ε wird
für den nächsten Zeitraum ermittelt und beträgt −1.2799. Die Veränderung des Aktienkurses für den zweiten Zeitraum beträgt
∆S = 0.0014 × 20.1937 + 0.2 × 20.1937 × (−1.2799) = −0.4886.
Damit liegt der Aktienpreis zu Beginn des dritten Zeitraums bei 19.7050. Die weiteren
Werte werden entsprechend ermittelt.
Die Tabelle 1 ist nur einer der möglichen Verläufe der Aktiepreisbewegung. Beispielsweise zeigt Hull [6] zu welchen verschiedenen Ergebnissen eine solche Berechnung führen
kann. Andere Zufallszahlen führen dabei zu andere Preisbewegungen. Der letzte Aktienkurs von 20.9635 kann als zufälliger Wert des Aktienpreises am Ende von zehn Zeitintervallen angesehen werden. Diese ist ein mögliches Ergebnis, dieser Simulation des
Aktienpreises.
Es wurde zur Erzeugung der Graphik unter der Tabelle Funktionen aus MATLAB verwendet. (Siehe Anhang: Code B.3 und Code B.4).
Aktienkurs
20.0000
20.1937
19.7050
20.1237
20.6716
21.0543
21.1380
20.7867
20.6089
20.9523
20.9635
zufälliger Wert
0.4142
-1.2799
0.9922
1.2916
0.8555
0.1287
-0.9008
-0.4976
0.7631
-0.0434
-0.2623
Änderung
0.1937
-0.4886
0.4186
0.5480
0.3826
0.0837
-0.3512
-0.1778
0.3434
0.0112
-0.0806
Tabelle 1: Simulation für den Aktienkurs bei µ = 0.14, σ = 0.2 und ∆t = 0.01. Quelle: eigene
Berechnung.
1
Grundlagen der Optionsbewertung
10
Für die Graphik wurden vier verschiedene Möglichkeiten der Aktienpreisbewegung durchgeführt.
Abbildung 1.3: Monte-Carlo-Simulation für Pfade der geometrischen Brownschen Bewegung.
Quelle: eigene Darstellung.
Die wichtigste Anwendung des Itô-Kalküls in der Finanzmathematik ist die in der Optionsbewertung. Dabei ist die bekannteste Anwendung des Ergebnisses in der BlackScholes-Formel.11 Im folgendne Kapitel wird die Black-Scholes-Formel dargestellt.
11 [17,
S.90]
2
2
Black-Scholes-Modell und Vanilla Option Bewertung
11
Black-Scholes-Modell und Vanilla Option Bewertung
Das Black-Scholes-Modell ist ein finanzmathematisches Modell zur Bewertung von Finanzoptionen, welches von Fischer Black und Myron Samuel Scholes im Jahr 1973 eingeführt wurde. Die Black-Scholes Formeln kann auf verschiedene Weise abgeleitet werden.
Black-Scholes (1973) und Merton (1973) finden es durch Lösung der Wärmeleitungsgleichung, die nach Anwendung eines Hedging Argument erhalten wurde. 12
2.1
Annahmen
Das Black-Scholes-Modell ist das Grundlagenmodell für die Optionsbewertung und geht
dabei von folgenden Annahmen aus:13
• Der Preis für Vermögenswerte folgt einem normallogarithmischen Verlauf.
• Der risikolose Zinssatz r und die Volatilität σ sind bekannt und konstant.
• Es gibt keine Transaktionskosten oder Steuern. Alle Wertpapiere sind ohne Einschränkung teilbar.
• Vom zugrunde liegenden Vermögenswert erfolgt keine Dividendenzahlung während der Laufzeit der Option.
• Es gibt keine Arbitragemöglichkeiten.
• Der Handel des Basiswertes erfolgt auf einer kontinuierlichen Basis.
• Leerverkäufe sind erlaubt.
Es existiert ein vollkommener Kapitalmarkt. Das bedeutet, es gibt keine Transaktionskosten und keine Steuern.
2.2
Black-Scholes Partial Differentialgleichungsmethode
Der von uns angenommene Aktienkursprozess ist
dS = µSdt + σSdWt ,
(2.1)
f gibt den Marktwert einer Option an und ist vom Aktienkurs und Zeitpunkt abhängig
( f = f (S,t)). µ ist erwartete Rendite. σ ist die Volatilität des Aktienkurses und Wt ist ein
12 Vgl.
13 Vgl.
[15, S. 7]
[21, S.41] und [6]
2
Black-Scholes-Modell und Vanilla Option Bewertung
12
Wiener-Prozess.
Nach der Itô Formel ergibt sich,
∂f
∂f
1 ∂2 f
d f = dt + dS +
(dS)2
2
∂t
∂S
2 ∂S
∂f ∂f
1 ∂2 f 2 2
∂f
=
+ µS +
σ S dt + σSdWt .
2
∂t ∂S
2 ∂S
∂S
(2.2)
Der Marktwert f und der Aktienkurs S entsprechen dem zugrunde liegenden WienerProzesses. Der Wert des Portfolioes wird mit Π bezeichnet. Das Portfolio setzt sich dabei
folgendermaßen zusammen:14
−1 :
∂f
+ :
∂S
Derivate
Anteil der Aktien.
Der Inhaber verkauft eine Option bei gleichzeitigem Ankauf einer Aktie des gleichen
underlying assets. Dieses Portfolio lässt sich durch folgende Gleichung darstellen:
Π = −f +
∂f
S.
∂S
(2.3)
Die ∆Π ist die Änderung von Π im Zeitintervall ∆t
∆Π = −∆ f +
∂f
∆S.
∂S
(2.4)
Aus Gleichung (2.1) und (2.2) ergeben sich:
∂f
∆Π = −∆ f + ∆S
∂S
∂f ∂f
1 ∂2 f
∂f
∂f
=−
+ µS +
∆t − σS∆Wt + [µS∆t + σS∆Wt ]
2
∂t ∂S
2 ∂S
∂S
∂S
∂ f 1 ∂2 f 2 2
=−
+
σ S ∆t.
∂t 2 ∂S2
(2.5)
Da diese Gleichung kein ∆Wt enthält, ist das Portfolio über den Zeitraum ∆t risikolos.
Unter der Voraussetzung, dass die oben beschriebenen Annahmen 3.1 gelten, ergibt sich,
dass die momentane Rendite des Portfolioes der anderen kurzfristigen risikolosen Anlage
entspricht.
∆Π = rΠ∆t,
(2.6)
14 Vgl.
[6, S.357]
2
Black-Scholes-Modell und Vanilla Option Bewertung
13
wobei r der risikolose Zinssatz ist. Durch Einsetzen von (2.3) und (2.5) in (2.6) in die
Gleichung ergibt sich
dann erhalten wir
∂f
∂ f 1 ∂2 f 2 2
+
σ S ∆t = r f − S ∆t,
∂t 2 ∂S2
∂S
∂f
∂ f 1 ∂2 f 2 2
+ rS +
σ S = r f.
∂t
∂S 2 ∂S2
(2.7)
(2.8)
Die Gleichung (2.8) ist die Black-Scholes-Merton-Differentialgleichung. 15 Mit den Erweiterungen und Varianten spielt die Gleichung eine wichtige Rolle in dieser Arbeit (Vgl.
Kapitel 3).
Für die Gleichung (2.8) existieren viele unterschiedliche Lösungen unterschiedlicher Optionen. Ausgehend von diesen Randbedingungen können die Ausgangswerte für ein bestimmtes Derivat zum Zeitpunkt T=0 berechnet werden. Diese Ausgangswerte werden
verwendet, um eine Matrix mit den Werten des Derivats zu verschiedenen Zeitpunkten zu
bestimmen. Für eine europäische Kaufoption c stellt sich die Randbedingung wie folgt
dar:
c(S, T ) = max(S − K, 0), falls t = T.
(2.9)
Ist der Vermögenswerte gleicht Null (S = 0), so ist die Call-Option wertlos:
c(0,t) = 0.
(2.10)
Wenn die Preiserhöhungen der Vermögenswert größer K sind, dann wird die Call-Option
stets ausgeübt. Für S → ∞ ist ergibt sich der Wert der Option:
c(S,t) ∼ S,
falls S → ∞.
(2.11)
Für eine europäiche Verkaufsoption p lautet die Randbedingung
p(S, T ) = max(K − S, 0),
falls
t = T.
(2.12)
Die Randbedingung für eine Put-Option bei S = 0 ergibt:
p(0, T ) = Ke−r(T −t) .
(2.13)
Die Randbedingung für eine Put-Option bei S → ∞ ist:
p(S, T ) → 0,
15 Vgl.
[6, S.358]
falls S → ∞.
(2.14)
2
Black-Scholes-Modell und Vanilla Option Bewertung
14
Wie in Kapitel 2.2 gezeigt, kann der Wert einer Option mit Hilfe eines Portfolios Π dagestellt werden. Dieses Portfolio ist nur für eine kurze Zeitspanne als risikolos anzusehen.
Ändern sich die Aktienkurs S und Zeitpunkt t, so verändern sich auch der Anteil der Aktien ∂∂Sf im Portfolio.
Es zeigt sich, dass die Black-Scholes Gleichung (2.8) den Parameter µ nicht mehr enthält.
Das heißt der Wert eine Option wird unabhängig davon, wie schnell oder langsam ein
Vermögenswert wächst. Der einzige Parameter der stochastischen Differentialgleichung
ist somit die Volatilität.
Daraus folgt, dass zwei Anleger von unterschiedlichen Werten für ihre erwartete Rendite
µ ausgehen können und sich dennoch auf den Wert einer Option einigen.
2.3
Die Black-Scholes Formel für europäische Optionen
Bei dem europäische Optionen wird zuerst auf die Vanilla Optionen eingegangen. Für die
gelten die folgenden Gleichungen:
mit
c = S0 N(d1 ) − Ke−rT N(d2 ),
(2.15)
p = Ke−rT N(−d2 ) − S0 N(−d1 ),
(2.16)
2
ln S0 + (r + σ )T
d1 = K √ 2 ,
σ T
2
√
ln SK0 + (r − σ2 )T
√
d2 =
= d1 − σ T .
σ T
wobei r der risikolose Zinssatz ist, T stellt den Verfalltszeitpunkt und K den Basispreis
dar. Die Gleichung (2.15) zeigt die Formel einer europäische Kaufoption. Die Gleichung
(2.16) zeigt die Formel einer europäische Verkaufsoption. Die Funktion N(·) ist die kumulative Verteilungsfunktion einer Standardnormalverteilung. 16
Ist die Preisformel einer Call-Option bekannt, kann unter den gleichen Voraussetzungen
durch die Call-Put Parity die Preisformel einer Put-Option berechnet werden. Berücksichtigt man diese Identität, so ergibt sich:
N(−d1 ) = 1 − N(d1 ).
Die Gleichung (2.15) lässt sich dabei auf zwei unterschiedlichen Wegen nachvollziehen.
Eine Möglichkeit kann die Lösung der Black-Scholes partiellen Differentialgleichung
(2.8) unter bestimmten Randbedingungen sein. Die andere Möglichkeit ist die Verwendung der risikoneutralen Bewertung.
Wenn die partielle Black-Scholes Differentialgleichung die erwartete Rendite µ enthält,
dann wird gezeigt, dass sie nicht unabhängig von Risikopräferenzen ist.
16 Vgl.
[6, S.361]
2
Black-Scholes-Modell und Vanilla Option Bewertung
15
In der Ableitung von der partiellen Black-Scholes Differentialgleichung kann µ eliminiert
werden. Wenn diese Gleichung keine Risikopräferenz enthält, so beeinflusst die Risikopräferenz nicht die Lösung der Gleichung. Für die Bewertung von Vanilla Optionen f
können daher beliebige Risikopräferenzen verwendet werden. Es wird angenommen, dass
alle Anleger risikoneutral sind. In dieser Situation, da alle Anleger risikoneutral sind, ergibt sich der risikolose Zinssatz r für alle Wertpapiere.17
Unter der Annahme, dass alle Anleger risikoneutral sind, ergibt sich die erwartete Rendit
µ nicht aus der Black-Scholes Gleichung. Obwohl der Wert einer Option von der Standardabweichung des Preises für Vermögenswerte abhängig ist, hängt er nicht von seiner
Wachstumsrate ab. Die verschiedenen Anleger kommen trotz unterschiedlicher Schätzungen der Wachstumsrate einer Aktie auf den selben Wert für eine Option. Dies bedeutet,
dass µ durch r ersetzt wird.
Es wird ein europäisches Derivat betrachtet. Die Auszahlung dieses Derivats wird zum
Zeitpunkt T berechnet. Durch die Annahme, dass die erwartete Rendite µ dem risikolosen
Zinssatz entspricht (µ = r)18 , ergibt sich der Call-Preis durch
c = e−rT Ê[max(ST − K, 0)],
(2.17)
wobei Ê der Erwartungswert in einer risikoneutralen Welt ist.
Aus der Gleichung (2.17) lässt sich die Gleichung (2.15) herleiten .(Beweis siehe Anhang)
Im Beweis(A.4) im Anhang,wurden die Kosten von KN(d2 ) gleich dem Basispreis K mit
der Wahrscheinlichkeit der zukünftigen Basispreisanzahlung multipliziert. S0 e−rT N(d1 )
bedeutet den erwartete Wert zum Zeitpunkt T .
Beispiel 2.1. Im Folgenden wird beispielhaft eine Call- und eine Put Option berechnet.
Basierend auf der Gleichung(2.15) wurde ein MATLAB Programm eingerichtet (Code
siehe Anhang: Code B.7). Es wird hierbei die folgende Funktion verwendet:
EuroOptionPricingBS(CallPut,K,S0,T,r,sigma).
Dies entspricht dem Beispiel in Hull [6, Beispiel 13.6, S. 364]:
Gegeben ist eine Option sechs Monate vor dem Verfallsdatum. Der Aktienkurs beträgt
42 Euro, der Basispreis der Option beträgt 40 Euro, der risikolose Zinssatz liegt bei 0.10
per annum und die Volatilität bei 0.20 per annum. Es gilt also K = 40, S0 = 42, T = 0.5,
r = 0.1 und σ = 0.2.
Die erste Variable des CallPut Codes bezeichnet den Optionstyp. Dabei beschreibt eine
1 eine Call Option, wobei eine 0 eine Put Option definiert.
17 Vgl.
18 Vgl.
[6, S.360]
[6, S.360]
2
Black-Scholes-Modell und Vanilla Option Bewertung
16
Für eine Call Option gilt
EuroOptionPricingBS(CallPut,K,S0,T,r,sigma)
>> EuroOptionPricingBS(1,40,42,0.5,0.1,0.2)
ans =
4.7594
Für eine Put Option gilt
>>
EuroOptionPricingBS(0,40,42,0.5,0.1,0.2)
ans =
0.8086
In diesen Abschnitt wird die numerische Lösung mit der Monte-Carlo-Simulation dargestellt. Die Monte-Carlo-Simulation verwendet die Zufallszahlen, um eine Vielzahl verschiedener Pfade zu untersuchen in einer risikoneutralen Welt. Für jeden Pfad wird die
Auszahlung berechnet und mit dem risikolosen Zinssatz r diskontiert. Dann wird der Mittelwert von der diskontierten Auszahlung berechnet, dieser Wert entspricht dem geschäzten Wert des Derivats.19 Es wird die Monte-Carlo-Simulation zur numerischen Lösung
der Bewertungsformel verwendet, sowohl für die Call- als auch für die Put-Option. Diese
Methode basiert auf (2.17):
c = e−rT Ê max[ST − K, 0],
p = e−rT Ê max[K − ST , 0],
wobei ST den aktuellen Aktienkurs (underlying) und K den Ausübungspreis bezeichnet
und r den risikolosen Zinssatz darstellt.
Die Simulation läuft in vier Schritten ab:
1. Es wird n-mal eine experimentelle Simulation für die Basispreise STi , i = 1, 2, . . . , n,
in dem Zeitpunkt T (mit r ersetzt µ) durchgeführt;
2. die Auszahlung des Preises von jedem Assetpreis f i wird berechnet.
Für eine Call Option gilt
f i := max[STi − K, 0].
Für eine Put Option gilt
f i := max[K − STi , 0].
19 [6,
S.517]
2
Black-Scholes-Modell und Vanilla Option Bewertung
17
3. der Mittelwert der Auszahlung n wird experimentell berechnet:
1 n
f¯ := ∑ f i .
n i=1
4. der Basiswert von dem Mittelwert der Auszahlung wird berechnet:
ĉ := e−rT f¯.
Dann ergibt sich für ĉ der approximierte Call Preis .
Wenn bei der Gleichung(1.7) µ durch r ersetzen wird. So ergibt sich folgende Gleichung:
ST = S0 exp
σ2
r−
T + σWT .
2
Der Preis des Aktienkurses ST folgt einer Logarithmishcen Normalverteilung .
Beispiel 2.2. Durch das folgenden Programm (siehe im Anhang Code B.5) kann eine
zufällige Matrix erzeugt werden, die von der Monte-Carlo Simulation verwendet wird.
Diese m × n Matrix soll als random Matrix bezeichnet werden.
Der MATLAB Code für die Bewertung von einer europäische Call- oder Put Option steht
im Anhang Code B.6.
UnderlyingAssetBSModel(S0,T,r,sigma,m,n)
Es wird von der Situation wie im Beispiel 2.1 ausgegangen. In diesem Fall ist S0 = 42,
T = 0, 5, r = 0, 1, σ = 0, 2 und K = 40. In der Funktion von Code B.6 sei die Anzahl der
Experimente n (n = 10000000). Je höher die Anzahl, desto näher liegt das Ergebnis bei
der exakten Lösung (Black-Scholes-Modell).
für eine Call Option:
EuroOptionPricingMCBSModel(CallPut,S0,T,r,sigma,K,n)
>> EuroOptionPricingMCBSModel(1,42,0.5,0.1,0.2,40,10000000)
ans =
4.7569
für eine Put Option:
>> EuroOptionPricingMCBSModel(0,42,0.5,0.1,0.2,40,10000000)
ans =
0.8080
2
Black-Scholes-Modell und Vanilla Option Bewertung
18
Die Monte-Carlo-Simulation berechnet den Zeitraum vom Beginn der Laufzeit vorwärts
bis zur Fälligkeit des Derivats. Da die Effizienz der Monte-Carlo-Simulation bei eine
steigende Anzahl der zugrundeliegenden Variablen wächst, kann diese somit auch für die
Berechnung des Wertes von Derivaten des europäischen Types verwendet werden. 20
20 [6,
S.517]
3
Barrier Option
3
19
Barrier Option
Die Barrier Option ist eine Form der exotischen Optionen. Bei Hull [6, Kapital 22] werden verschiedene Arten von exotischen Optionen und ihre Bewertung diskutiert.
Die Barrier Option sind bei die Auszahlung davon abhängnt, ob der Preis des Underlyings
in einem bestimmten Zeitrau eine bestimmte Schwelle erreicht. 21 Durch den Handel von
Barrier Optionen, kann der Anleger mit wenig Geld einen großen Profit erlangen. Der
Anleger muss nur wenig in die Aktien oder den Basiswert investieren, kann aber überproportional von dem Kursgewinn des Basiswerts profitieren. Das ist mit der Hebelwirkung
zu erklären. Die Hebelwirkung ist das Verhältniss aus dem Bezugswert der Option und
des Aktienkurses. 22
”Der wesentlicher Vorteil der Barrier Option liegt darin, dass sie ein effizientes und flexibles Instrument zur Renditesteigerung und Risikominimierung bereitstellen. Ein Marktteilnehmer kann seine gewünschte Rendite- und Risikostruktur exakt modellieren.”23
Der Markt für Barrier Optionen hat sich schnell entwickelt. Die Anleger die sich in diesen
Markt befinden, müssen wissen, wie diese Optionen funktionieren, wie sie genutzt werden können und wie der Preis diesen Option bestimmt wird.
Um die Barrier Option zu analysieren, muss eine Optionsbewertung durchgeführt werden. Einer der einfachen und weithin akzeptieren Ansätze zur Optionsbewertung wurde
von Merton (1969,1973) und Black-Scholes (1973) entwickelt.
3.1
Eigenschaften der Barrier Option
Um die Eigenschafe einer Barrier Option aufzuzeigen, muss diese in verschiedenen Gruppen klassifiziert werden. Außer der Barrier Option, gibt es viele unterschiedliche Arten
von Exotic Optionen:24
• time-dependant barrier Options (zeitabhängige Barrier Option);
• Asia barrier option ;
• Dual-barrier option (duale Barrier Option);
• Forward-star barrier options;
• Window- or limited-time barrier option (Fenster oder zeitbeschränkte/limitierte Barrier Option).
21 [6,
S.640]
S.93]
23 [13]
24 Vgl. [22, S.204]
22 Vgl.[17,
3
Barrier Option
20
Barrier Optionen können in ”Knock-in” oder ”Knock-out” Option unterteilt werden.
Knock-out-Optionen:
Optionen wird deaktiviert, wenn eine gewisse vorgegebene Barrier innerhalb der Laufzeit
erreicht wird.
Knock-in-Optionen:
Optionen wird aktiviert, wenn eine gewisse vorgegebene Barrier innerhalb der Laufzeit
erreicht wird, sonst verfällt sie.
Eine Knock-in Option ist dadurch charakterisiert, dass wenn der aktuelle Aktienpreis eine
bestimmte Barrier berührt, diese Option ausgeübt wird. Eine Knock-Out Option verfällt,
wenn der aktuelle Aktienpreis eine bestimmte Barrier erreicht hat.
Eine Barrier Option ist billiger als eine Vanilla Option, dies wird in der Gleichung (3.1)
gezeigt.
Der Definitionsbereich D gibt an in welche Bereich eine Barrier Option existiert. Wenn
der Aktienpreis unterhalb der Barrier ist, dann handelt es sich um eine ”up” Option. Weil
sich der Aktienkurs nach oben bewegen muss, bis die Barrier berührt werden, damit wird
die Barrier Option aktiviert (Knock-in) oder verfällt (Knock-out):
D = {(S,t)|0 6 S 6 H,
0 6 t 6 T },
Ist der Aktienpreis höher als die Barrier, handelt es sich um eine ”down” Option. Der
Aktienkurs muss sich nach unten bewegen, bis die Barrier berührt wird, damit die Option
aktiviert (Knock-in) oder verfällt (Knock-out):
D = {(S,t)|H 6 S 6 ∞,
0 6 t 6 T },
Angenommen die Randbedingung (S = H) wird erreicht. Dann ergibt sich, für die ”out”
Option, dass der Optionspreis gleich 0 ist:
f (H,t) = 0,
Für die ”in” Option, ist der Optionspreis gleich dem entsprechenden Vanilla Optionspreis:
f (H,t) = fvanilla (H,t).
Zum Fälligkeit t = T ergibt sich die folgende Optionswert.
knock-out call
(
0 6 S 6 H up,
+
f (S, T ) = (S − K)
H 6 S 6 ∞ down.
knock-in call
(
f (S, T ) = 0
06S6H
up,
H 6 S 6 ∞ down,
3
Barrier Option
21
knock-out put
(
+
f (S, T ) = (K − S)
06S6H
up,
H 6 S 6 ∞ down.
knock-in put
(
f (S, T ) = 0
06S6H
up,
H 6 S 6 ∞ down.
Insgesamt gibt es acht Formen von Barrier Optionen, die auch wie folgt geschrieben werden können:
(
Knock-out Down-and-out:
(
Knock-out Up-and-out:
Knock-in Down-and-in:
(ST − K)+ 1{St >H, t∈[0,T ]}
(call),
(K − ST )+ 1{St >H, t∈[0,T ]}
(put),
(ST − K)+ 1{St <H, t∈[0,T ]}
(call),
(K − ST ) 1{St <H, t∈[0,T ]}
(put),
+
(
(ST − K)+ (1 − 1{St >H, t∈[0,T ]} ) (call),
(K − ST )+ (1 − 1{St >H, t∈[0,T ]} ) (put),
(
Knock-in Up-and-in:
(ST − K)+ (1 − 1{St <H, t∈[0,T ]} ) (call),
(K − ST )+ (1 − 1{St <H, t∈[0,T ]} ) (put).
Wobei 1ω (S) eine Indikatorfunktion mit die Menge ω ist:
(
1ω (S) =
1,
falls S ∈ ω,
0,
sonst.
Wenn die Auszahlung der Vanilla Option (ST − K)+ oder (K − ST )+ ist, dann erhält man
folgenden Ausdruck:
Auszahlung von Knock-out + Auszahlung von Knock-in
= Auszahlung von Vanilla Option.
Die Beziehung zwischen dem Preis der Barrier Option und dem Preis der entsprechenden
Vanilla Option ist:25
fvanilla (S,t) = fup−and−in (S,t) + fup−and−out (S,t)
= fdown−and−in (S,t) + fdown−and−out (S,t).
(3.1)
Diese Beziehung zeigt, dass eine Barrier Option billiger als eine Vanilla Option ist. Zum
Beispiel wird eine eine europäische Call Up Option wie folgt abgeleitet.
25 Vgl.
[10, S.248]
3
Barrier Option
22
Für eine europäische Call up Option gilt
fvanilla (S,t) =(ST − K)+
=(ST − K)+ 1{St <H, t∈[0,T ]} + (1 − 1{St <H, t∈[0,T ]} )
=(ST − K)+ 1{St <H, t∈[0,T ]} + (ST − K)+ (1 − 1{St <H, t∈[0,T ]} )
= fup−and−in (S,t) + fup−and−out (S,t).
Unabhängig davon, ob der Assetpreis die Barrier erreicht oder nicht, ist die Aussage immer korrekt.
Ein Hauptmerkmal der Knock-out Barrier Option ist eine bestimmte “Knock-out Schwelle”. Der Anleger verliert sein investiertes Kapital, wenn der Wert des Basisobjekts erreicht
oder die Grenze unterschritten wird. Das heißt, wenn der Aktienkurs auf die Knock-outSchwelle trifft, ist auch die Option wertlos. Dies gilt für eine Knock-in Barrier Option
entsprechend umgekehrt.
Der Vorteil der Barrier Option ist, dass man weniger investieren muss, aber einen größeren Profit erhalten kann. Der Anleger kann sehr schnell nach Kurssteigerungen (im Falle
von Call) oder Kursverfall (im Falle von Put) profitieren, weil bei dieser speziellen Optionsform mit einer Hebelfunktion gearbeitet wird. So steigt zum Beispiel der Preis einer
Call-Option bei einem Anstieg des zugrunde liegenden Aktienkurses um eine Geldeinheit
in der Regel um weniger als eine Geldeinheit an. Der Wachstungsprozess der Call-Option
liegt über dem der Aktien. Das wird als “Hebeleffekt” genannt. Das ist das Verhältniss
aus dem Bezugswert der Call-Option und des Aktienkurs. 26
3.2
Black-Scholes-Modell zur Optionsbewertung
Sei St der Kurs des Basiswertes zum Zeitpunkt t und sei K der Ausübungspreis. Wenn
τ = inf{t > 0 : St ≤ K},
gilt, dann ergibt sich für die Auszahlung der Option für die Ablaufzeit T folgendes: 27

0,
∃τ : Sτ ≤ K für τ ≤ T ;
c = (St , K)+ 1{τ>T } =
ST − K,
sonst,
wobei 1{.} die Indikator-Funktion ist. Eine europäische Put-Option hat folgenden Auszahlung.
p = (K − St )+ 1{τ>T } ,
Wobei τ = inf{t > 0 : St ≥ K}. Im Folgenden wird die Call Option betrachtet.
26 Vgl.[17,
27 Vgl.
S.93]
[11, S.5]
3
Barrier Option
23
Es wird angenommen, dass der Kurs des Basiswertes einem kontinuierlichen Pfad folgt,
der unabhängig von den Verteilungsannahmen des Optionsbewertungsmodells ist. Im
Black-Scholes Modell folgt die dividendenlose Auszahlung des Kurses des Basiswerts
der geometrischen Brownschen Bewegung:
dSt = µSt dt + St dWt ,
wobei W (t) ein Standard Wiener Prozess ist. Die erwartete Rendite µ und die Volatilität σ sind konstant. Darüber hinaus ist der Zinssatz r konstant. Solange die Knock-outSchwelle nicht berührt wurde, erfüllt der Preis für eine Call Option folgende Gleichung
f = f (St ,t). Die partielle Differentialgleichung (PDE) lautet wie folgt:
∂f 1
∂2 f
∂f
+ rS + S2 σ2 2 − r f = 0.
∂t
∂S 2
∂S
Die Auszahlung für die Endbedingung:
f (T, ST ) = ST − K.
Unter der Randbedingung:
f (τ, S(τ)) = 0,
mit S(τ) = K,
0 ≤ τ ≤ T.
ergibt sich das Standard dynamische Replikations Argument. Auf Grund dieses Arguments haben Rubinstein/Reiner(1991), Carr (1995) die folgende Black-Scholes-Modell
zur Optionsbewertung zur Berechnung der PDE erstellt:28
z1
z2
K
K
−rT
c = S0 N(d1 ) −
N(d3 ) − K e
N(d2 ) −
N(d4 ) .
S0
S0
mit d1 , d2 in (2.3), und
ln(K/S0 ) + (r + σ2 )T
√
,
σ T
√
ln(K/S0 ) + (r − σ2 )T
√
d4 =
= d3 − σ T ,
σ T
1 2
r + 2σ
z1 = 2
,
σ2
r − 21 σ2
z2 = 2
,
σ2
d3 =
(3.2)
wobei N(·) die kumulative Verteilungsfunktion einer Standardnormalverteilung ist. In folgende Abschnitt wird nähr auf die Barrier Optionsbewertung mit dem Black-ScholesModell Modell eingegangen.
28 Vgl.
[11, S.8]
3
Barrier Option
3.3
24
Black-Scholes-Modell zur europäische Barrier Optionsbewertung
Soll der Marktpreis einer Barrier Option berechnet werden, so kann mittels des Partial
differential Gleichungsmodells die Lösung erarbeitet werden. Die Barrier Option unterscheidet sich von der Standard Option dadurch, dass eine Barrier vorhanden ist. Deshalb
müssen bei der Bewertung von Barrier Optionen auch die Randbedingung mit interpretiert werden.
Für ein Barrier Option gibt es einen Definitionsbereich und die Randbedingung.29 Zum
Zeitpunkt t = T existieren verschiedene Möglichkeiten: (Vgl. Kapitel 3.1)
Alle Barrier Optionen erfüllen die Voraussetzungen der Black-Scholes-Merton Differentialgleichung (2.8):
∂ f 1 ∂2 f 2 2
∂f
+ rS +
σ S = r f.
∂t
∂S 2 ∂S2
Wie diese Lösung für eine Barrier Option zu finden, wird nachfolgend erläutert. In dem
Definitionsbereich D (D = {H 6 S < ∞, 0 6 t 6 T }) (Vgl. Kapitel 3.1) gelten, für eine
europäische die Down-and-out Call Option die folgenden drei Formeln:30
∂ f 1 ∂2 f 2 2
∂f
+ rS +
σ S =rf
∂t
∂S 2 ∂S2
f (S, T ) = (S − K)+ ,
f (H,t) = 0,
(D)
(3.3)
(H 6 S < ∞)
(3.4)
(0 6 t 6 T )
Es wird eine Lösung für die Gleichung (3.3), (3.4), und (3.5) gesucht.
Dazu wird
S
x = ln ,
H
f = Hu.
(3.5)
(3.6)
transformiert, dann erhält man HS = ex , S = Hex und u = Hf . Wobei u die Nuntzenfunktion
ist.
Dann ergibt sich daraus folgende Gleichung:
∂u 1 2 ∂2 u
1
∂u
+ σ 2 + (r − σ2 ) − ru = 0,
∂t 2 ∂x
2
∂x
u(x, T ) = (ex − KH )+ ,
u(0,t) = 0.
hier ist KH =
29 Vgl.
30 Vgl.
K
H.
[10, S.249]
[10, S.251]
(x ∈ R+ , 0 6 t 6 T )
(0 < x < ∞)
(0 6 t 6 T )
(3.7)
(3.8)
(3.9)
3
Barrier Option
25
Nun wird die Funktion W (Wiener Prozess) in die Funktion u(x,t) eingesetzt:
u = eαx+β(T −t)W,
wobei
(3.10)
1
σ2
α = − 2 r−
,
σ
2
2
1
σ2
β = −r − 2 r −
.
2σ
2
Die Gleichung (3.10) wird in die Gleichungen (3.7), (3.8) und (3.9) eingesetzt. Dann
erhalt man die folgende Gleichung:
∂W 1 2 ∂2W
+ σ
= 0,
∂t
2 ∂x2
(3.11)
x −K )+ ,
H
W (x, T ) = e−αx(e
(3.12)
W (0,t) = 0.
(3.13)
Nachdem die Funktion W (x,t) und u(x,t) berechnet wurde, werden sie zurück in f (S,t)
transformiert. Dann erhält man die Lösung der Patiellen-Differenzen-Gleichung:31
f (S,t) = SN(d1 (t)) − Ke−r(T −t) N(d2 (t))
− 2r2
σ
S 1− 2r
S
N(d3 (t)) − Ke−r(T −t) ( ) σ2 N(d4 (t)),
−H
H
H
wobei
(3.14)
2
ln S + (r + σ )(T − t)
d1 (t) = K p 2
,
σ (T − t)
2
√
ln KS + (r − σ2 )(T − t)
p
d2 (t) =
= d1 (t) − σ T − t,
σ (T − t)
H2
(3.15)
σ2
ln SK + (r + 2 )(T − t)
p
,
σ (T − t)
√
d4 (t) = d3 (t) − σ T − t.
d3 (t) =
Der Unterschied zwischen d1 (t) und d3 (t) besteht darin, dass S durch
31 Die
Beweise siehe [10, S.251]
dass t eine beliebige Zeitpunkt zwischen [0, T ].
32 Angenommen,
H2
S
ersetzt wurde.32
3
Barrier Option
26
Es wird die Gleichung (3.14) abgeleitet und man bekommt dadurch die folgende Lösung:
S 1− 2r2
S − 2r2
−r(T
−t)
( ) σ N(d4 (t))
f (S,t) = fvanilla (S,t) − H( ) σ N(d3 (t)) + Ke
H
H
− 2r2 !
σ
S
S
H · N(d3 (t) + Ke−r(T −t) N(d4 (t))
= fvanilla (S,t) −
H
H
2r
− 2 +1 2
! (3.16)
σ
H
S
= fvanilla (S,t) −
· N(d3 (t)) + Ke−r(T −t) N(d4 (t))
H
S
− 2r2 +1
2 σ
S
H
,t .
= fvanilla (S,t) −
fvanilla
H
S
Diese Gleichung (3.16) zeigt, dass f (S,t) < fvanilla (S,t) ist. D.h. eine Down-and-out Call
Barrier Option ist billiger als eine Vanilla Option.
Auf Grund der Annahme t = 0, d1 = d1 (0) ergibt sich diese Bewertungsformel für einen
Down-and-out Call cdo :
cdo =SN(d˜1 ) − Ke−rT N(d˜2 )
1− 2r2
− 2r2
σ
σ
S
S
−rT
˜
N(d3 ) − Ke
N(d˜4 ),
−H
H
H
wobei
(3.17)
2
ln S + (r + σ )T
d˜1 = K √ 2 ,
σ T
2
√
ln S + (r − σ )T
d˜2 = K √ 2
= d1 − σ T ,
σ T
2
2
2
2
ln H
+ σ2 )T
SK + (r
˜
√
d3 =
,
σ T
d˜4 =
(3.18)
√
ln H
− σ2 )T
SK + (r
√
= d3 − σ T .
σ T
Auf Grund der bereits bekannten Beziehung bei (3.1) erhält man:
− 2r2 +1
2 σ
S
H
cdi (S,t) =
cvanilla
,t .
H
S
(3.19)
Gleichermaßen kann die Bewertung der Formel für cuo (S,t) und cui (S,t) abgeleitet werden. Um die Bewertungsformel für eine Put Barrier Option zu erhalten, wird die Call-PutParity genutzt.
3
Barrier Option
27
Für eine Down-and-out Option, ergibt sich die folgende Call-Put-Parity: Der Beweis hierfür kann auch bei Jiang ([10, S.253]) nachvollzogen werden.
pdo + SN(dˆ1 ) =cdo + Ke−rT N(dˆ2 )
− 2r2 +1 2
σ
S
H
−rT
+
·
N(dˆ3 ) − Ke N(dˆ4 ) ,
H
S
wobei
(3.20)
2
ln HS + (r + σ2 )T
ˆ
√
d1 =
,
σ T
√
dˆ2 = dˆ1 − σ T ,
2
dˆ3 =
ln HS + (r + σ2 )T
√
,
σ T
(3.21)
2
√
ln H + (r − σ )T
dˆ4 = S √ 2
= dˆ3 − σ T .
σ T
Durch die Beziehung zwischen In und Out, Call und Put, ergeben sich alle Formeln zur
Berechnung von Barrier Optionen (Vgl. Kapitel 2.4).
Beispiel 3.1. Barrier Down-and-out Put Option
In diesem Beispiel wird eine Down-and-out Barrier Put Option berechnet. Die Idee dabei
ist, die Black-Scholes-Fomel mit einer großen Anzahl an Wiederholungen durchzurechnen, mit Hilfe der Monte Carlo Simulation. (Verwendet wurde der Code B.17.)
In dem folgenden Beispiel wurde mit 10000 Wiederholungen gerechnet. (Angaben über
Down-and-out S0 = 50, K = 50, r = 0.4, σ = 0.4 und H = 40.) Je größer die Anzahl
der Wiederholungen ist, desto näher liegt das Ergebnis bei dem realen Wert. Der Nachteil
dabei ist, dass die Kalkulation bei einer hohen Anzahl von Wiederholungen sehr langsam
und kompliziert wird.
BarrierOption_MC_DO(CallPut,S0,K,r,sigma,H,T,nTime,nPath)
>> BarrierOption_MC_DO(0,50,50,0.1,0.4,40,5/12,10000,10000)
ans =
0.5677
Daraus ergibt sich eine Wert für die Down-and-out Option von 0.5677.
In diesem Abschnitt werden alle Barrier Options Formeln mit dem Black-Scholes-Modell
zusammengefasst. Mit diesen Formel können die Werte von allen verschiedenen Barrier
Optionen berechnet werden.
Es werden acht Formeln zur Berechnung von Barrier Optionen vorgestellt. Für jede dieser Formeln existieren jeweils zwei Ausprägungen. Die Barrier kann kleiner oder gleich
dem Ausübungspreis K sein, sie kann aber ebenfalls größer als der Ausübungspreis K
sein. In den folgenden Gleichungen wird Normalverteilung N(·) angenommen, um die
3
Barrier Option
28
Verteilungsfunktion der Standardnormalverteilung zu beschreiben. Die Barrier wird gekennzeichnet als H .
Zur Lösung der Black-Scholes PDE können sowohl analytische als auch numerische Verfahren verwenden werden. Bei Verwendung des analytischen Verfahrens wird mit Variablen gerechnet, es kann aber nur für die europäische Option eingesetzt werden. Mit dem
numerischen Verfahren können sowohl die amerikanische als auch die europäische Option
bewertet werden. Es wird im folgenden das analytische Verfahren angewandt.
Für die Bewertung der Barrier Option werden dabei folgende Gleichungen verwendet.
(Code B.9) 33 Es wird von dividendenlos Aktien ausgegangen, daher gilt q = 0. Es wird
vom Betrachtungszeitpunkt t = 0 ausgegangen:
1. Down-and in Call
Für K > H gilt
cdi = Sb (1 − N(d8 )) − Ke−rT a (1 − N(d7 )) .
Für K < H gilt
cdi = S (N(d1 ) − N(d3 ) + b(1 − N(d6 )) − Ke−rT (N(d2 ) − N(d4 ) + a(1 − N(d5 ))) .
2. Down-and-out Call
Für K > B gilt
cdo = S(N(d1 ) − b(1 − N(d8 ))) − Ke−rT (N(d2 ) − a(1 − N(d7 ))).
Für K < B gilt
cdo = S(N(d3 ) − b(1 − N(d6 ))) − Ke−rT (N(d4 ) − a(1 − N(d5 ))).
3. Up-and-out Call
cuo = S(N(d1 )−N(d3 )−b(N(d6 )−N(d8 )))−Ke−rT (N(d2 )−N(d4 )−a(N(d5 )−N(d7 ))).
4. Up-and-in Call
cui = S(N(d3 ) + b(N(d6 ) − N(d8 ))) − Ke−rT (N(d4 ) + a(N(d5 ) − N(d7 ))).
5. Down-and-in Put
pdi = −S(1 − N(d3 ) + b(N(d8 ) − N(d6 ))) + Ke−rT (1 − N(d4 ) + N(d7 ) − N(d5 )).
33 [19,
S.407]
3
Barrier Option
29
6. Down-and-out Put
pdo = −S(N(d3 )−N(d1 )−b(N(d8 )−N(d6 )))+Ke−rT (N(d4 )−N(d2 )−a(N(d7 )−N(d5 ))).
7. Up-and-out Put
Für K > B gilt
puo = −S(1 − N(d3 ) − bN(d6 )) + Ke−rT (1 − N(d4 ) − aN(d5 )).
Für K < B gilt
puo = −S(1 − N(d1 ) − bN(d8 ))) + Ke−rT (1 − N(d2 ) − aN(d7 )).
8. Up-and-in Put
Für K > B gilt
pui = −S(N(d3 ) − N(d1 ) + bN(d6 )) + Ke−rT (N(d4 ) − N(d2 ) + aN(d5 )).
Für K < B gilt
pui = −SbN(d8 ) + Ke−rT aN(d7 ).
wobei
−1+ 2(r−q)
σ2
H
a=
,
S
1+ 2(r−q)
σ2
H
b=
,
S
2
ln KS + (r + σ2 )T
√
,
d1 =
σ T
2
√
ln S + (r − σ )T
d2 = K √ 2
= d1 − σ T ,
σ T
2
ln S + (r + σ )T
d3 = H √ 2 ,
σ T
2
√
ln S + (r − σ )T
d4 = H √ 2
= d3 − σ T ,
σ T
2
ln S − (r − σ )T
d5 = H √ 2 ,
σ T
2
√
ln S − (r + σ )T
d6 = H √ 2
= d5 − σ T ,
σ T
2
SK
σ
ln H
2 − (r − 2 )T
√
d7 =
,
σ T
2
√
ln SK2 − (r + σ2 )T
√
d8 = H
= d7 − σ T .
σ T
3
Barrier Option
30
Beispiel 3.2. In diesem Beispiel wird eine Down-and-out Put Option betrachtet. Die Bewertung erfolgt mit dem Black-Scholes-Modell. Es soll dabei die obige Formel verwendet
werden. Annahme S = 50, K = 50, r = 0.1,T = 5/12,σ = 0.4 und H = 40. Der Wert von
der Barrier Option ist 0.5424. Für den MATLAB Code siehe Anhang Code B.9.
% EuroOptionBarrierForm(CallPut,UpDown,InOut,K,S,H,T,r,sigma)
>>EuroOptionBarrierForm(0,0,0,50,50,40,5/12,0.1,0.4)
ans =
0.5424
Mit Black-Scholes Modell kann durch wenige Daten der Wert von Optionen bestimmt
werden. Wenn die Menge der Daten jedoch zu groß, oder die Optionen zu komplex sind,
beispielsweise im Falle einer Barrier Option, kann mit numerischen Verfahren weitaus
effektiver gerechnet werden als mit analytischen Verfahren. Das numerische Verfahren
spielt für die Optionsbewertung in der Praxis der modernen quantitativen Finanzwirtschaft eine große Rolle. Selbst wenn analytische Formeln zur Optionsbewertung verfügbar sind, finden numerische Verfahren oder Methoden in der Praxis häufiger Verwendung.
Es existiert eine große Anzahl Literatur in der numerische Methoden behandelt werden.
(Jiang [10], Hull [7, Chapter 17], Brandimarte [2], Tavella und Randall [16] für FDM,
und Jäckely [9] on Monte Carlo methods.)
4
Finite-Differenzen-Methode
4
31
Finite-Differenzen-Methode
Der Preis für Finanzderivate, wie Vanilla und Barrier Optionen ergibt sich aus den Lösungen von einer partiellen Differentialgleichung unter bestimmte Randbedingungen. Daher
ist die Finite-Differenzen-Methode (FDM) für die numerische Lösung partieller Differentialgleichungen ein in der Praxis oft verwendetes Werkzeug.
In diesem Kapitel wird die Finite-Differenzen-Methode vorgestellt. Die Finite Differenzen Methode ist ein numerischen Verfahren. Die anderen numerischen Verfahren sind
Monte-Carlo-Simulationen und Binomialbäume. Die Finite-Differenzen-Methode lässt
sich in die implizite (Kapitel 4.3) und explizite (Kapitel 4.4) Finite Differenzen Methode
und die Crank-Nicolson-Methode (Kapitel 4.5) unterteilen.
Mit der Finite-Differenzen-Methode können amerikanische und europäische Optionen
bewertet werden. Dies ist im Vergleich zur Black-Scholes Gleichung vorteilhaft, da die
Black-Scholes Gleichung nur zur Analyse von europäischen Option eingesetzt wird.
Der Fokus dieses Kapitels liegt in erster Linie auf den europäischen Optionen. Als erstes
wird eine Vanilla Option bewertet. Die Bewertung amerikanische Optionen ist kompliziert, da diese jederzeit angekauft oder verkauft werden können. Für jedes Verfahren wird
durch die numerische Lösung der konkrete Wert bestimmt.
4.1
Einleitung in die Finite-Differenzen-Methode
Die Finite-Differenzen-Methode bestimmt durch die partielle (oder gewöhnliche Differentialgleichung) Gleichung die numerische Lösung des Problems. Die Finite-DifferenzenMethoden bewertet ein Derivat, indem sie die Differentialgleichung, die dem Preis des
Derivats genügt, löst.34
Die Finite-Differenzen-Methode ist eine numerische Lösung. Deren Grundidee besteht
darin, zunächst den Problembereich in Netzstruktur zu generieren und im nächsten Schritt
den Gitterpunkt, durch die entsprechende Formel für die numerische Differenzierung zu
ermitteln.
Die Finite-Differenzen-Methode ist einfach und flexibel auf dem Computer zu implementieren. Die Finite-Differenzen-Methode bewertet ein Derivat, indem sie die Differentialgleichung löst, die den Preis des Derivats erfüllt.35
34 Vgl.
35 [7,
[6, S.506]
S. 506]
4
Finite-Differenzen-Methode
32
St
Smax
(i, j + 1)
(i − 1, j)
j∆S
(i, j)
(i + 1, j)
(i, j − 1)
2∆S
∆S
0
∆t 2∆t
i∆t
T
t
Abbildung 4.1: Gitter der Finite-Differenzen-Methode
Es wird angenommen, dass T die Laufzeit der Option ist und definieren ∆t = NT . In dem
Zeitraum von [0, T ] gibt es insgesamt N + 1 Zeitpunkte:
0, ∆t, 2∆t, ..., N∆t = T.
Es wird ein maximaler Aktienkurs Smax angenommen, dass der Aktienkurs S diesen nie
erreicht. Smax wird in M gleich große Intervalle ∆S = Smax /M aufgeteilt. Es gibt insgesamt
M + 1 äquidistante Aktienkurse:
0, ∆S, 2∆S, ..., M∆S = Smax .
Das Niveau Smax ist so gewählt, dass der gegenwärtigen Aktienkurs genau auf einer Gitterlinie liegt. 36 Die Zeitpunkte und die Aktienkurse bilden ein Gitter wie die Abbildung
4.1 darstellt. [0, T ] × [0, Smax ] werden als (N + 1) · (M + 1) Punkte verteilt. Der Punkt (i, j)
des Gitters entspricht (i∆t, j∆S), der Zeit i∆t und dem Aktienkurs j∆S.
Am Punkt (i, j) wird den Optionswert definieren
fi, j = f ( j · ∆S, i · ∆t).
Nach diese kurzen Einleitung wird jetzt die Lösung mit der Finite-Differenzen Approximation vorgestellt.
36 [6,
S.506]
4
Finite-Differenzen-Methode
4.2
33
Finite-Differenzen-Approximation
Wenn die Finite-Differenzen-Approximation angewendet werden soll, müssen die Werte
der nachfolgende Gleichung (2.8) approximiert werden. Diese Differentialgleichung gilt
für alle Optionen.
∂ f 1 ∂2 f 2 2
∂f
+ rS +
σ S = r f.
∂t
∂S 2 ∂S2
wobei r der risikolose Zinssatz und σ ist die Volatilität. Die Dividendenrendite ist q = 0.
Diese Gleichung hat folgende Eigenschaften:37
• sie ist zweiter Ordnung,
• sie ist linear,
• sie ist eine Parabolische Gleichung.
Alle diese Eigenschaften entsprechen der Klassifikation von partiellen Differentialgleichungen.
Der Finite-Differenzen-Methode liegt der Gedanke zugrunde, dass die Derivate durch
die partiellen Differentialgleichungen bestimmt werden, in dem die Finite-DifferenzenApproximationen angewendet wird. 38 Beispielsweise kann die partielle Ableitung ∂∂tf
durch unterschiedliche Einschränkungen definiert werden
∂f
f (S,t + ∆t) − f (S,t)
= lim
.
∂t
∆t
∆t→0+
(4.1)
Wenn ∆t sehr klein ist, dann
∂f
f (S,t + ∆t) − f (S,t)
≈
.
∂t
∆t
(4.2)
Dies nennt man eine Finite-Differenzen-Approximation. Das Intervall der Zeit ∆t ist
klein, aber nicht infinitesimal. Die Gleichung (4.2) wird vorwärts gerichtete Differenzen
Approximation genannt, da die Differenzierungsrichtung Vorwärts zu t ist. Es werden nur
die Werte t und t + ∆t von f verwendet.
Für die rückwärts gerichtete Differenzen Approximation ergibt sich die Gleichung (4.4):
∂f
f (S,t) − f (S,t − ∆t)
= lim
.
+
∂t
∆t
∆t→0
(4.3)
Wenn ∆t sehr klein ist, dann gilt
∂f
f (S,t) − f (S,t − ∆t)
≈
.
∂t
∆t
37 [5,
S. 290]
[21, S. 269]
38 Vgl.
(4.4)
4
Finite-Differenzen-Methode
34
Es wird der Durchschnittswert berechnet . Dies ist eine symmetrische Approximation.
∂f
f (S,t + ∆t) − f (S,t − ∆t)
= lim
.
∂t
2∆t
∆t→0+
(4.5)
Wenn ∆t sehr klein ist, dann gilt
f (S,t + ∆t) − f (S,t − ∆t)
∂f
≈
.
∂t
2∆t
(4.6)
f
zentral-symetrische
Vorwärts
Rückwärts
0
t − ∆t
t
t + ∆t
t
Abbildung 4.2: Vorwärts-, Rückwärts- und Zentral-Differenzen-Approximation, Quelle: [21,
S.137]
Abbildung 4.2 zeigt, die vorwärts-, rückwärts- und symmetrische Approximationen. Die
Steigungen der Linien stellen eine Approximiation an die Tangente dar (S,t). Dies wird
mit einem kleiner werdenden ∆t immer genauer.
Die patielle Ableitung S,
det.
z.B. da
oder
oder
∂f
∂S
und
∂2 f
∂S2
wird auch am Stelle der finiten Differenzen verwen-
f (S + ∆S,t) − f (S,t)
∂f
= lim
,
+
∂S ∆t→0
∆S
(4.7)
∂f
f (S,t) − f (S − ∆S,t)
= lim
,
+
∂S ∆t→0
∆S
(4.8)
∂f
f (S + ∆S,t) − f (S − ∆S,t)
= lim
,
+
∂S ∆t→0
2∆S
(4.9)
ergibt sich für die Vorwärts-Differenzen-Approximation folgendes:
∂f
f (S + ∆S,t) − f (S,t)
≈
.
∂S
∆S
(4.10)
4
Finite-Differenzen-Methode
35
für die Rückwärts-Differenzen-Approximation er gibt sich:
∂f
f (S,t) − f (S − ∆S,t)
≈
.
∂S
∆S
(4.11)
und für die symmetrische Approximation:
f (S + ∆S,t) − f (S − ∆S,t)
∂f
≈
.
∂S
2∆S
(4.12)
Um die zweite Ableitung des zu Grunde liegende Underlyings, wie beispielsweise
zu ermitteln, wird zunächst die Vorwärts-Differenzen-Approximation für
die Rückwärts-Differenzen-Approximation für
symmetrische Approximation.39
∂2 f
≈
∂S2
≈
∂2 f
∂S2
∂f
∂S
∂2 f
∂S2
und danach
verwendet. Folglich erhält men eine
∂f
∂f
∂S (S,t) − ∂S (S − ∆S,t)
∆S
f (S+∆S,t)− f (S,t)
∆S
−
f (S−∆S+∆S,t)− f (S−∆S,t)
∆S
(4.13)
∆S
f (S + ∆S,t) − 2 f (S,t) + f (S − ∆S,t)
≈
.
∆S2
2
Die Approximationsgleichungen von ∂∂tf , ∂∂Sf und ∂∂S2f werden in (2.8) eingesetzt und die Ergebnisse im Anschluss mittels der impliziten (Kap. 4.3) und expliziten (Kap. 4.4) FiniteDifferenzen-Methode interpretiert.
4.3
4.3.1
Die implizite Finite-Differenzen-Methode
Standard Option Bewertung
Es wird die Approximationsgleichung (4.2), (4.12) und (4.13) in (2.8) eingesetzt und man
erhält:
f (S,t + ∆t) − f (S,t)
f (S + ∆S,t) − f (S − ∆S,t)
+ rS ·
∆t
2∆S
1
f (S + ∆S,t) − 2 f (S,t) + f (S − ∆S,t)
(4.14)
+ σ2 · S 2 ·
2
2
∆S
=r f (S,t).
Da S = j · ∆S, t = i · ∆t und fi, j = f ( j · ∆S, i · ∆t), folgt:
f (S,t) = f ( j · ∆S, i · ∆t) = fi, j ,
f (S,t + ∆t) = f ( j · ∆S, i · ∆t + ∆t) = f ( j · ∆S, ( j + 1)∆t) = fi+1, j .
39 Vgl.[21,
S.138]
4
Finite-Differenzen-Methode
36
Gleichermaßen folgt:
f (S + ∆S,t) = fi, j+1 ,
f (S − ∆S,t) = fi, j−1 .
Es wird eine symmetrische Approximation verwendet:
fi, j+1 − fi, j−1
∂f
=
.
∂S
2∆S
Für
∂f
∂t
(4.15)
verwendet man eine vorwärts gerichtete Differenzenapproximation:
fi+1, j − fi, j
∂f
=
.
∂t
∆t
Die finite Differenzenapproximation für
∂2 f
∂S2
(4.16)
im Punkt (i, j) ist:
fi, j+1 + fi, j−1 − 2 fi, j
∂2 f
=
.
2
∂S
∆S2
(4.17)
Wenn die oben genannten drei Gleichungen in (4.14) eingesetzt werden, erhält man die
Differenzialgleichung:
fi, j+1 − fi, j−1
fi+1, j − fi, j
+ r( j · ∆S) ·
∆t
2∆S
f
−
2
fi, j + fi, j−1
1
i, j+1
+ · σ2 · ( j · ∆S)2 ·
2
(∆S)2
(4.18)
= r fi, j ,
für j = 1, 2, ..., M − 1 und i = 0, 1, ..., N − 1.
Durch die Umstellung der Gleichung (4.18) ergibt sich:
1
1
1
1
1
1
fi, j−1 ( r j − σ2 j2 ) + fi, j ( + σ2 j2 + r) + fi, j+1 (− r j − σ2 j2 ) = − fi+1, j . (4.19)
2
2
∆t
2
2
∆t
Zur Vereinfachung wird Folgendes in die Gleichung eingesetzt:
1
1
a j = r j∆t − σ2 j2 ∆t,
2
2
2 2
b j = 1 + σ j ∆t + r∆t,
1
1
c j = − r j∆t − σ2 j2 ∆t,
2
2
(4.20)
4
Finite-Differenzen-Methode
37
Als Ergebnis erhält man:
a j fi, j−1 + b j fi, j + c j fi, j+1 = fi+1, j .
(4.21)
Durch die implizite Methode ergibt sich die Gleichung (4.21), die drei verschiedene Werte
im Zeitpunkt i∆t fi, j−1 , fi, j , fi, j+1 und einen Wert im Zeitpunkt (i + 1)∆t als Lösung hat.
Die Abbildung 4.3 zeigt diese Beziehung.
St
fi,j+1
fi,j
fi+1,j
fi,j−1
t
0
Abbildung 4.3: Implizite Finite-Differenzen-Methode. Quelle: [6, S.511]
Die Ausdrücken für a j , b j und c j werden in der Gleichung (4.21) wie folgt interpretiert:40
1
1
r j∆t − σ2 j2 ∆t :
2
2
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
von j∆S auf ( j − 1)∆S fällt ,
1 + σ2 j2 ∆t + r∆t :
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
unverändert bleibt,
1
1
− r j∆t − σ2 j2 ∆t :
2
2
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
von j∆S auf ( j + 1)∆S steigt.
Die Summe der drei Wahrscheinlichkeiten ist gleich eins. In diesem Fall sind die Aktien
dividendenlos. In dem Zeitraum ∆t, ist der erwartete Zuwachs des Aktienkurses r j∆S∆t.
Für ∆t ergibt sich die Varianz des Aktienkurses in Abhängigkeit des Zeitraums ∆t mit
σ2 j2 ∆S2 ∆t. Diese Werte entsprechen einen stochastischen Prozess für S. Der Wert von
f zum Zeitpunkt i∆t wird in einer risikoneutralen Welt als Erwartungswert von f zum
Zeitpunkt (i + 1)∆t diskontiert und mit dem risikolosen Zinssatz berechnet.41
40 Vgl.[6,
41 Vgl.
S.513]
[6, S.514]
4
Finite-Differenzen-Methode
38
Wenn eine europäische Option bewertet werden soll, kann die Gleichung (4.21) erweitert
werden mit folgenden Randbedingungen.
für eine Put-Option
fi,M = 0,
i = 0, 1, ..., N, j = M,
fi,0 = Ke−r(T −t) ,
(4.22)
i = 0, 1, ..., N, j = 0.
für ein Call-Option
fi,M = Smax ,
fi,0 = 0,
i = 0, 1, ..., N, j = M,
(4.23)
i = 0, 1, ..., N, j = 0.
Es wird definiert für i = N − 1, N − 2, ..., 0, j = 1, 2, ..., M − 1, und setzt man diese wieder
in die Gleichung (4.21) ein


a1 fi,0 + b1 fi,1 + c1 fi,2 = fi+1,1 ,




 a2 fi,2 + b2 fi,2 + c2 fi,2 = fi+1,2 ,
(4.24)
..


.




aM−1 fi,M−1 + bM−1 fi,M−1 + cM−1 fi,M−1 = fi+1,M−1 .
dies wird nun transferiert in die folgende Matrix:

 

fi,0
a1 b1 c1
fi+1,1


 

a2 b2 c2
  fi,1   fi+1,2 

 .   . 

..
  ..  =  ..  .

.


 



 

a j−1 b j−1 c j−1
  fi, j   fi+1, j−1 

aj
bj cj
fi, j+1
fi+1, j
|
{z
} | {z } |
{z
}

Bekannt
Unbekannt
Bekannt
Die Werte in Fälligkeit T sind bekannt, d.h. die Werte von a j , b j , c j und die Matrix
( fi+1,1 , ..., fi+1, j )T sind auch bekannt. Hingegen ist die Matrix ( fi,0 , ... fi, j+1 )T unbekannt.
Um die Werte von fi auszurechnen, muss die Martix wie folgt transformiert werden,


 
 

fi,1
fi+1,1
a1 fi,1
b1 c1



 
 
 a2 b2 c2
  fi,2   fi+1,2   0 

 .   .   . 
..

  ..  =  ..  −  .. 
.



 
 


 
 

a j−1 b j−1 c j−1   fi, j−1   fi+1, j−1   0 

aj
bj
fi, j
fi+1, j
c j fi, j+1
4
Finite-Differenzen-Methode
39
Durch erhält man:
−1 

b1 c1
fi+1,1 − a1 fi,1

 
 

fi+1,2

  a2 b2 c 2
 

 
 


.
.

=
 

..
..

 
 


 
 

a j−1 b j−1 c j−1  
fi+1, j−1
 fi, j−1  

fi, j
aj
bj
fi+1, j − c j fi, j+1

fi,1
fi,2
..
.


fi = M−1 fi+1 .
Hier ist M die Matrix von a j , b j und c j . Wenn man die Werte von fi, j berechnen möcht,
muss man die inverse Matrix von abc berechnen. Daraus ergeben sich die impliziten Lösungen.
Für eine amerikanische Put Option ist der Wert:
f (S,t) > max{K − S(t), 0}.
Für eine amerikanische Call Option ist der Wert:
f (S,t) > max{S(t) − K, 0}.
Wenn die folgende Voraussetzung erfüllt ist, ist es möglich, die Put Option vor die Ausübungszeitpunkt auszuüben,
fi j = max[ fi j , K − j∆S].
Für die Call Option :
fi j = max[ fi j , j∆S − K].
Im folgenden wird zu Veranschaulichung ein Beispiel durchgeführt.
Beispiel 4.1. Angenommen wird eine fünfmonatige Verkaufsoption auf eine dividendenlose Aktie mit einem Aktienkurs von 50 Euro, einem Basispreis von 50 Euro, einem
risikolosen Zinssatz von 10% per annum und einer Volatilität von 40% per annum . Der
maximale Optionspreis liegt bei 100 Euro. Für M, N und ∆S werden die Werte von 20,
10 und 5 gewählt. Der Optionspreis wird in Intervalle zu jeweils 5 Euro in [0, 100Euro]
aufgeteilt. Daraus ergibt sich N = 20. Die Optionslaufzeit von fünf Monaten (T = 5/12)
wird in halbmonatige Intervalle aufgegliedert.
Es wird eine amerikanische Verkaufsoption und eine europäische Verkaufsoption betrachtet und deren Berechnung mittels der impliziten Finite-Differenzen-Methode.
Der amerikanische Optionspreis beträgt, wie im Gitter angegeben, 4, 07 Euro (siehe Tabelle 2). Der Wert der europäischen Option wird mit 3, 91 Euro angegeben.42
Unter den gleichen Voraussetzungen liegt der Preis einer amerikanischen Verkaufsoption
oberhalb des Preises einer europäischen Verkaufsoption. Da die amerikanische Option zu
42 Vgl.
Beispiel 17.10. [6, S.509]
4
Finite-Differenzen-Methode
40
jeder Zeit gekauft und verkauft werden kann, im gegensatz zu europäische Option. Daraus ergibt sich ein höherer Preis für die amerikanische Option gegenüber der europäische
Option. Weil man bei der amerikanische Option mehr Chancen hat diese auszuüben, gibt
es mehr Chancen eine Gewinnen zu erzielen. Deshalb muss der Anleger mehr für eine
amerikanische Option bezahlen.
Um den Optionspreis zu bestimmen, wird das Programm MATLAB verwendet.
Dabei geht das MATLAB Programm wie folgt vor:
1. Berechnung der Parameter von ∆S (Y-Achse) erfolgt, indem Smax durch M dividiert
wird, und ∆t indem T durch N dividiert wird. So erhält man die Punkte von 1 bis
M − 1. Simultan gilt das Gleiche für die Punkte 1 bis N − 1 (X-Achse).
2. Erstellen der Parameter von a j , b j und c j .
3. Erstellen der Matrix M.
4. Definieren der Randbedingung. Der Wert ∆S ist in jedem Zeitpunkt ∆t bekannt.
fi,M = 0,
i = 0, 1, ..., N, j = M,
fi,0 = 50,
i = 0, 1, ..., N, j = 0.
5. Wenn fi+1 und Matrix M bekannt sind, dann kann man fi = M−1 fi+1 durch den
Wert von fi berechnen.
Für eine amerikanische Option:
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
put(i, :) = max(K - [0:ds:Smax], put(i,:));
end
Für eine europäische Option:
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
end
Durch die Funktion ”BSEAput (EuroAmerica,Smax, T, M, N, K, r, sigma) ” ist es möglich, dem Wert eine amerikanischen Option und eine europäischen Option zu bestimmt.
(Code siehe Anhang Code B.10.)
4
Finite-Differenzen-Methode
41
Es kann eine Unterscheidung des Optionstyps vorgenommen werden, in dem bei der Variable EuroAmerica entweder eine 1 (amerikanischen Option) oder eine 0 (europäischen
Option) eingetragen wird.
Angenommen es gelt der risikolose Zinssatz r = 0.1 und die Volatilität σ = 0.4.
Dann kann durch den MATLAB Befehl ”BSEAput(1,100,5/12,20,10,50,0.1,0.4)” (Code
B.10) der amerikanische Optionswert ermittelt werden.
In dem Tabelle steht T für die Restlaufzeit und S für den Aktienpreis. Amer. steht hier für
die amerikanische Option und Euro. für die europäische Option.
Amer.
T
S
100.00
95.00
90.00
85.00
80.00
75.00
70.00
65.00
60.00
55.00
50.00
45.00
40.00
35.00
30.00
25.00
20.00
15.00
10.00
5.00
0
5.00
0
0.02
0.05
0.09
0.16
0.27
0.47
0.82
1.42
2.43
4.07
6.58
10.15
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
4.50
0
0.02
0.04
0.07
0.12
0.22
0.39
0.71
1.27
2.24
3.88
6.44
10.10
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
4.00
0
0.01
0.03
0.05
0.09
0.17
0.32
0.60
1.11
2.05
3.67
6.29
10.05
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
3.50
0
0.01
0.02
0.03
0.07
0.13
0.25
0.49
0.95
1.83
3.45
6.13
10.01
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
3.00
0
0.00
0.01
0.02
0.04
0.09
0.18
0.38
0.78
1.61
3.19
5.96
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
2.50
0
0.00
0.01
0.01
0.03
0.06
0.13
0.28
0.62
1.36
2.91
5.77
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
2.00
0
0.00
0.00
0.01
0.02
0.03
0.08
0.19
0.45
1.09
2.57
5.57
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
1.50
0
0.00
0.00
0.00
0.01
0.02
0.04
0.11
0.30
0.81
2.17
5.36
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
1.00
0
0.00
0.00
0.00
0.00
0.01
0.02
0.05
0.16
0.51
1.66
5.17
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
0.50
0
0.00
0.00
0.00
0.00
0.00
0.00
0.02
0.05
0.22
0.99
5.02
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
0
0
0
0
0
0
0
0
0
0
0
0
5.00
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
Tabelle 2: Bewertung der amerikanischen Option mit der impliziten FDM. Quelle: eigene Berechnung
Anhand der Tabelle 2 und Tabelle 3 lässt sich erkennen, dass für den gleichen Ausübungspreis und Ausübungszeitpunkt, der Wert der amerikanische Option größer als der Wert der
europäische Option. Da die amerikanische Option mehr Chancen zur Ausübung besitzt.
Ct ≥ ct ,
Pt ≥ pt .
4
Finite-Differenzen-Methode
Euro.
T
S
100.00
95.00
90.00
85.00
80.00
75.00
70.00
65.00
60.00
55.00
50.00
45.00
40.00
35.00
30.00
25.00
20.00
15.00
10.00
5.00
0
5.00
0
0.02
0.05
0.09
0.15
0.27
0.46
0.80
1.38
2.35
3.91
6.27
9.51
13.55
18.14
23.00
27.97
32.96
37.96
42.98
50.00
4.50
0
0.02
0.04
0.07
0.12
0.22
0.39
0.69
1.24
2.18
3.74
6.16
9.50
13.64
18.30
23.19
28.17
33.16
38.16
43.17
50.00
4.00
0
0.01
0.03
0.05
0.09
0.17
0.31
0.59
1.09
2.00
3.56
6.04
9.50
13.75
18.46
23.38
28.37
33.36
38.36
43.37
50.00
42
3.50
0
0.01
0.02
0.03
0.07
0.13
0.25
0.48
0.93
1.80
3.35
5.91
9.50
13.86
18.63
23.58
28.57
33.57
38.57
43.57
50.00
3.00
0
0.00
0.01
0.02
0.04
0.09
0.18
0.37
0.77
1.58
3.12
5.77
9.51
13.98
18.81
23.78
28.77
33.77
38.77
43.77
50.00
2.50
0
0.00
0.01
0.01
0.03
0.06
0.13
0.28
0.61
1.34
2.86
5.62
9.52
14.11
19.00
23.98
28.97
33.97
38.97
43.98
50.00
2.00
0
0.00
0.00
0.01
0.02
0.03
0.08
0.19
0.45
1.08
2.54
5.46
9.56
14.26
19.19
24.18
29.18
34.18
39.18
44.18
50.00
1.50
0
0.00
0.00
0.00
0.01
0.02
0.04
0.11
0.30
0.80
2.15
5.30
9.62
14.43
19.39
24.38
29.38
34.38
39.38
44.38
50.00
1.00
0
0.00
0.00
0.00
0.00
0.01
0.02
0.05
0.16
0.51
1.66
5.14
9.70
14.61
19.59
24.59
29.59
34.59
39.59
44.59
50.00
0.50
0
0.00
0.00
0.00
0.00
0.00
0.00
0.02
0.05
0.22
0.99
5.02
9.83
14.80
19.79
24.79
29.79
34.79
39.79
44.79
50.00
0
0
0
0
0
0
0
0
0
0
0
0
5.00
10.00
15.00
20.00
25.00
30.00
35.00
40.00
45.00
50.00
Tabelle 3: Bewertung der europäischen Option mit der impliziten FDM. Quelle: eigene Berechnung
Im folgenden wird der europäischen Optionswert ermittelt. Es bleiben alle Werte unverändert. Außer M und N, diese verändern sich auf 200 und 100. Dadurch entsteht eine
feinere Gitternetzstruktur.
Die Befehle sind:
>> A=BSEAPut(0,100,5/12,200,100,50,0.1,0.4)
>> A(1,101)
ans =
4.0686
Der durch die Black-Scholes-Formel gegebene Preis der europäischen Option ist (Code
siehe Anhang B.6):
>>EuroOptionPricingBS(0,50,50,5/12,0.1,0.4)
ans =
4.0760
Je feiner die Unterteilung bei FDM ist, umso näher liegen die Preise, der durch die BlackScholes-Fomel und FDM berechnet wurden zusammen.
4
Finite-Differenzen-Methode
43
Abbildung 4.4: Europäische Verkaufsoptionsbewertung durch implizite Finite-DifferenzenMethode für M = 20 und N = 10. Quelle: eigene Darstellung.
Die Abbildung 4.5 zeigt graphische, die Verfeinerung der FDM .
Abbildung 4.5: Europäische Verkaufsoptionsbewertung mittels impliziter Finite-DifferenzenMethode für M = 200 und N = 100. Quelle: eigene Darstellung.
Im nächtsten Abschnitt wird die Berechnung von Barrier Option mit Hilfe der implizite
Finite-Differenzen-Methode vorgenommen.
4.3.2
Implizite Finite-Differenzen-Methode für Barrier Optionsbewertung
Wenn die Barrier Option bewertet werden soll, muss man die Barrier Option samt der
Randbedingung berücksichtigen.
Betrachtet wird eine Down-and-out Put Option mit der Barriere H < S0 . T ist das Verfallszeitpunkt. In dem Gitter wird die t-Achse in N ∈ N Zeitintervalle unterteilt,
0, ∆t, 2∆t, ..., N∆t = T.
wobei ∆t = NT .
4
Finite-Differenzen-Methode
44
Sei ∆S ein Intervall in S/M, wobei M die Intervallgröße ist. Es wird das Gitter wie folgt
aufgeteilt:
H, H + ∆S, H + 2∆S, ..., H + M∆S.
Der Einfachheit halber wird angenommen, dass
fi, j = f (i∆t, H + j∆S)
für i = 0, 1, 2, ..., N, und j = 0, 1, ..., M gilt.
Das Gitter kann leicht verändert werden, so dass die Barriere auf dem Gitter liegt. Das
bedeutet, die Barriere durchläuft eine horizontale Schicht von Knoten im Falle einer zeitkontinuierlichen Barrier Option und befindet sich auf halbem Weg zwischen zwei horizontalen Schichten von Knoten im Falle einer zeitdiskreten Barrier Option. Der Optionspreis an jedem Knoten in dem Gitter kann durch die Implementierung eines implizite
Methode bestimmt werden.
Für eine Down Option, ist die Barrier als die Untergrenze im Gitter festgelegt, d.h. Smin =
H (Abbildung 4.6). Da der Optionspreis gleich Null ist, wenn der Aktienkurs die Barrier
erreicht.
Für eine Up Barrier Option stellt die Barrier die Obergrenze im Gitter dar. Das bedeutet,
in dem Fall ist Smax = H.
St
Smax
H + j∆S
H + 2∆S
H + ∆S
Barrier
H
∆t 2∆t
i∆t
T
t
Abbildung 4.6: Gitterstruktur einer Down Barrier Option
4
Finite-Differenzen-Methode
45
Beispiel 4.2. Beispiel für die Bewertung einer Down-and-out Barrier Put Option mit der
impliziten Differenzen Methode. Es wird eine fünfmonatige Verkaufsoption auf eine dividendenlose Aktie mit einem Aktienkurs von 50 Euro und einem Basispreis von 50 Euro,
sowie einem risikolosen Zinssatz von 10% per annum und einer Volatilität von 40% per
annum betrachtet. Der maximale Optionspreis liegt bei 100 Euro und die Barrier bei 40
Euro. Für ∆S wurde ein Wert von 0.5 gewählt. Das Zeitintervallen wird durch 1/120 bestimmt.
(S0 = 50, K = 50, r = 0.1, σ = 0.4, H = 40, SMax = 100, ∆S = 0.5, T = 5/12 und
∆t = 1/120)
Die Randbedingung für diese Down-and-out Barrier Put Option ist:
fi,M = 0,
fi,0 = K − S,
i = 0, 1, ..., N, j = M,
i = 0, 1, ..., N, j = H.
Der Berechnungsprozess erfolgt mit folgendem Code (siehe Anhang Code B.13):43
1. Berechnen der Parameter von (Smax − H), ∆t und ∆S.
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
2. Erstellung eines Gitters mit den unterschiedlichen Niveaus S. Durch ∆S und ∆t
ergibt sich M und N, M = 120 und N = 50.
3. Mit Hilfe von MATLAB wird eine (N + 1) × (M + 1) Null Matrix erzeugt.
matVal=zeros(M+1,N+1).
4. Das Ergebnis der Funktion linspace(H, SMax , M + 1) ist ein Vektor, dabei ist H der
Anfangswert, Smax ist der Endwert, und M + 1 die Anzahl der Elemente im Vektor.
Dies Funktion wird verwendet um die in Punkt 3 erstellt Null Matrix zu berechnen.
5. Erzeugung der Randbedingung und Berechnung der Parameter von a j , b j und c j .
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
43 Code
Vgl.[2, S.484]
4
Finite-Differenzen-Methode
46
6. Erstellung der Matrix M von a j , b j und c j mit den Befehlen:
M1 = diag(a(3:M),-1)+diag(b(2:M)) + diag(c(2:M-1),1).


b1 c1


 a2 b2 c2



.


..
M=



a j−1 b j−1 c j−1 

aj
bj
7. Berechnung des Optionspreises mit der Formel fi = fi+1 M0 .
price = interp1(vetS,matVal(:,1),SO)
Daraus ergibt sich folgendes Ergebnis:
% BarrierDOPut_Imp(SO,K,r,T,sigma,H,Smax,dS,dt)
>> BarrierDOPut_Imp(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
ans =
0.5748
Abbildung 4.7: Down-and-out Put Barrier Option mittels der Implizite-Differenzen- Methode.
Quelle: eigene Darstellung.
Nun wird das Ergebnis verglichen mit dem Ergebnis der Berechnung durch das BlackScholes-Modell, wie im Beispiel 3.2 durchgeführt. Hierbei ergab sich ein Wert von 0.5424.
Durch die Monte Carlo Simulation ergab sich ein Wert von 0.5677 (Code siehe Anhang
B.17).
Unter Verwendung der Formel (3.1) und dem in Beispiel 4.1 bestimmten Wert für eine
Vanilla Put Option, ergibt sich eine Wert für Down-and-in Barrier Put Option pdi von
pdi = 3, 91 − 0, 5748 = 3, 3352.
4
Finite-Differenzen-Methode
47
Beispiel 4.3. In diese Beispiel wurde dieselbe Werte wie im Beispiel 5.2 verwendet, um
eine amerikanische Down-and-out Put Barrier Option zu bestimmen.(Code B.18) Man
kann erkennen, dass der amerikanische Optionspreis (3.7294) wesentlich höher als der
europäischen Optionspreis (0.5748) ist (Vgl. Beispiel 5.1).
%function price = BarrierDOPut_Exp(SO,K,r,T,sigma,H,Smax,dS,dt)
Amer_BarrierDOPut_Imp(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
ans =
3.7294
Abbildung 4.8: Amerikanische Down-and-out Put Barrier Option mittels der ImpliziteDifferenzen- Methode. Quelle: eigene Darstellung.
4.4
4.4.1
Die explizite Finite-Differenzen-Methode
Standard Option Bewertung
Bei der impliziten Finite-Differenzen-Methode muss man M − 1 simultane Gleichungen
lösen, um alle fi, j aus den fi+1, j zu berechnen. Die explizite Finite-Differenzen-Methode
2
nimmt zur Vereinfachung an, dass in dem Gitter die Werte für ∂∂Sf und ∂∂S2f am Punkt
(i, j) gleich den Werten am Punkt (i + 1, j) entsprechen.44 Folglich ergibt sich aus den
Gleichungen (4.15) und (4.17):
44 Vgl.
[6, S.509]
fi+1, j+1 − fi+1, j−1
∂f
=
,
∂S
2∆S
(4.25)
fi+1, j+1 + fi+1, j−1 − 2 fi+1, j
∂2 f
=
.
2
∂S
∆S2
(4.26)
4
Finite-Differenzen-Methode
48
Die Differenzialgleichung stellt sich wie folgt dar.
fi+1, j+1 − fi+1, j−1
fi+1, j − fi, j
+ r( j · ∆S) ·
∆t
2∆S
f
−
2
fi+1, j + fi+1, j−1
1 2
i+1,
j+1
+ · σ · ( j · ∆S)2 ·
2
(∆S)2
(4.27)
= r fi, j ,
oder
wobei
fi, j = a∗j fi+1, j−1 + b∗j fi+1, j + c∗j fi+1, j+1 ,
(4.28)
1
1
1 2 2
=
− r j∆t + σ j ∆t ,
1 + r∆t
2
2
1
b∗j =
(1 − σ2 j2 ∆t),
1 + r∆t 1 2 2
1
1
∗
r j∆t + σ j ∆t .
cj =
1 + r∆t 2
2
(4.29)
a∗j
Dies wird als explizite Finite-Differenzen-Methode bezeichnet. Die Gleichung der expliziten Finite-Differenzen Methode (4.28) beschreibt einen Zusammenhang zwischen einem Optionswert zur Zeit i∆t ( fi, j ) und drei verschiedenen Optionswerten im Zeitpunkt
(i + 1)∆t (d.h. fi+1, j−1 , fi+1, j , fi+1, j+1 ).
St
fi+1,j+1
fi,j
fi+1,j
fi+1,j−1
0
t
Abbildung 4.9: Explizite Finite-Differenzen-Methode. Quelle: Vgl. [6, S.511]
4
Finite-Differenzen-Methode
49
Für die a∗j , b∗j und c∗j in Gleichung (4.28) kann man die Terme wie folgt interpretieren:45
1
1
− r j∆t + σ2 j2 ∆t :
2
2
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
von j∆S auf ( j − 1)∆S fällt ,
1 − σ2 j2 ∆t :
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
unverändert bleibt,
1
1
r j∆t + σ2 j2 ∆t :
2
2
Wahrscheinlichkeit, dass der Aktienkurs in der Zeit ∆t
von j∆S auf ( j + 1)∆S steigt.
1 2 2
1
2 rj∆t + 2 σ j ∆t
fij
1 − σ 2 j 2 ∆t
− 12 rj∆t + 12 σ 2 j 2 ∆t
fi+1,j+1
fi+1,j
fi+1,j−1
Abbildung 4.10: Explizite Finite-Differenzen-Methode als Trinomialbaum. Quelle: [6, S.514]
In Abbildung (4.10) wird die Beziehung zwischen den Wahrscheinlichkeiten gezeigt. Die
Summe der drei Wahrscheinlichkeiten ist eins.
Damit die explizite Finite-Differenzen-Methode gut anwendbar ist, müssen alle diese
Wahrscheinlichkeiten
1
1
− r j∆t + σ2 j2 ∆t,
2
2
1 − σ2 j2 ∆t,
1
1
r j∆t + σ2 j2 ∆t,
2
2
positiv sein.46
Ergibt sich i = N − 1, j = 0, ...M − 1, in Gleichung (4.28) einsetzen, folgt


a∗1 fi+1,0 + b1 fi+1,1 + c1 fi+1,2 = fi,1 ,




 a∗2 fi+1,1 + b2 fi+1,2 + c2 fi+1,3 = fi,2 ,
..


.



 ∗
aM−1 fi+1,M−2 + bM−1 fi+1,M−1 + cM−1 fi+1,M = fi,M−1 .
45 Vgl.[6,
46 [6,
S.513]
S.514]
(4.30)
4
Finite-Differenzen-Methode
50
Es wird die Berechnungen in die folgende Matrix übertragen:

b∗1 c∗1
 ∗ ∗
c∗2
a2 b2

...



a∗M−2 b∗M−2 c∗M−2

a∗M−1 b∗M−1
|
{z
Bekannt




fi,1 − a∗1 fi+1,0
fi,2
..
.

fi+1,1




 


  fi+1,2  
.
=

..

 

.


 
fi,M−2



fi+1,M−1
∗
fi,M−1 − cM−1 fi+1,M
|
{z
}
|
{z
}
} Bekannt
Unbekannt
Durch die Matrix von abc und die Matrix von fi+1, j−1 , fi+1, j und fi+1, j+1 kann man den
Preis in Punkt fi, j direkt errechnen. Die Lösung ist somit offensichtlich. Das heißt, der
Wert in Punkt fi+1, j wird direkt mit den drei Parametern a, b, c multipliziert, dann ergibt
sich der Wert fi, j . Dies ist die explizite Lösung.
Es folgt ein Beispiel für die Bewertung einer Verkaufsoption. Die Randbedingung für
diese Verkaufsoption sei:
max[(K − j∆S), 0],
fi,M−1 = 0.
Beispiel 4.4. Es werden dieselben Werte angenommen wie im Beispiel 4.2.
Durch das MATLAB Programm
BSEAput_Explicit(EuroAmerica,Smax, T, M, N, K, r, sigma)
>> BSEAPut_Explicit (1,100,5/12,20,10,50,0.1,0.4)
lässt sich der Preis der amerikanische und europäische Verkaufsoption errechnen (Code
siehe Anhang Code B.11).
Der Berechnungsprozess innerhalb des MATLAB Programms stellt sich wie folgt dar:
1. Berechnung des Parameters von ∆S und ∆t.
∆S wird bestimmt in dem Smax durch M geteilt wird. ∆t wird bestimmt in dem T
durch N teilt.
ds = Smax / M;
dt = T / N;
2. Erzeugung der Parameter von a j , b j und c j .
a = (-.5*r*dt*J + .5*sigma^2*dt*J.^2)/(1+r*dt);
b = (1 - sigma^2*dt*J.^2)/(1+r*dt);
c = (.5*r*dt*J + .5*sigma^2*dt*J.^2)/(1+r*dt);
4
Finite-Differenzen-Methode
51
3. Erstellung der Matrix M.
A = diag(a(2:M-1), -1) + diag(b) + diag(c(1:M-2), 1);
4. Definition der Randbedingung. Der Wert ∆S zu jedem Zeitpunkt ∆t ist bekannt.
put = zeros(N+1, M+1);
put(N+1, :) = max(K - [0:ds:Smax], 0);
put(:, 1) = K; put(:, M+1) = 0;
5. Sind fi+1 und die Matrix M bekannt, so kann fi durch fi = fi+1 M0 berechnet werden.
F\"ur ein americalische Option
for i = N:-1:1
y = zeros(1, M-1);
y(1) = a(1)*put(i+1, 1); y(M-1) = c(M-1)*put(i+1,M+1);
put(i, 2:M) = put(i+1, 2:M) * A’ + y;
put(i, :) = max(K - [0:ds:Smax], put(i,:));
end
Durch den vorher beschriebenen Ablauf ergibt sich der Wert der amerikanischen Verkaufsoption von 4.2568 (siehe Tabelle 4).
Für die europäische Verkaufsoption ist der Wert 4.0399 (siehe Tabelle 5).
Amer.
T
S
100.00
95.00
90.00
85.00
80.00
75.00
70.00
65.00
60.00
55.00
50.00
45.00
40.00
35.00
30.00
25.00
20.00
15.00
10.00
5.00
0.00
5.00
0
0.0576
-0.1067
0.2824
-0.1341
0.4550
0.3241
0.9136
1.4787
2.5872
4.2568
6.7557
10.2770
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
4.50
0
0
0.0497
-0.0475
0.2046
0.0635
0.4574
0.6766
1.3670
2.3922
4.0818
6.6134
10.2013
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
4.00
0
0
0
0.0479
-0.0036
0.1957
0.2288
0.6342
1.1650
2.2105
3.8859
6.4659
10.1279
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
3.50
0
0
0
0
0.0518
0.0403
0.2452
0.4444
1.0227
1.9878
3.6789
6.3097
10.0620
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
3.00
0
0
0
0
0
0.0635
0.1004
0.3744
0.8101
1.7703
3.4398
6.1460
10.0122
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
2.50
0
0
0
0
0
0
0.0887
0.2051
0.6519
1.5028
3.1788
5.9592
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
2.00
0
0
0
0
0
0
0
0.1426
0.4178
1.2436
2.8668
5.7474
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
1.50
0
0
0
0
0
0
0
0
0.2671
0.8986
2.5266
5.4984
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
1.00
0
0
0
0
0
0
0
0
0
0.5895
2.0725
5.2400
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
0.50
0
0
0
0
0
0
0
0
0
0
1.5560
5.0000
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
0
0
0
0
0
0
0
0
0
0
0
0
5.0000
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
Tabelle 4: Bewertung der amerikanische Option mit der expliziten FDM. Quelle: eigene Berechnung
4
Finite-Differenzen-Methode
Euro.
T
S
100.00
95.00
90.00
85.00
80.00
75.00
70.00
65.00
60.00
55.00
50.00
45.00
40.00
35.00
30.00
25.00
20.00
15.00
15.00
5.00
0.00
5.00
0
0.0576
-0.1088
0.2849
-0.1429
0.4540
0.3051
0.8860
1.4180
2.4727
4.0399
6.3487
9.5007
13.4783
18.0738
22.9764
27.9643
32.9636
37.9639
42.9748
50.0000
4.50
0
0
0.0497
-0.0495
0.2054
0.0555
0.4496
0.6510
1.3179
2.2911
3.8859
6.2401
9.4834
13.5659
18.2379
23.1705
28.1638
33.1635
38.1637
43.1725
50.0000
4.00
0
0
0
0.0479
-0.0057
0.1948
0.2192
0.6180
1.1237
2.1240
3.7092
6.1229
9.4667
13.6628
18.4100
23.3674
28.3642
33.3642
38.3643
43.3712
50.0000
52
3.50
0
0
0
0
0.0518
0.0377
0.2421
0.4305
0.9924
1.9149
3.5214
5.9926
9.4526
13.7713
18.5902
23.5669
28.5657
33.5657
38.5658
43.5710
50.0000
3.00
0
0
0
0
0
0.0635
0.0968
0.3676
0.7863
1.7130
3.3030
5.8508
9.4427
13.8942
18.7784
23.7683
28.7680
33.7680
38.7681
43.7718
50.0000
2.50
0
0
0
0
0
0
0.0887
0.1992
0.6377
1.4583
3.0661
5.6905
9.4415
14.0345
18.9739
23.9712
28.9712
33.9712
38.9713
43.9738
50.0000
2.00
0
0
0
0
0
0
0
0.1426
0.4067
1.2134
2.7769
5.5152
9.4543
14.1959
19.1753
24.1753
29.1753
34.1753
39.1753
44.1768
50.0000
1.50
0
0
0
0
0
0
0
0
0.2671
0.8742
2.4594
5.3089
9.4963
14.3802
19.3802
24.3802
29.3802
34.3802
39.3802
44.3809
50.0000
1.00
0
0
0
0
0
0
0
0
0
0.5895
2.0080
5.0930
9.5859
14.5859
19.5859
24.5859
29.5859
34.5859
39.5859
44.5862
50.0000
0.50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1.5560
0
4.7925
5.0000
9.7925 10.0000
14.7925 15.0000
19.7925 20.0000
24.7925 25.0000
29.7925 30.0000
34.7925 35.0000
39.7925 40.0000
44.7925 45.0000
50.0000 50.0000
Tabelle 5: Bewertung der europäische Option mit der explizite FDM. Quelle: eigene Berechnung
Der durch die Black-Scholes-Formel gegebene Preis der europäischen Option ist (Code
siehe Anhang B.6):
% EuroOptionPricingMCBSModel(CallPut,S0,T,r,sigma,K,n)
>> EuroOptionPricingBS(0,50,50,5/12,0.1,0.4)
ans =
4.0760
Es wird versucht mit eine kleiner Intervall den Preis im expliziten Modell, dem exakten
Preis der durch das BS Modell ermittelt wurde anzupassen.
Abbildung 4.11: Europäische Verkaufsoptionsbewertung
Methode. Quelle: eigene Berechnung.
mit
explizite
Finite-Differenzen-
4
Finite-Differenzen-Methode
53
Für eine europäische Verkaufsoption wird daher in dem nächsten Beispiel für M und N
die Werte von 50, 100 gewählt, die anderen Werte bleiben gleich.
Der Befehl zur Berechnung lautet:
% BSEAput_Explicit(EuroAmerica,Smax, T, M, N, K, r, sigma)
>> A=BSEAPut_Explicit(1,100,5/12,50,100,50,0.1,0.4)
>> A(1,51)
ans =
0
Die Verkleinerung des Intervall im explizite FDM für dazu, dass die Lösung instabil wird.
Daher kann bei explizite FDM keine Annäherung an die exakt Lösung des im BlackScholes-Modell berechneten Preises erzielt werden.
Die Abbildung 4.12 zeigt, dass diese Berechnung zu einer unzulässigen Lösung führt.
Abbildung 4.12: Instabilitätsproblem der expliziten Methode. Quelle: eigene Berechnung.
Bemerkung 4.5. Normalerweise sollen beide Seiten in Gleichung (2.8) für den Zeitpunkt
(i, j) berechnet werden. In der Gleichung (4.28) verschiebt sich der Zeitpunkt von der linken Seite innerhalb des Gitters nach rechts, d.h. es wird nun der Punkt (i + 1, j) berechnet.
Danach wird (i + 1, j) zum Ursprungspunkt zurück verschoben:
fi, j − fi−1, j
fi, j+1 − fi, j−1
+ r( j · ∆S) ·
∆t
2∆S
f
−
2
fi, j + fi, j−1
1 2
i,
j+1
+ · σ · ( j · ∆S)2 ·
2
(∆S)2
= r fi, j ,
(4.31)
4
Finite-Differenzen-Methode
54
oder
fi−1, j = ā∗j fi, j−1 + b̄∗j fi, j + c̄∗j fi, j+1 ,
(4.32)
wobei
1
ā∗j = ∆t σ2 j2 − r j = −a j ,
2
∗
b̄ j = 1 − ∆t(σ2 j2 + r) = 2 − b j ,
1
c̄∗j = ∆t σ2 j2 + r j = −c j .
2
für i = 1, ..., N, j = 1, ..., M − 1.
dann ergibt sich
fi−1, j = −a j fi, j−1 + (2 − b j ) fi, j − c j fi, j+1 .
(4.33)
Wird das Intervall ∆S bei Verwendung der expliziten Finiten-Differenzen-Methode in
noch kleinere Intervalle aufgeteilt, so ist diese Methode instabil.
Das Problem der Stabilität bei Verwendung der expliziten Finiten-Differenzen-Methode
wird im nächsten Abschnitt näher erläutert.
4.4.2
Explizite Finite-Differenzen-Methode für Barrier Option Bewertung
Die explizite Finite-Differenzen-Methode stellt in vergleich zur implizite Finite Differenzen Methode eine einfacheren Weg zur Analyse der Bewertung einer Barrier Option dar.
Da das Gitter auf einfache Art und Weise manipuliert werden kann, um die Rahmenbedingungen zu erfüllen. 47
Zur Barrier Optionsbewertung mittels der expliziten Methode muss die Barrier zunächst
in ein Gitter eingebettet werden. Es wird eine Down-and-out Barrier Put Option betrachtet. Das dazugehörige Gitter, findet sich in Abbildung 4.6.
Die Randbedingung für diese Down-and-out Put Barrier Option ist:
fi,M = 0,
fi,0 = K − S,
i = 0, 1, ..., N, j = M,
i = 0, 1, ..., N, j = H.
Als explizite Gleichung wird die Gleichung (4.32) verwendet.
fi−1, j = ā∗j fi, j−1 + b̄∗j fi, j + c̄∗j fi, j+1 ,
wobei
47 Vgl.[1,
1
ā∗j = ∆t σ2 j2 − r j = −a j ,
2
∗
b̄ j = 1 − ∆t(σ2 j2 + r) = 2 − b j ,
1
c̄∗j = ∆t σ2 j2 + r j = −c j .
2
S.18].
4
Finite-Differenzen-Methode
55
Der Berechnungsprozess wird in dem folgenden Schritten im MATLAB Code wie folgt
bearbeitet: (siehe Anhang Code B.14.48 )
1. Berechnung der Parameter von (Smax − H), ∆t und ∆S.
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
2. Erstellen des Gitters mit unterschiedlichen Niveaus S. Durch ∆S und ∆t ergibt sich
M und N.
3. Mit Hilfe von MATLAB wird eine (N + 1) × (M + 1) Null Matrix erzeugt.
matVal=zeros(M+1,N+1).
4. Funktion linspace(H, Smax , M + 1) ergibt einen Vektor, dabei ist H der Anfangswert, und Smax der Endwert, M + 1 ist die Anzahl der Elemente im Vektor.
5. Erstellung der Randbedingung und Berechnung der Parameter von ā∗j , b̄∗j und c̄∗j .
In der folgenden MATLAB Funktion wird ā∗j durch A , b̄∗j durch B und c̄∗j durch C
ersetzt.
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
6. Erstellung der Matrix M von ā∗j , b̄∗j und c̄∗j mit dem Befehl:
M1 = diag(A(3:M),-1)+diag(B(2:M)) + diag(C(2:M-1),1).
7. Berechnung der Barrier Option mit der Formel fi = M ∗ fi+1 :
matVal(2:M,i)=M1*matVal(2:M,i+1);
Beispiel 4.6. Es gelten die gleichen Voraussetzungen, wie im Beispiel 4.2. mit S0 = 50,
K = 50, r = 0.1, σ = 0.4, H = 40, Smax = 100, ∆S = 0.5, T = 5/12.
Angenommen, dass ∆t = 1/120 ist, so lautet das Ergebnis wie folgt:
>> BarrierDOPut_Exp(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
ans =
-8.3102e+068
48 In
[2, 479] wird die Vanilla Option bewertet. Hier wird ebenfalls die Randbedingung der Barrier Option
berücksichtigt, um die Option korrekt bewerten zu können.
4
Finite-Differenzen-Methode
56
Dieses Ergebnis ist unzulässig. Deshalb wird ein andere Wert für ∆t versucht . Es wird
hierfür ∆t mit ∆t = 1/12000 ersetzt. Dadurch ergibt sich folgendes Ergebnis:
>> BarrierDOPut_Exp(50,50,0.1,5/12,0.4,40,100,0.5,1/12000)
ans =
0.5413
Dieses Ergebnis zeigt, dass die Berechnung mit der expliziten Methode eine Instabilität
aufweist bei einer zu groben Aufteilung. Ist ∆t nicht hinreichend klein gewählt, so kann
die Lösung unzulässig sein.
Um eine zulässige Lösung zu erhalten, muss ∆t in einen bestimmten Bereich liegen.
Die Barrier Option allerdings kann durch den modifizierten expliziten Finiten-Differenzen
Ansatz bewertet werden, um das Stabilitätsproblem zu beseitigen.
Das Stabilitätsproblem entsteht, da man mit einer Rechenarithmetik mit endlicher Genauigkeit versucht, die Differenzialgleichung zu lösen. Dies führt zu Rundungsfehlen in der
numerischen Lösung der Gleichung (4.32). Wenn diese Rundungsfehler nicht bei jeder
Iteration vergrößert werden, so ist die Lösung stabil. Wenn der Rundungsfehler in der
Größenordnung bei jeder Iteration des Lösungsverfahren wächst, zeitgt sich die instabilität.49
4.4.3
Modifizierter expliziter finiter Differenzen Ansatz zur Barrier Optionsbewertung
Im Folgenden wird der modifizierte explizite finite Differenzen Ansatz verwendent, der
von Yisong (Sam) Tian [1] bereits eingeführt wurde. Wie in Kapitel 2 gezeigt, lasst sich
der Optionspreis f durch folgende partiellen Differentialgleichung (2.8) bestimmen:
∂ f 1 ∂2 f 2 2
∂f
+ rS +
σ St = r f .
∂t
∂S 2 ∂S2
Hierbei ist r der risikolose Zinssatz, σ ist die Volatilität.
49 Vgl.[20,
S.284].
4
Finite-Differenzen-Methode
57
Es wird die Gleichung transformiert durch
y(t) = ln S(t).
Dann gilt für
∂f
∂S
und
∂2 f
:
∂S2
∂f
∂ f ∂y ∂ f 1
=
·
=
· ,
∂S
∂y ∂S ∂y S
1 ∂2 f ∂y ∂ f
1
∂2 f
∂ ∂f 1
=
·
= · 2· +
− 2
∂S2 ∂S ∂y S
S ∂S ∂S ∂y
S
2
1 ∂ f
1 ∂f
= 2· 2− 2· .
S ∂y
S ∂y
Setzt man diese beiden Gleichungen in die Gleichung (2.8) ein, so lautet diese wie folgt:
σ2 ∂ f 1 2 ∂ 2 f
∂f
+ r−
+ σ
= r f.
∂t
2 ∂y 2 ∂S2
(4.34)
Zum Zeitpunkt 0 ist der Basispreis S0 :
y0 = ln S0 .
Betrachtet man eine Down-and-out Call Option mit dem Barrier H < S0 und T dem Fälligkeitszeitpunkt. Es wird das Gitter auf der t-Achse in N ∈ N Zeitintervalle unterteilt,
0, ∆t, 2∆t, ..., N∆t = T.
wobei ∆t = NT ist.
Sei ∆y ein Intervall in y/M so ist M die Intervallgröße. Die Intervallgröße muss auf der
y-Achse so verteilt werden, damit die Barrier, H = ln H, immer auf dem Gitter liegt.
Das Gitter wird wie folgt unterteilt:
H, H + ∆y, H + 2∆y, ..., H + M∆y.
Der Einfachheit halber wird angenommen, dass
fi, j = f (i∆t, H + j∆y)
für i = 0, 1, 2, ..., N, und j = 0, 1, ..., M gilt.
Approximieren der Differentialgleichung von f in Gitterpunkt (i∆t, H + j∆y),
fi+1, j − fi, j
∂f
=
,
∂t
∆t
fi+1, j+1 − fi+1, j+1
∂f
=
,
∂y
2∆y
fi+1, j+1 + fi+1, j−1 − 2 fi+1, j
∂2 f
=
,
∂y2
∆y2
(4.35)
4
Finite-Differenzen-Methode
58
Beim Einsetzen der obigen Gleichung in die Gleichung (4.34), ergibt sich die folgende
rekursive Gleichung:
fi, j =
1
(pd fi+1, j−1 + p0 fi+1, j + pu fi+1, j+1 ),
1 + r∆t
mit
(4.36)
σ2 ∆t q̃∆t
+
,
2∆y2 2∆y
σ2 ∆t
p0 = 1 −
,
∆y2
σ2 ∆t q̃∆t
pd =
−
,
2∆y2 2∆y
pu =
2
und q̃ = r − σ2 .
Es wird ein Gitter so gewählt, dass
√
∆y = λσ ∆t,
wobei λ eine Konstante ist. Um die Stabilität sicherzustellen, muss λ ≥ 1 sein. Für den λ
√
Wert λ = 1.5 ergeben sich für die Wahrscheinlichkeiten folgende Gleichungen, wobei
die schnellste Konvergenz im Preis inbegriffen ist.50
√
1
q̃ ∆t
pu = 2 +
,
2λ
2λσ
1
p0 = 1 − 2 ,
λ √
1
q̃ ∆t
pd = 2 −
.
2λ
2λσ
(4.37)
Eine hinreichende Bedingung für Konvergenz ist, dass pu , p0 und pd nicht negativ für
hinreichende kleines ∆t sein müssen. Und
pu + p0 + pd = 1.
Es wird die rekursive Gleichung (4.36) unter dieser Bedingung,
f (N, j) = max{eH+ j∆y − K, 0}
für j = 0, 1, ..., M verwendet.
50 Vgl.
[1, S.23-24]
4
Finite-Differenzen-Methode
59
Die Randbedingung lautet
f (i, 0) = 0,
für
i = 0, 1, 2, ..., N,
f (N, 0) = 0,
als N → ∞.
Der Wert der Barrier Option kann rekursiv bestimmt werden.
Beispiel 4.7. Es gelten die gleichen Voraussetzungen wie in Beispiel 4.2, mit den Werten
S0 = 50, K = 50, r = 0.1, σ = 0.4, H = 40, SMax = 100, ∆S = 0.5, T = 5/12.
Der Berechnungsprozess wird in dem folgenden Schritten in MATLAB Code durchgeführt: (siehe Anhang Code B.15).
√
1. Es wird λ = 1.5 angenommen, weil diese Zahl die schnellste im Preis inbegriffene Konvergenz ist.
2. Berechnet werden die Parameter von dy , ln Smax − H und ln ∆t:
dy = lambda*sigma*sqrt(dt);
M = round((log(Smax)-log(H))/dy) ;
3. Mit Hilfe von MATLAB wird eine (N + 1) × (M + 1) Null Matrix erzeugt.
F = zeros(M+1,N+1);
4. Die Funktion linspace(log(H), log(Smax), M + 1)0 ergibt einen Vektor. Dabei ist
ln H der Anfangswert, ln Smax der Endwert und M + 1 die Anzahl der Elemente im
Vektor.
5. Erstellung der Randbedingungen:
F(: ,N+1) = max(K-exp(vety),0);
F(1,:) =0;
F(M+1,:) =0;
6. Erzeugung der Parameter von q̃, pu , p0 und pd :
q=r-sigma^2/2;
pu = 1/(2*lambda^2) + q*sqrt(dt)/(2*lambda*sigma);
po = 1-1/(lambda^2);
pd = 1/(2*lambda^2) - q*sqrt(dt)/(2*lambda*sigma);
4
Finite-Differenzen-Methode
60
7. Erstellung der Matrix:
F(j,i)=(pd*F(j-1,i+1)+po*F(j,i+1)+pu*F(j+1,i+1))/(1+r*dt);
8. Berechnung der Barrier Option:
price = interp1(vety,F(:,1),log(SO));
Wenn ∆t = 1/120 ist, so lauten die Ergebnisse wie folgt:
% BarrierDOPut_ModExp(SO,K,r,T,sigma,H,Smax,dt)
>> BarrierDOPut_ModExp(50,50,0.1,5/12,0.4,40,100,1/120)
ans =
0.4941
Für ∆ mit ∆t = 1/1200 und ∆t = 1/12000 ergibt sich:
>> BarrierDOPut_ModExp(50,50,0.1,5/12,0.4,40,100,1/1200)
ans =
0.5441
>> BarrierDOPut_ModExp(50,50,0.1,5/12,0.4,40,100,1/12000)
ans =
0.5428
Die Abbildung 4.13 zeigt den Kurzvesverlauf mit ∆t = 1/120.
Abbildung 4.13: Down-and-out Put Barrier Option mit modifizierter expliziter Differenzen Methode. Quelle: eigene Berechnung.
Im nächsten Kapitel wird die Crank-Nicolson-Methode vorgestellt.
4
Finite-Differenzen-Methode
4.5
Crank-Nicolson-Methode
4.5.1
Standard Option Bewertung
61
Das Crank-Nicolson-Schema ist ein Durchschnitt aus expliziter und impliziter FiniteDifferenzen-Methode. Der Vorteil dieser Methode ist, dass sie schneller konvergiert als
die explizite oder die implizite Methode.51
Die Differenzengleichung (2.8) lautet:
∂ f 1 ∂2 f 2 2
∂f
+ rS +
σ St = r f .
∂t
∂S 2 ∂S2
In Punkt (i, j) wird die explizite Methode verwendet. Für
Differenzenapproximation:
r fi, j =
∂f
∂t
gilt eine rückwärts gerichtete
fi, j+1 − fi, j−1 1 2
fi, j+1 − 2 fi, j + fi, j−1
fi, j − fi−1, j
+ r( j∆S) ·
+ · σ ( j∆S)2 ·
,
∆t
2∆S
2
(∆S)2
oder
r fi, j =
fi, j − fi−1, j 1
1
+ r j( fi, j+1 − fi, j−1 ) + σ2 j2 ( fi, j+1 − 2 fi, j + fi, j−1 ).
∆t
2
2
In Punkt (i − 1, j) kommt die implizite Methode zum Einsatz. Für
gerichtete Differenzenapproximation verwendet:
r fi−1, j =
∂f
∂t
(4.38)
wird eine vorwärts
fi−1, j+1 − fi−1, j−1
fi, j − fi−1, j
+ r( j∆S)
∆t
2∆S
f
−
2
f
1 2
i−1, j+1
i−1, j + f i−1, j−1
+ σ ( j∆S)2 ·
,
2
(∆S)2
oder
r fi−1, j =
fi, j − fi−1, j 1
+ r j( fi−1, j+1 − fi−1, j−1 )
∆t
2
1 2 2
+ σ j ( fi−1, j+1 − 2 fi−1, j + fi−1, j−1 ).
2
(4.39)
Im Durchschnitt erhält man für die explizite und implizite Finite-Differenzen Methode:
1
1
r fi, j + r fi−1, j
2
2
fi, j − fi−1, j 1
=
+ r j( fi, j+1 − fi, j−1 + fi−1, j+1 − fi−1, j−1 )
∆t
4
1 2 2
+ σ j ( fi, j+1 − 2 fi, j + fi, j−1 + fi−1, j+1 − 2 fi−1, j + fi−1, j−1 ),
4
51 [6,
S.515]
(4.40)
4
Finite-Differenzen-Methode
62
Die Gleichung kann wie folgt transformiert werden:
1
1
1
∆t(σ2 j2 − r j) fi, j−1 + (1 − ∆t(σ2 j2 + r)) fi, j + ∆t(σ2 j2 + r j) fi, j+1
4
2
4
1
1
1
= ∆t(r j − σ2 j2 ) fi−1, j−1 + (1 + ∆t(σ2 j2 + r)) fi−1, j + (− )∆t(σ2 j2 + r j) fi, j+1 .
4
2
4
(4.41)
Die Gleichung lässt sich zusammenfassen:
α j fi, j−1 + (1 + β j ) fi, j + γ j fi, j+1 = −α j fi−1, j−1 + (1 − β j ) fi−1, j − γ j fi−1, j+1 ,
(4.42)
wobei
1
α j = ∆t(σ2 j2 − r j),
4
1
(4.43)
β j = − ∆t(σ2 j2 + r),
2
1
γ j = ∆t(σ2 j2 + r j).
4
Die konkret Berechnung nach Cranke-Noclson erfolgt nun. Dabei gilt für die explizite
Methode die folgende Gleichung (4.33)
fi−1, j = −a j fi, j−1 + (2 − b j ) fi, j − c j fi, j+1 .
Für die implizite Methode ergibt sich die Gleichung (4.21), in der i durch i − 1 ersetzt
wird:
fi, j = a j fi−1, j−1 + b j fi−1, j + c j fi−1, j+1 .
Nach der Crank-Nicolson Methode werden diese beiden Gleichungen gemittelt:
fi−1, j + a j fi−1, j−1 + b j fi−1, j + c j fi−1, j+1 = fi, j − a j fi, j−1 + (2 − b j ) fi, j − c j fi, j+1 ,
dann wird die Gleichung umgestellt und α j , β j und γ j in die Gleichung eingesetzt:
α j fi, j−1 + (1 + β j ) fi, j + γ j fi, j+1 = −α j fi−1, j−1 + (1 − β j ) fi−1, j − γ j fi−1, j+1 .
(4.44)
Es wird eine Put Option betrachtet. Für die Randbedingung gilt:
fi,M = 0,
i = 0, 1, ..., N, j = M,
fi,0 = Ke−r(T −t) ,
i = 0, 1, ..., N, j = 0.
(4.45)
4
Finite-Differenzen-Methode
63
Die Gleichung wird in eine Matrix transformiert:52
M1 f j−1 = M2 f j ,
wobei

1 − β1 −γ1

−γ2
 −α2 1 − β2

.
...
...
..
M1 = 


−αM−2 1 − βM−2 −γM−2

−αM−1 1 − βM−1

1 + β1
γ1

1 + β2
γ2
 α2

.
.
..
..
..
M2 = 
.


αM−2 1 + βM−2
γM−2

αM−1
1 + βM−1
(4.46)
















f j = [ f1 j , f2 j , ..., fM−1, j ]T .
Beispiel 4.8. Es wird der Optionswert einer Put Option mit Hilfe Crank-Nicolson-Methode
bestimmt. Es gelten die gleichen Voraussetzungen, wie in Beispiel (4.1). Der dazugehörige Code findet sich im Anhang B.12.53 Daraus ergibt sich ein Preis von 3.9816 (siehe
Tabelle 6).
% BSPut_CN(SO,K,r,T,sigma,Smax,M,N)
>> BSPut_CN(50,50,0.1,5/12,0.4,100,20,10)
ans =
3.9816
Der durch die Black-Scholes-Formel gegebene Preis der europäischen Put Option ist
4.0760. (Code siehe Anhang B.6).
Mit der Finite-Differenzen-Methode kann die Werte der Funktion fi j approximiert werden. Wenn man das Intervall ∆S nicht exakt unterteilt, befindet sich der Punkt fi j nicht
auf dem Gitter. In der Simulation kann man dieses Problem durch den Befehl Interp1
(Interploation) lösen. Diese wird im folgenden näher erläutert.
Beispielsweise wenn Smax = 100 und ∆S = 15, dann ist Si−1 = 3∆S = 45 und Si+1 =
4∆S = 60. Si = 50 liegt somit nicht in dem Gitter. Um den Wert in Punkt fi , zu berechnen,
wird wie folgt vorgegangen (in MATLAB:price = interp1(VetS, maval(:, 1), 50)):
fi =
52 [2,
S.486]
Vgl.[2, S.487]
53 Code
Si − Si−1
× ( fi+1 − fi−1 ).
Si+1 − Si
4
Finite-Differenzen-Methode
64
CN
Zeit/Preis
100.00
95.00
90.00
85.00
80.00
75.00
70.00
65.00
60.00
55.00
50.00
45.00
40.00
35.00
30.00
25.00
20.00
15.00
10.00
5.00
0.00
5.00
0
0.0162
0.0386
0.0750
0.1388
0.2526
0.4550
0.8091
1.4137
2.4110
3.9816
6.3090
9.5040
13.5131
18.1029
22.9843
27.9619
32.9579
37.9348
42.3791
50.0000
4.50
0
0.0110
0.0268
0.0541
0.1045
0.1990
0.3749
0.6964
1.2675
2.2423
3.8197
6.2000
9.4908
13.6042
18.2652
23.1762
28.1612
33.1585
38.1394
42.6335
50.0000
4.00
0
0.0069
0.0173
0.0366
0.0744
0.1496
0.2976
0.5826
1.1139
2.0596
3.6416
6.0811
9.4797
13.7043
18.4345
23.3711
28.3616
33.3599
38.3445
42.8896
50.0000
3.50
0
0.0039
0.0102
0.0227
0.0492
0.1056
0.2245
0.4689
0.9528
1.8607
3.4440
5.9509
9.4725
13.8153
18.6109
23.5687
28.5631
33.5621
38.5501
43.1474
50.0000
3.00
0
0.0019
0.0053
0.0126
0.0294
0.0684
0.1578
0.3575
0.7846
1.6429
3.2222
5.8080
9.4720
13.9391
18.7944
23.7686
28.7657
33.7651
38.7561
43.4069
50.0000
2.50
0
0.0008
0.0023
0.0060
0.0153
0.0392
0.1001
0.2515
0.6108
1.4024
2.9693
5.6506
9.4824
14.0775
18.9845
23.9705
28.9692
33.9689
38.9625
43.6680
50.0000
2.00
0
0.0003
0.0008
0.0023
0.0066
0.0188
0.0543
0.1561
0.4347
1.1347
2.6741
5.4778
9.5101
14.2324
19.1805
24.1741
29.1736
34.1734
39.1693
43.9309
50.0000
1.50
0
0.0001
0.0002
0.0007
0.0021
0.0069
0.0230
0.0784
0.2643
0.8352
2.3166
5.2910
9.5648
14.4045
19.3813
24.3790
29.3789
34.3788
39.3764
44.1955
50.0000
1.00
0
0.0000
0.0000
0.0001
0.0005
0.0017
0.0066
0.0272
0.1170
0.5029
1.8551
5.1012
9.6595
14.5928
19.5856
24.5851
29.5851
34.5850
39.5840
44.4619
50.0000
0.50
0
0.0000
0.0000
0.0000
0.0000
0.0002
0.0009
0.0046
0.0260
0.1645
1.1862
4.9518
9.8073
14.7933
19.7922
24.7921
29.7921
34.7921
39.7918
44.7301
50.0000
0
0
0
0
0
0
0
0
0
0
0
0
5.0000
10.0000
15.0000
20.0000
25.0000
30.0000
35.0000
40.0000
45.0000
50.0000
Tabelle 6: Bewertung der europäischen Option mit der Crank-Nicolson-Methode. Quelle: eigene
Berechnung
Für die Simulation der Crank-Nicolson-Methode wurde die LU-Zerlegung
(LUdecomposition) verwendet.
Erklährung der LU-Zerlegung
In der linearen Algebra ist die LU-Zerlegung eine Matrix Zerlegung, die eine Matrix
aus dem Produkt einer unteren Dreiecksmatrix und einer oberen Dreiecksmatrix besteht.
Diese Zerlegung wird bei der numerischen Analyse verwendet, um lineare Gleichungssysteme zu lösen oder die Berechnung der Determinante einer Matrix zu erwirken.
Wenn A eine quadratische Matrix ist, dann ist eine LU-Zerlegung die Zerlegung der Form
A = LU,
wobei L die untere Dreiecksmatrix und U die obere Dreiecksmatrix.
Die Idee für die Lösung der ursprünglichen Matrixgleichung ist in der folgenden Form zu
finden54 :

 


a11 a12 · · · a1n
1 0 ··· 0
u11 u12 · · · u1n

 


a21 a22 · · · a2n  l21 1 · · · 0   0 u22 · · · u2n 
 .
= .
 .

..
..
..
 .


. ···
. · · ·
. ···
 .
  ..
  ..

an1 an2 · · · ann
54 Vgl.[20,
S.299]
ln1 ln2 · · ·
1
0
0
· · · unn
4
Finite-Differenzen-Methode
65
Die Matrix M1 ist eine tridiagonale Matrix. In der LU Form ergibt sich:

1 − β1 −γ1

−γ2
 −α2 1 − β2

.
...
...
..
M1 = 


−αM−2 1 − βM−2 −γM−2

−αM−1 1 − βM−1

1
0
0
···

l1


= 0

 ..
.
1
0
...
..
.
...
l2
0 ···
0
···
ln−1
zi = (−γi ),
ui = (1 − βi ) −
li =









0
u1 z1 0
···
0

.. 
.. 

.
. 
  0 u2 z2 · · ·



.
.
.
.
0 0
.
.
.
0
0


..
  ..

0  .
. un−1 zn−1 
1
0 ··· 0
0
un
wobei
u1 = 1 − β1 ,

(−γi−1 )(−αi−1 )
,
ui−1
−αi
.
ui
Aus der Gleichung (4.46) ergibt sich:
M1 f j−1 = M2 f j .
Mit MATLAB kann diese Matrix zerleget werden (siehe Anhang Code B.12).
In MATLAB kann durch die Befehl [L,U] = lu(M1) die Matrix M1 zerlegt werden. Daraus ergibt sich M1 = LU:
f j−1 = M1−1 M2 f j = U −1 · L−1 · M2 f j .
Die Befehle in MATLAB lauten: f j−1 = U \ (L \ (M2 ∗ f j )).
In nächsen Abschnitt wird eine Down-and-out Put Barrier Option betrachtet.
4.5.2
Bewertung einer Barrier Option mit der Crank-Nicolson Methode
Betrachtet wird eine Down-and-out Put Barrier Option. Der Bereich wird zwischen H 6
S 6 Smax betrachtet; die Randbedingung ist:55
f (Smax ,t) = 0,
f (H,t) = 0.
Beispiel 4.9. In diesem Beispiel wird eine vergleich zwischen Black-Scholes-Modell und
Crank-Nicolson-Methode vorgenommen. Dazu wird ein Down-and-out Put Option betrachtet.
55 Vgl.
[2, S.485]
4
Finite-Differenzen-Methode
66
Die Barrier liegt bei H = 40, Aktienkurs S ist S = 50, Ausübungspreis K = 50, Zinssatz
r = 0.1, T = 5/12 und 01686502 = 0.4.
Es wird das Ergebnis mit dem Ergebnis der Berechnung mittels Black-Scholes-Modell
verglichen, aus dem Beispiel 3.2. Dort ergab sich ein Ergebnis unter den gleichen Voraussetzungen von 0.5424.
Die Bewertung mit der Crank-Nicolson-Methode wird wie folgt durchgeführt. (Code siehe Anhang Code B.16).56
1. Berechnung der Parameter Smax , ∆t, H und ∆S,
2. Erstellung des Gitters mit den unterschiedlichen Niveaus von S,
3. Definieren der Randbedingung,
4. Erstellen der Parameter von α, β, γ,
5. Anwendung der LU-Zerlegung zur Errechnung der Matrix A,
6. Berechnung der Matrix,
7. Als Resultat ergibt sich der Optionspreis von t = 0 bis T für jedes Niveau St .
% BarrierDOPut_CN(SO,K,r,T,sigma,H,Smax,dS,dt)
>> BarrierDOPut_CN(50,50,0.1,5/12,0.4,40,100,0.5,1/200)
ans =
0.5413
Abbildung 4.14: Down-and-out Verkaufsoption mit Crank-Nicolson-Methode. Quelle: eigene
Darstellung.
Die Berechnung mit Hilfe der Crank-Nicolson-Methode konvergiert schneller gegen das
korrekt Ergebnis (Preis im Black-Scholes-Modell) als die explizite oder implizite Methode und liefert darüber hinaus auch stabile Ergebnisse.
56 Code
Vgl.[2, S.487]
4
Finite-Differenzen-Methode
67
Zum Vergleiche wird das Ergebnis der Monte-Carlo-Simulation verwendet:57
>> BarrierOption_MC_DO(0,50,50,0.1,0.4,40,5/12,10000,10000)
ans =
0.5305
Das Ergebnis der Crank-Nicolson-Methode liegt näher am korrekten Ergebnis als das
Ergebnis der Monte-Carlo-Simulation.
57 Code
siehe Anhang Code B.17
5
5
5.1
Sensitivitäten von Optionspreisen
68
Sensitivitäten von Optionspreisen
Sensitivitätskennzahlen
In diesem Kapitel werden die Sensitivitätskennzahlen erläutert. Hierbei spielen die Sensitivitätskennzahlen von Optionspreisen eine zentrale Rolle. Diese werden auch als Greeks
bezeichnet. Die Greeks sind Preissensitivitäten, die dem Risiko eines derivativen Finanzinstruments quantifizieren. Die am weitesten verbreitete Kennzahlen sind Delta, Gamma,
T heta, Vega und Rho.58
Die Sensitivitätskennzahlen messen die Dimension des Risikos in einer Optionsposition.59
Zum Beispiel, misst Delta die absolute Veränderung des Optionspreises in Bezug auf
eine kleine Variation im Basiswert. Delta ist die Sensitivität erster Ordnung in Bezug
auf den Basiswert. Gamma bezeichnet die Sensitivität zweiter Ordnung in Bezug auf den
Basiswert. T heta ist definiert als die Sensitivität in Abhängigkeit von der Zeit t.
Die Optionspreise sind an den Finanzmärkten bekannt, die Sensitivität jedoch nicht. Deshalb ist es wichtig, die Sensitivität genau zu berechnen. Für die Berechnungsformeln vergleich Hull [6, Kapitel 15] und Jüngel [5, Kapitel 4].
Für die Risiko- und Renditenbewertung von Kaufoptionen und von allen anderen Derivaten existieren folgende Kennzahlen.
∂f
,
∂S
2
∂ f
∂∆
Gamma: Γ = 2 =
,
∂S
∂S
∂f
Theta:
Θ= ,
∂t
∂f
Vega:
Vega =
,
∂σ
∂f
Rho:
Rho = ,
∂r
Delta:
∆=
wobei f eine Call- oder Put-Option und S der Aktienpreis.
Delta ist die prozentuale Veränderung des Preises eines Derivats bei einer Veränderung
des Kurses des Basiswerts.60
Unter der Annahme des Black-Scholes-Modell erfüllt der Optionswert f (S,t) einer europäischen Option die Black-Scholes Gleichung aus 2.8. Daraus ergibt sich der folgenden
Zusammenhang zwischen den Kennzahlen:
1
Θ + σ2 S2 Γ + rS∆ = r f .
2
58 Vgl.[3,
S.123]
S.418]
60 Vgl.[6, S.421]
59 Vgl.[6,
(5.1)
5
Sensitivitäten von Optionspreisen
69
Aus der Gleichung (2.15) ergibt sich folgendes: 61
∆ = N(d1 ) > 0,
√
Γ = n(d1 )/Sσ T − t,
√
√
Θ = −S T − tn(d1 )/2 T − t − rKe−r(T −t) N(d2 ),
√
Vega = S T − tn(d1 ),
Rho = (T − t)Ke−r(T −t) N(d2 ).
d12
Wobei n(d1 ) = √12π e− 2 . Der Beweis für die Aussage ∆ = N(d1 ) > 0 wird in Anhang
gezeigt. (Siehr Anhang Beweis A)
Die Abbildung 5.1 zeigt, die Verlauf der Sensitivität. Die Abbildung wurde mit einem
MATLAB-Programm erzeugt (Code siehe Anhang B.20).62
Abbildung 5.1: Sensitivitätskennzahlen für t = 0 (punktierte Linie), t = 5/4(durchgezogene Linie)
und t = 10/4 (dicke Linie), jeweils mit K = 50, T = 5/12, r = 0.1 und σ = 0.4.
Quelle: eigene Darstellung
61 Siehe
62 Code
[5, S.74]. In der Gleichung (2.15) wird angenommen, dass t = 0. Hier ist mit t ∈ [0, T ).
vergleiche [5, S.75]
5
Sensitivitäten von Optionspreisen
70
Eine Veranschaulichung der Sensitivitätkernzahl und wie sich eine Sensitivitätsveränderrung auswirkt, wird in dem folgende Beispiel gezeigt.
Beispiel 5.1. Angenommen wird eine fünfmonatige Call Option auf eine dividendenlose
Aktie mit einem Aktienkurs von 50 Euro, einem Basispreis von 50 Euro, einem risikolosen Zinssatz von 10% per annum und einer Volatilität von 40% per annum . Der maximale
Optionspreis liegt bei 100 Euro.
Mit dem MATLAB Programm können die Kernzahle für Delta, Gamma, Theta, Vega und
Rho berechnet werden.
[Delta Gamma Theta Vega Rho]
= Greek_Euro_Call_Option(K,S0,T,t,r,sigma)
[Delta Gamma Theta Vega Rho]
=Greek_Euro_Call_Option(50,50,5/12,0,0.1,0.4)
Somit erhält man folgende Ergebnisse (Code sieht Anhang B.22):
Delta = 0.6143, Gamma = 0.0296, T heta = −8.3848, Vega = 12.3493 und Rho = 10.2488.
∆ = 0.6143 bedeutet, dass bei einer Änderung des Aktienpreises um eine Einheit, dass
sich der Optionspreis um 61.43% verändert. ∆ = 0 wird als deltaneutral bezeichnet. 63
Gamma = 0.0296 bedeutet, dass bei einer Änderung des Aktienpreises um eine Einheit,
dass sich der Delta um 0.0296 verändert.
T heta = −8.3848 bedeutet, wenn sich der Zeitraum verändert, der Optionspreis um
0.083848 sinkt. T heta ist negativ, das bedeutet, je näher man den Ausübundszeitpunkt
kommt, umso billiger wird der Optionspreis.
Wenn ∆ = 0, dann ist die Gleichung (5.1) wird wie folgt:
1
Θ + σ2 S 2 Γ = r f .
2
(5.2)
Wenn T heta negativ ist , dann ist Gamma positiv.
Wenn der absoluter Wert von Vega groß ist, dann hat die Volatiliät einen groß einfluß auf
den Optionspreis. Vega = 12.3493 bedeutet, wenn die Volatiliät sich um 1% verändert,
dann steigt der Optionspreis auf 0.123493.
Rho = 10.2488 bedeutet, wenn die risikolos Zinssatz sich um auf 1% verändert, dann
steigt der Optionspreis auf 0.102488.
Die Beziehung des Deltas von einem Call und einem Put stellt sich wie folgt dar:64
∆ p = ∆c − 1
63 Vgl.
64 [3,
[6, S.422]
S.125]
5
Sensitivitäten von Optionspreisen
71
Delta der Barrier Option
Da in diese Arbeit Barrier Option untersucht werden, wird in diesem Beispiel 5.2 näher
auf den Wert Delta in eine Down-and-in Call Barrier Option eingegangen. (Der Beweis
für die folgende Gleichung siehe Anhang A):
∆cdi
−2r2 +1 "
2 2 #
1 − σ2r2
H
S σ
H
H2
=
cvanilla
,t − 2 N d1
,t
.
H
S
S
S
S
Beispiel 5.2. Für die Berechnung des Wertes von Delta bei einer Down-and-in Call Barrier Option werden dieselben Voraussetzungen wie im Beispiel 4.2. mit S0 = 50, K = 50,
r = 0.1, σ = 0.4, H = 40 angenommen. (Code siehe Anhang B.21).
% funktion Delta = Greek_Euro_Call_DIBarrierOption(K,S0,H,T,t,r,sigma)
>>Greek_Euro_Call_DIBarrierOption(50,50,40,5/12,0,0.1,0.4)
ans=
-0.0467
Je größer Delta ist, desto größer ist die Veränderung des Werte des Call bei einen steigende
oder fallende Aktienkurs. Das bedeutet, dass man weniger zahlen muss, jedoch einen
größeren Profit erzielen kann. Der Anleger kann sehr schnell nach Kurssteigerungen (im
Falle von Call) oder Kurssenkungen (im Falle von Put) profitieren, weil bei diesen mit
Hebel gearbeitet wird. Je mehr Gewinn möglich ist, desto großer ist auch das Risiko.
In folgenden Kapitel wird die Sensitivitätsanalyse mit der Differenzen-Methode erläutert.
5.2
Sensitivitätsanalyse der Differenzen-Methode
Mit der Finite-Differenzen-Methode lässt sich nur Annährungsweise der Wert einer Option bestimmen, daher müssen die Sensitivitätismaße approximiert werden. 65
fi j − fi−1, j
,
∆t
fi, j+1 − fi, j−1
∆i j ∼
,
2∆S
fi, j+1 − 2 fi j + fi, j−1
Γi j ∼
(∆S)2
fi, j+1 − fi, j−1
Rhoi j ∼
k
Θi j ∼
wobei k 6
65 Vgl.
1
.66
σ2 j2 +r
[4, Kapiel 12.6]
[4, S.142]
66 Siehe
5
Sensitivitäten von Optionspreisen
72
Die Methode zur Berechnung von Sensitivitätsmaßen ähnelt dem Baumverfahren. Daraus er gibt sich, dass Delta, Gamma und Theta direkt durch den Punkt fi, j des Gitters
berechnet werden. Zur Ermittlung von Vega ist es erforderlich, eine kleine Änderung der
Volatilität vorzunehmen und den Wert des Derivates unter Verwendung desselben Gitters
neu zu berechnen.67
Beispiel 5.3. In diesen Beispiel wird gezeigt, wie man Delta mit der Finite-DifferenzenMethode errechnet. Es gelten die gleiche Daten wie im Bespiel 4.1. Es handelt sich hierbei
um eine Put Option. Es gilt:
∆ p (S,t) =
∂p p(S + ∆S,t) − p(S − ∆S,t)
≈
∂S
2∆S
In der Tabelle 3 kann man die Optionswert an der Stelle bei T = 5 und S = 55 ablesen. Der
Optionswert liegt bei 2.35. Wenn S = 45 liegt der Optionswert bei 6.27. Um den Delta
des Optionswerts für S = 50 zu bestimmen, kann wie folgt vorgegangen werden:
∆ p (50, 0) =
2.35 − 6.27
≈ −0.3940.
2×5
Der Wert Delta einer Call Option beträgt ∆c (50, 0) = 1 − 0.3940 = 0.6160.
Durch folgende Berechnung mittels des MATLAB Programms wird ein Wert in höhe von
−0.3916 für das Delta der Put Option bestimmt (Code siehe Anhang CodeB.23): Mit
dem Befehl mesh(Delta) wird die Abbildung 5.2 erzeugt, Diese Abbildung 5.2 zeigt die
Beziehung zwischen Delta und dem Basiswert an.
Abbildung 5.2: Das Delta mit folgende Annahme: K = 50, T = 5/12, r = 0.1 und σ = 0.4. Quelle:
eigene Darstellung
67 [6,
S.516]
6
6
Fazit
73
Fazit
Im Zentrum dieser Arbeit wurde ein Vergleich zwischen der Optionsbewertung mittels
der Black-Scholes- und der Finiten-Differenzen-Methode durchgeführt.
Das Black-Scholes-Modell ist sehr gut zur Bewertung von europäischen Optionen geeignet. Die Finite-Differenzen-Methode hingegen kann zur Bewertung von amerikanischen
und europäischen Optionen verwendet werden.
Im Anschluss wurden die grundlegenden mathematischen Annahmen der Optionsbewertung vorgestellt. Darauf aufbauend wurde das Black-Scholes-Modell thematisiert und der
Prozess der Bewertung von Optionen vorgestellt.
Des Weiteren wurden die Eigenschaften der Barrier Option erläutert. Zusätzlich wurden
die Formeln und Funktionen zur Bestimmung des Wertes einer Barrier Optionen dargestellt und darauf basierend, mit Hilfe von MATLAB, eigene Berechnungen durchgeführt.
Unter Berücksichtigung dieser Ergebnisse konnte in Kapitel 4 ein direkter Vergleich zwischen der Berechnung des Optionspreises mit der Finiten-Differenzen-Methode und der
Black-Scholes-Modell vorgenommen werden.
Als nächstes wurde die Finite-Differenzen-Methode vorgestellt. Diese Methode lässt sich
in die implizite, explizite und die Crank-Nicolson-Methode unterteilen. Für jede dieser
Methoden wurde eine europäischen und amerikanische Standard Optionen berechnet.
Dies wurde auch Beispielhaft bei der implizite Methode für europäische Barrier Optionen
und amerikanische Barrier Optionen durchgeführt. Dadurch zeigt sich, im Vergleich zur
Black-Scholes Gleichung die Vorteilhaftigkeit, da die Black-Scholes Gleichung nur zur
Analyse von europäischen Option eingesetzt wird.
Im Vergleich der drei Methode zeigt sich, dass die implizite Finite-Differenzen-Methode
stabile Ergebnisse liefert, aber kompliziert in der Anwendung ist. Mit der expliziten FiniteDifferenzen-Methode lässt sich schnell und relativ einfach rechnen, aber das Ergebnis ist
instabil, weil es bei diesem Verfahren Rundungsfehler gibt. Um das Stabilitätsproblem
zu beseitigen, wird eine modifizierter expliziter Finite-Differenzen-Methode vorgestellt.
Nach der Modifizierung ist das Ergebnis stabil.
Zur Berechnung eine Barrier Option ist am ehesten geeignet die Crank-Nicolson-Methode,
da diese schneller gegen das korrekte Ergebnis (Preis im BS Modell) konvergiert, als
die explizite oder implizite Methode und darüber hinaus auch stabile Ergebnisse lieferte. Dabei wurden mit Hilfe des MATLAB-Programms Beispiele für aller drei FiniteDifferenzen-Methoden erstellt und entsprechende Funktionen programmiert.
Die Sensitivitätskennzahlen spielen von Optionspreisen eine zentrale Rolle. In dem Kapitel zur Sensitivitätsanalyse wird ein Überblick über die Kernzahlen für das Black-ScholesModell und die Finite-Differenzen-Methode geliefert. Es zeigt sich, dass die bereits vorher aufgetretene Ungenauigkeit bei der Finite-Differenzen-Methoden auch bei den Sensitivitätskernzahlen zu abweichenden Ergebnissen im Vergleich zum Black-Scholes-Modell
fürhren.
6
Fazit
74
Welches Verfahren verwendet wird, hängt davon ab, welche Zielvorgaben existieren. Sind
ausschließlich kurzzeitige Optionen zu bewerten, so bietet sich die Black-Scholes-Gleichung
als gutes Lösungsmodell an. Für die Bewertung von langfristigen Optionen eignet sich jedoch eher die Finite-Differenzen-Methode, da die Berechnungen mit dieser effizienter
durchgeführt werden kann.
MATLAB ist als ein Softwarepaket für numerische Berechnung praktisch. Diese Arbeit
hat für die drei verschiedenen Finite-Differenzen-Methode die Beispielen dargestellt, die
mit MATLAB programmiert wurden. Um die Ergebnisse und Graphik erhalten.
Anhang
75
Anhang
A
Beweise und Theoreme
Beweis der Black-Scholes Bewertungs-Formel (2.15)
Proof. Wenn die Gleichung (2.15) bewiesen wird. Ergibt sich aus der Call-Put-Parity die
Gleichung (2.16).
Für den Beweis, vergleiche [6, Kapitel 13, S.310].
Der Aktienkurs zum Zeitunkt Null ist S0 , die volatilität ist σ. Der Call-Preis ist gegeben
durch
c = e−rT Ê max[(ST − K), 0],
wobei ST ist der Vermögenswert zum Fälligkeit T und Ê bezeichnet die Erwartung in
einer risikoneutralen Welt.
Bei Linearität gilt
c = e−rT Ê ((ST − K)1ST >K )
= ÊST 1ST >K − K · P̂(ST > K) .
(A.1)
In Gleichung (1.12) erhält man
P̂(ST > K) = N(d2 ),
wobei
2
√
ln SK0 + (r − σ2 )T
√
= d1 − σ T .
d2 =
σ T
Es muss nur für ÊST 1ST >K berechnet werden.
In der risikoneutralen Welt ST , ist ein Log-normal Verteilung:
ln ST ∼ N(m, ω),
wobei m = ln S0 + (r − 21 σ2 )T und ω = σ2 T . Die Wahrscheinlichkeitsdichtefunktion von
ST ist
1
(ln x − m)2
h(x) = √
exp −
1{x>0} .
2ω2
x 2πω2
Anhang
76
Daher,
ÊST 1{ST >K}
Z +∞
=
x · h(x)dx
k
(ln x − m)2
ln x − m
1
√
exp −
dx
(Annahme: y =
=
, x = eωy+m ).
2
2ω
ω
k
2πω
2
Z +∞
1
y
= ln k−m √ exp −
· exp (ωy + m) dy
2
2π
ω
Z +∞
2
(y − ω)2
1
1
m+ ω2
√ exp −
dy
(dy
=
dx, dx = ωeωy+m dy)
=e
ln k−m
2
xω
2π
ω ω2
ln k − m
m+ 2
=e
−ω .
N −
ω
(A.2)
Z +∞
Sei
m+
und
Daher
ω2
1
σ2 T
= ln S0 + (r − σ2 )T +
= ln S0 + rT,
2
2
2
ln k − m
−
−ω
ω
ln k − ln S0 − (r − 12 σ2 )T − σ2 T
√
=−
σ T
ln SK0 + rT + 12 σ2 T
√
=
= d1 .
σ T
h
i
c = e−rT eln S0 +rT N(d1 ) − kN(d2 )
= e−rT S0 erT N(d1 ) − kN(d2 )
(A.3)
(A.4)
= S0 N(d1 ) − ke−rT N(d2 ).
Dies beweist die Gleichung (2.15).
Beweis für die Transformation (3.7), (3.8) und (3.9)
Proof. Es wird die Annahme f = Hu verwendet.
hier ex =
S
H
ist.
∂f
∂Hu
∂u
=
=H· ,
∂t
∂t
∂t
(A.5)
∂f
∂(Hu)
H · ∂u
∂u
∂u
H ∂u
=
=
= x= x =
,
x
x
∂S ∂(He ) H · ∂(e ) ∂e
e ∂x
S ∂x
(A.6)
Anhang
77
Es wird weiter für
∂
∂S
∂2 f
∂ ∂f
∂ H ∂u
=
=
·
∂S2 ∂S ∂S
∂S S ∂x
∂ H
∂u H ∂ ∂u
=
· + ·
∂S S
∂x S ∂S ∂x
∂ 1 ∂u H ∂ ∂u
=H·
· + ·
.
∂S S
∂x S ∂S ∂x
1
∂ ∂u
und
S
∂S ∂x berechnet:
∂
1
∂
1
1
=
·
·
=
S
∂(H · ex ) H · ex
Hex ∂x H · ex
1
∂ −x 1
= 2 x·
e
= 2 x · −e−x
H e ∂x
H e
1
1
1
= − 2 x 2 = − 2 S 2 = − 2,
H (e )
S
H (H )
∂ 1
1
1 0
1
oder kann man direkt ∂S
=
−
haben,
weil
nach
2
S
x = − x2 .
S
(A.7)
∂
∂S
∂
∂S
∂u
∂x
∂
∂u
1 ∂2 u
=
·
=
·
.
Hex ∂x
∂x
Hex ∂x2
(A.8)
(A.9)
Das Ergebnisse von (A.8) und (A.9) wird in (A.7) eingesetzt:
∂2 f
1 ∂u H 1 ∂2 u
+ ·
=H· − 2
·
∂S2
S ∂x S Hex ∂x2
H ∂u H ∂2 u
= − 2 · + 2 · 2.
S ∂x S ∂x
(A.10)
Durch die Ergebnisse von (A.5), (A.6) und (A.7) kann die Gleichung (3.3) transformiert
werden:
1 2 2
H ∂u H ∂2 u
∂u
H · +r·S·+ σ S · − 2 · + 2 · 2 ,
(A.11)
∂t
2
S ∂x S ∂x
dann ist
∂u 1 2 ∂2 u
1
∂u
+ σ 2 + (r − σ2 ) − ru = 0.
∂t 2 ∂x
2
∂x
(A.12)
Randbedingung von (3.4),
f (S, T ) = (S − K)+ ,
Hu = (Hex − K)+ ,
K
u = (ex − )+ ,
H
x
u = (e − H)+ .
hier KH =
K
H.
für x = ln HS , weil S > H, dann ist
Von (3.5): f (H,t) = 0
Weil f = Hu, dann u(H,t) = 0.
S
H
(A.13)
> 1, d,h, 0 < x < ∞.
Anhang
78
Beweis für die Transformation (3.11), (3.12) und (3.13)
Proof. Die Formel von (3.11), (3.12) und (3.13) wird abgeleitet.
∂u
∂ αx+β(T −t) ∂W
=
e
W + eαx+β(T −t) ·
∂t
∂t
∂t
∂W
,
= eαx+β(T −t) · (−β)W + eαx+β(T −t)
∂t
(A.14)
∂u
∂W
= eαx+β(T −t) · α ·W + eαx+β(T −t) ·
,
(A.15)
∂x
∂x
∂ ∂2 u
∂ αx+β(T −t)
αx+β(T −t) ∂W
=
e
· α ·W +
e
·
∂x2 ∂x
∂x
∂x
∂W
(A.16)
= eαx+β(T −t) · α2 ·W + eαx+β(T −t) · α ·
∂x
∂2W
∂W
+ eαx+β(T −t) 2 + eαx+β(T −t) · α ·
.
∂x
∂x
Annahme: γ = αx + β(T − t), die (A.14), (A.15) und (A.16) in die Gleichung (3.7) einsetzen, dann ergibt sich die Gleichung:
∂W
eγ (−β)W + eγ
∂t
2
∂W
1 2
∂W
γ
2
γ
γ ∂ W
γ
+e · 2 +e ·α
+ σ · e · α ·W + e · α
2
∂x
∂x
∂x
1
∂W
+ (r − σ2 ) eγ · α ·W + eγ
2
∂x
(A.17)
+ r · eγ ·W
= 0,
dann ist
∂W
1 2 2
1 2
+W −β + σ · α + (r − σ α − r)
∂t
2
2
∂W 1 2
1 2
1 2
σ · α + σ · α + (r − σ )
+
∂x 2
2
2
2
∂W 1
+ 2 · σ2
∂x 2
= 0.
2
(A.18)
2
α = − σ12 (r − σ2 ), β = −r − 2σ1 2 (r − σ2 )2 in die Gleichung (A.18) einsetzen, erhält man
(3.11):
∂W 1 2 ∂2W
+ σ
= 0.
∂t
2 ∂x2
Anhang
79
Beweis die Delta und Gamma
Proof. Es wird bewiesen, dass ∆ = N(d1 ) ist.
Nach der Gleichung (2.15) ist der Preis der Call Option wie folgt. c ist die Call Option
und p die Put Option:
c = SN(d1 ) − Ke−rT N(d2 ).
In der Gleichung wird angenommen, dass t = 0 ist.
Nachfolgende wird angenommen, dass t , 0 ist. Dann wird die Call Option c als c(S,t)
bezeichnet.
2
ln KS + (r + σ2 )(T − t)
√
,
d1 =
σ T −t
2
√
ln KS + (r − σ2 )(T − t)
√
d2 =
= d1 − σ T − t.
σ T −t
∆c =
∂c
∂N(d1 )
∂N(d2 )
= N(d1 ) + S
− Ke−r(T −t)
.
∂S
∂S
∂S
Z d1
N(d1 ) =
−∞
x2
1
√ e− 2 dx,
2π
d12 ∂d
1
1
∂N(d1 )
1
√
= √ e− 2 ·
=
n(d1 ),
∂S
∂S
Sσ T − t
2π
wobei n(d1 ) =
√1 e−
2π
d12
2
(A.19)
(A.20)
ist.
Es ergibt sich
Ke−r(T −t)
∂N(d2 )
1
= Ke−r(T −t) √
n(d2 )
∂S
Sσ T − t
d2 2
1
1
√ e− 2 ,
= Ke−r(T −t) √
Sσ T − t 2π
√
bei d2 = d1 − σ T − t
√
d1 2 −2d1 σ T −t+σ2 (T −t)
1
1
2
√
√ e−
= Ke
Sσ T − t 2π
d12
σ2 (T −t)
1
1
S
σ2
√ e− 2 e− 2 e( ln + (r + )(T − t)),
= Ke−r(T −t) √
K
2
Sσ T − t 2π
−r(T −t)
S
durch einsetzen von eln K =
S
K
ergibt sich
Ke−r(T −t)
∂N(d2 )
1
√
=
n(d1 ).
∂S
Sσ T − t
(A.21)
Anhang
80
Es wird (A.20) und (A.21) in (A.19) eingesetzt.
∆=
1
∂c
1
√
√
n(d1 ) −
n(d1 ) = N(d1 ).
= N(d1 ) +
∂S
Sσ T − t
Sσ T − t
Für die Gamma gilt:
Γc =
∂∆c ∂N(d1 )
1
√
n(d1 ).
=
=
∂S
∂S
Sσ T − t
Berechnung des Deltas einer Barrier Option
Proof. Es wird die Gleichung (3.19) verwendet:
−2r2 +1
2 S σ
H
cdi (S,t) =
cvanilla
,t .
H
S
Das Delta ist die Ableitung nach S.
2 2 ∂
∂ H2
H
H
∂
cvanilla
,t = H 2 cvanilla
,t ·
∂S
S
S
∂S S
∂S
H2
H2
= − 2 N d1
,t
.
S
S
dann ist
∂cdi
∂S
−2r
2 2 −2r2 +1
∂ S σ2 +1
S σ
H
H
∂
=
· cvanilla
,t +
cvanilla
,t
∂S H
S
H
∂S
S
−2r2
2 " −2r2 +1 2 2 #
2r
S σ 1
H
H
S σ
H
= 1− 2
· cvanilla
,t + −
N d1
,t
2
σ
H
H
S
H
S
S
2 2 #
−2r2 +1 "
1 − σ2r2
H
H2
H
S σ
=
cvanilla
,t − 2 N d1
,t
.
H
S
S
S
S
∆cdi =
Anhang
B
Code
Allgemeine Symbol Bedeutung
S0 = Aktienkurs zum Zeitpunkt t = 0
T = Fälligkeit
dT = Zeitintervall
sigma = σ, Volatilität
r = risiklos Zinssatz
K = Ausübungspreis
H = Barriere
Code B.1. Simulation des Wiener-Prozess.
function [bb]=BB_Simulation(T,dT,m)
% function BB_Simulation(T,dT)
% Simulation fuer m-mal Beispiel mit Brown’sche Bewegung in [0,T]
% mit Zeitschritt dT.
% m = Anzahl des Beispiel.
% n = Anzahl des Schritt.
% Beispiel: BB_Simulation(2,0.2,5).
n=fix(T/dT);
bb=zeros(n+1,m);
for i=1:1:n
bb(i+1,:)=bb(i,:)+sqrt(dT)*randn(1,m);
end
end
Code B.2. Simulation für Pfade eines Wiener Prozesses.(Abbildung 1.2)
function [paths]=BB_Path(T,dT,m)
% function BB_Path(T,dT,m)
% Simulation fuer m paths mit Brownian Motion im Zeitraum [0,T]
% mit Zeit Schritt dT (verwenden function BB_MC(T,n)).
% m = Anzahle des Pfades.
% Time = Sequenz des Zeitschrittes.
% Beispiel: BB_Path(2,0.01,4)
Time=0:dT:T;
plot(Time,BB_Simulation(T,dT,m))
81
Anhang
82
Code B.3. Simulation of Geometric Brownian Motion. Code von Table 1
function [gbb]=GeomBB_Simulation(S0,T,mu,sigma,dT)
% function GeomBB_Simulation(S0,T,mu,sigma,dT)
% mu = drift coefficient
% Bsp.: Hull 6. Auflage, S. 334-335, Tabelle 12.1
% GeomBB_Simulation(20.00,0.11,0.14,0.2,0.11)
% n = Anzahl der Schritt
n=T/dT;
gbb=zeros(n+1,3);
gbb(1,1)=S0;
gbb(1,2)=randn(1,1);
gbb(1,3)=mu*S0*dT+sigma*S0*sqrt(dT)*gbb(1,2);
for i=1:1:n
gbb(i+1,1)=gbb(i,1)+gbb(i,3);
gbb(i+1,2)=randn(1,1);
% der Ausdruck $Randn(\cdot)$ euzeugt eine Zufallszahl zwischen
$0$ und $1$
gbb(i+1,3)=mu*gbb(i+1,1)*dT+sigma*gbb(i+1,1)*sqrt(dT)*gbb(i+1,2);
end
end
Anhang
83
Code B.4. Monte-Carlo-Simulation für Pfade der geometrischen Brownschen Bewegung. (Abbildung 1.3.)
function [paths]=GeomBB_Path(S0,T,mu,sigma,dT,m)
% function GeomBB_Path(S0,T,r,sigma,dT,m)
% verwenden: function GeomBB_Simulation(S0,T,r,sigma,n)
% m = Anzahl des Pfades
% Beispiel : GeomBB_Path(20.00,0.1,0.14,0.2,0.00041,4);
% vergleicht: Hull 6. Auflage, S. 334-335, Tabelle 12.1
% n = Anzahl des Schritt
% Zeit Sequenz
Time=0:dT:T;
% Anzahle der Schritt fuer jeder Pades
n=fix(T/dT);
% m Pfades: jeder Reihe ist ein Pfade.
paths=zeros(m,n+1);
for i=1:1:m
A=GeomBB_Simulation(S0,T,mu,sigma,dT);
paths(i,:)=A(:,1)’;
end
plot(Time,paths);
Code B.5. Simulation des Underlying asset.
function UnderlyingAssetBSModel(S0,T,r,sigma,m,n)
% Black-Scholes Modell fuer die Aktienkurs am Zeitpunkt T
% m,n = zu eine m mal n Matrix von die beliebige Anzahl bekommt
% Beispiel: Hull 6. Auflage, Page 347, Beispiel 13.1
%
UnderlyingAssetBSModel(40,0.5,0.16,0.2,4,1)
S0*exp((r-sigma^2/2)*T+sigma*sqrt(T)*randn(m,n))
end
Anhang
Code B.6. European Call/Put Optionsbewertung mit Monte-Carlo-Simulation.
function
[price] = EuroOptionPricingMCBSModel(CallPut,S0,T,r,sigma,K,n)
% Europeaische Optionsbewertung mit Monte Carlo Simulation
% CallPut: Call=1,Put=0.
% n = Anzahl des Experiment.
% Beispiel: Hull 6. Auflage, Page 364, Beispiel 13.6
% Call: EuroOptionPricingMCBSModel(1,42,0.5,0.1,0.2,40,100)
ST=UnderlyingAssetBSModel(S0,T,r,sigma,1,n);
% V = Payoff
if CallPut
V= max(ST-K,0);
end
if ~CallPut
V = max(K-ST,0);
end
% Vbar: mean Payoff, arithmetische Mittel von Payoff
Vbar=mean(V);
% Diskontieren Auszahlung
price=exp(-r*T)*Vbar;
end
84
Anhang
85
Code B.7. Option Bewertung (Call/Put) mit Black-Scholes Formula.
function [Y] = EuroOptionPricingBS(CallPut,K,S0,T,r,sigma)
% function [Y] = EuroOptionPricingBS(CallPut,K,S0,T,r,sigma)
% European Call/Put Option Bewertung via die Black-Scholes Formula
% CallPut =
Call = 1, Put = 0
dt
df
d1
d2
=
=
=
=
sigma * sqrt(T);
r + 0.5 * sigma ^ 2;
(log( S0 / K ) + df * T ) / dt;
d1 - dt;
Nd1 = 0.5*erfc(-d1/sqrt(2));
Nd2 = 0.5*erfc(-d2/sqrt(2));
if CallPut
% Call
Y = S0 * Nd1 - K * exp(-r * T) * Nd2;
end
if ~CallPut
% Put
Y = -S0 * (1-Nd1) +
end
end
K * exp(-r * T) * (1-Nd2);
Anhang
Code B.8. Barrier Option Bewertung mit Monte Carlo Simulation.
function [P]
=BarrierOption_MC_DO(CallPut,S0,K,r,sigma,H,T,nTime,nPath)
% Barrier Optionsbewertung: Down-andout, call/put option
% CallPut= 1: bedeutet fuer Call Optio;
%CallPut= 0 : bedeutet fuer Put Optio;
% nTime
= Anzahl des Zeit Schritt
% nPath
= Anzahl des Pfades
% BarrierOption_MC_DO(0,50,50,0.1,0.4,30,5/12,10000,10000)=3.2393
payoff = zeros(nPath,1);
% Zeit Schritt
dt=T/nTime;
nu_dt=(r-0.5*sigma^2)*dt;
sigma_dt=sigma*sqrt(dt);
for i=1:nPath
S=S0;
j=1;
while (S>=H & j<nTime)
S=S*exp(nu_dt+sigma_dt*randn);
j=j+1;
end
if j>=nTime
if CallPut
payoff(i)=max(0,S-K);
elseif ~CallPut
payoff(i)=max(0,K-S);
else
payoff(i)=0;
end
end
P=exp(-r*T)*mean(payoff);
end
86
Anhang
87
Code B.9. Barrier Option Bewertung mit BS-Modell.
function [Y] =
EuroOptionBarrierForm(CallPut,UpDown,InOut,K,S,H,T,r,sigma)
% Code Vergleich Brandimarte,P. Seit 121.
% Barrier Option Bewertung: European Call/Put, UpDown,
%InOut Barrier Option.
% CallPut : Call = 1, Put = 0
% UpDown :
Up =1, Down = 0
% InOut :
In= 1, Out=0
% Beispiel fuer eine Europaeische Down-and-out Put Option:
% EuroOptionBarrierForm(0,0,0,50,50,40,5/12,0.1,0.4)
% ans =
%
0.5424
hs=H/S;
sh=S/H;
sk=S/K;
skh=S*K/(H^2);
a=hs^(-1+(2*r/sigma^2));
b=hs^(1+(2*r/sigma^2));
dt = sigma * sqrt(T);
df = r + 0.5 * sigma^2;% berechnen die
dg = r - 0.5 * sigma^2;
d1 = (log(sk) + df * T ) / dt;
d2 = d1 - dt;
d3 = (log(sh) + df * T) / dt;
d4= d3-dt;
d5= ( log(sh) - dg * T) / dt;
d6= d5-dt;
d7= ( log(skh) - dg * T) / dt;
d8= d7-dt;
drift term
Anhang
nd1
nd2
nd3
nd4
nd5
nd6
nd7
nd8
=
=
=
=
=
=
=
=
0.5*erfc(-d1/sqrt(2));
0.5*erfc(-d2/sqrt(2));
0.5*erfc(-d3/sqrt(2));
0.5*erfc(-d4/sqrt(2));
0.5*erfc(-d5/sqrt(2));
0.5*erfc(-d6/sqrt(2));
0.5*erfc(-d7/sqrt(2));
0.5*erfc(-d8/sqrt(2));
if (CallPut & ~UpDown & InOut ) %Down-and-In Call
if K>H
Y = S*b*(1-nd8) - K * exp(-r * T) * a*(nd5-nd7);
end
if K<H
Y = S*( nd1-nd3+b*(1-nd6))-K*exp(-r*T)*(nd2-nd4-a*(1-nd5));
end
end
if (CallPut & ~UpDown & ~InOut ) %Down-and-Out Call
if K>H
Y=S*(nd1-b*(1-nd8))-K*exp(-r*T)*(nd2-a*(1-nd7));
end
if K<H
Y=S*( nd3-b*(1-nd6))-K * exp(-r * T)*(nd4-a*(1-nd5));
end
end
if (CallPut & ~UpDown & ~InOut ) %Up-and-Out Call
Y = S*(nd1-nd3-b*(nd6-nd8))-K*exp(-r*T)*(nd2-nd4-a*(nd5-nd7));
end
if (CallPut & UpDown & InOut) % Up-and-In Call
Y =S*( nd3+ b*(nd6-nd8))-K * exp(-r*T)*(nd4+a*(nd5-nd7));
end
if ( ~CallPut & ~UpDown & ~InOut ) %Down-and-Out Put
Y =-S*(nd3-nd1-b*(nd8-nd6))+K*exp(-r*T)*(nd4-nd2-a*(nd7-nd5));
end
88
Anhang
if ( ~CallPut & ~UpDown & InOut ) %Down-and-In Put
Y =-S*( 1-nd3+b* (nd8-nd6)) + K * exp(-r * T)*(1-nd4+a*(nd7-nd5));
end
if ( ~CallPut & UpDown & ~InOut ) %Up-and-Out Put
if K>H
Y =-S*( 1-nd3-b*nd6) + K * exp(-r * T) * (1-nd4-a*nd5);
end
if K<H
Y =-S*( 1-nd1-b*nd8) + K * exp(-r * T) * (1-nd2-a*nd7);
end
end
if ( ~CallPut & UpDown & InOut ) %Up-and-In Put
if K>H
Y =-S*( nd3-nd1+b*nd6) + K * exp(-r * T) * (nd4-nd2+a*nd5);
end
if K<H
Y =-S*b*nd8 - K * exp(-r * T) * a*nd7;
end
end
end
89
Anhang
90
Code B.10. amerikanischen und europäischen VerkaufsOption Bewertung mit implizite FDM.
function put=BSEAput(EuroAmerica,Smax, T, M, N, K, r, sigma);
% Euro und America Option Bewertung (put) mit implizite Modell.
% EuroAmerica : Option Type, Euro option = 0, America option = 1.
% Smax : maximum Aktie Preis.
% M : Anzahl der Schritte des Aktienkurses ;
N : Anzahle der Zeitschritte.
% Beispiel: Hull 6. Auflage, S. 509, Beispiel 17.10.
% Code vgl: CS522 Lab Note, Finite Difference Approach
% to Pricing, 20.12.1998.
ds = Smax / M;
% Intervall des Aktienkurs
dt = T / N;
% Zeitintervall
J
a
b
c
=
=
=
=
1:M-1;
.5*r*dt*J - .5*sigma^2*dt*J.^2;
1 + sigma^2*dt*J.^2 + r*dt;
-.5*r*dt*J - .5*sigma^2*dt*J.^2;
A = diag(a(2:M-1), -1) + diag(b) + diag(c(1:M-2), 1);
put = zeros(N+1, M+1);
% Randbedingung
put(N+1, :) = max(K - [0:ds:Smax], 0);
put(:, 1) = K;
put(:, M+1) = 0;
if EuroAmerica
% Amerikanische Option
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
put(i, :) = max(K - [0:ds:Smax], put(i,:));
end
end
if ~EuroAmerica
% European Option
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
end
end
end
Anhang
91
Code B.11. amerikanischen und europäischen VerkaufsOption Bewertung mit explizite FDM.
function put=
BSEAput_Explicit(EuroAmerica,Smax, T, M, N, K, r, sigma);
% Black-Scholes Modell, verwenden explicit finite difference Methode;
% fuer Table 17.5 siehe Hull: American Option und explicit methode
% EuroAmerica (Option Type): Euro option = 0, America option = 1.
% Smax : maximum Aktienkurs
% M : Anzahl der Schritte des Aktienkurses ;
% N : Anzahle der Zeitschritte.
% Beispiel: BSEAPut_Explicit(1,100,5/12,20,10,50,0.1,0.4);
ds = Smax / M;
dt = T / N;
J
a
b
c
=
=
=
=
% Intervall des Aktienkurs
% Zeitintervall
1:M-1;
(-.5*r*dt*J + .5*sigma^2*dt*J.^2)/(1+r*dt);
(1 - sigma^2*dt*J.^2)/(1+r*dt);
(.5*r*dt*J + .5*sigma^2*dt*J.^2)/(1+r*dt);
A = diag(a(2:M-1), -1) + diag(b) + diag(c(1:M-2), 1);
put = zeros(N+1, M+1);
put(N+1, :) = max(K - [0:ds:Smax], 0);
put(:, 1) = K; put(:, M+1) = 0;
if EuroAmerica
for i = N:-1:1
y = zeros(1, M-1);
y(1) = a(1)*put(i+1, 1); y(M-1) = c(M-1)*put(i+1,M+1);
put(i, 2:M) = put(i+1, 2:M) * A’ + y;
put(i, :) = max(K - [0:ds:Smax], put(i,:));
end
end
if ~EuroAmerica
for i = N:-1:1
y = zeros(1, M-1);
y(1) = a(1)*put(i+1, 1);
y(M-1) = c(M-1)*put(i+1,M+1);
put(i, 2:M) = put(i+1, 2:M) * A’ + y;
end
end
Anhang
92
Code B.12. europäischen Verkaufsoption Bewertung mit Crank-Nicolson Methode.
function [Put,price] = BSPut_CN(SO,K,r,T,sigma,Smax,M,N)
% function price = BSPut_CN(SO,K,r,T,sigma,Smax,dS,dt)
% Smax : maximum Aktienkurs
% M : Anzahl der Schritte des Aktienkurses ;
% N : Anzahle der Zeitschritte.
% Beispiel: [price] =BSPut_CN(50,50,0.1,5/12,0.4,100,20,10)
% ans =
3.9816
dS = Smax/M;
dt = T/N;
Put = zeros(M+1,N+1);
S = linspace(0,Smax,M+1)’;
J = S / dS;
% Randbedingung
Put(1,:) =K;
Put(M+1,:) =0;
Put(: ,N+1) = max(K-S,0);
% coefficients Matrix
alpha =0.25*dt*( sigma^2*(J.^2) - r*J );
beta = -dt*0.5*( sigma^2*(J.^2) + r );
gamma =0.25*dt*( sigma^2*(J.^2) + r*J );
M1 = -diag(alpha(3:M),-1)+diag(1-beta(2:M)) - diag(gamma(2:M-1),1);
[L,U] = lu(M1);
M2 = diag(alpha(3:M),-1) + diag(1+beta(2:M)) + diag(gamma(2:M-1),1);
% berechnet mit M1f_{i-1}=M2f_i
% berechnet Put
for i=N:-1 : 1
Put(2:M,i) = U \ (L \ (M2*Put(2:M,i+1)));
end
% interploation: interp1.
% wenn nur die Wert in Punkt S0 bekommen moecchten, benutzt folgende
% Befehle:price = interp1(vetS,matVal(:,1),SO);
% Rueckkehr Preis, moeglicherweise durch lineare Interpolation die
% ausserhalb des Gitters
price = interp1(S,Put(:,1),SO);
Anhang
93
Code B.13. europäischen Down-and-out VerkaufsOption Bewertung mit implizite
Differenze Methode.
function price = BarrierDOPut_Imp(SO,K,r,T,sigma,H,Smax,dS,dt)
% Beispiel: BarrierDOPut_Imp(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
matVal = zeros(M+1,N+1);
vetS = linspace(H,Smax,M+1)’;
vetj = vetS / dS;
veti =0:N;
% Randbedingung
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
% Koefficients Matrix
a = 0.50*r*vetj*dt- 0.50*sigma^2*(vetj.^2)*dt ;
b = 1+sigma^2*vetj.^2*dt;
c =-(0.50*r*vetj*dt) - 0.50*sigma^2*(vetj.^2)*dt ;
M1 = diag(a(3:M),-1)+diag(b(2:M)) + diag(c(2:M-1),1);
% loesen die folgende linearen Systemen
for i=N:-1 : 1
matVal(2:M,i) = M1\matVal(2:M,i+1);
end
%wenn nur die Wert in Punkt S0 bekommen moecchten,
%benutzt folgende Befehle:
price = interp1(vetS,matVal(:,1),SO);
%wenn ganz Matrix bekommen moechten, benutzt folgende Befehle:
%price=matVal
Anhang
94
Code B.14. europäischen Down-and-out VerkaufsOption Bewertung mit explizite
Differenzen Methode.
function price = BarrierDOPut_Exp(SO,K,r,T,sigma,H,Smax,dS,dt)
% Beispiel: BarrierDOPut_Exp(50,50,0.1,5/12,0.4,40,100,0.5,1/12000)
% ans = 0.5413
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
matVal = zeros(M+1,N+1);
vetS = linspace(H,Smax,M+1)’;
vetj = vetS/dS;
veti =0:N;
% Randbedingung
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
% coefficients Matrix
A = 0.5*dt*(sigma^2*vetj-r).*vetj ;
B = 1-dt*(sigma^2*vetj.^2+r);
C = 0.5*dt*(sigma^2*vetj+r).*vetj ;
M1 = diag(A(3:M),-1)+diag(B(2:M)) + diag(C(2:M-1),1);
% loesen die folgende linearen Systemen
for i=N:-1 : 1
matVal(2:M,i)=M1*matVal(2:M,i+1);
end
%wenn nur die Wert in Punkt S0 bekommen moecchten,
%benutzt folgende Befehle:
price = interp1(vetS,matVal(:,1),SO);
%wenn ganz Matrix bekommen moechten, benutzt folgende Befehle:
%price=matVal
Anhang
95
Code B.15. europäischen Down-and-out VerkaufsOption Bewertung mit modifizierte explizite Differenzen Methode.
function price = BarrierDOPut_ModExp(SO,K,r,T,sigma,H,Smax,dt)
% BarrierDOPut_ModExp(50,50,0.1,5/12,0.4,40,100,1/12000)
% ans =
%
0.5428
N = round(T/dt);
dt = T/N;
lambda = sqrt(1.5);
dy = lambda*sigma*sqrt(dt);
M = round((log(Smax)-log(H))/dy) ;
F = zeros(M+1,N+1);
vety = linspace(log(H),log(Smax),M+1)’;
% Randbedingung
F(: ,N+1) = max(K-exp(vety),0);
F(1,:) =0;
F(M+1,:) =0;
% coefficients matrix
q=r-sigma^2/2;
pu = 1/(2*lambda^2) + q*sqrt(dt)/(2*lambda*sigma);
po = 1-1/(lambda^2);
pd = 1/(2*lambda^2) - q*sqrt(dt)/(2*lambda*sigma);
for i = N:-1:1
for j = M:-1:2
F(j,i)=(pd*F(j-1,i+1)+po*F(j,i+1)+pu*F(j+1,i+1))/(1+r*dt);
end;
end;
%wenn nur die Wert in Punkt S0 bekommen moecchten,
%benutzt folgende Befehle:
% price = interp1(vety,F(:,1),log(SO));
% wenn ganz Matrix bekommen moechten, benutzt folgende Befehle:
price=F
Anhang
96
Code B.16. europäischen Down-and-out Put Barrier Option Bewertung mit CrankNicolson Methode.
function price = BarrierDOPut_CN(SO,K,r,T,sigma,H,Smax,dS,dt)
% Beispiel: BarrierDOPut_CN(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
matVal = zeros(M+1,N+1);
vetS = linspace(H,Smax,M+1)’;
veti = vetS / dS;
vetj =0:N;
% Randbedingung
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
% coefficients matrix
alpha =0.25*dt*( sigma^2*(veti.^2) - r*veti );
beta = -dt*0.5*( sigma^2*(veti.^2) + r );
gamma =0.25*dt*( sigma^2*(veti.^2) + r*veti );
M1 = -diag(alpha(3:M),-1)+diag(1-beta(2:M)) - diag(gamma(2:M-1),1);
[L,U] = lu(M1);
M2 = diag(alpha(3:M),-1) + diag(1+beta(2:M)) + diag(gamma(2:M-1),1);
% loesen die folgende linearen Systemen
for j=N:-1 : 1
matVal(2:M,j) = U \ (L \ (M2*matVal(2:M,j+1)));
end
%wenn nur die Wert in Punkt S0 bekommen moecchten,
% benutzt folgende Befehle:
price = interp1(vetS,matVal(:,1),SO);
%wenn ganz Matrix bekommen moechten, benutzt folgende Befehle:
%price=matVal
Anhang
97
Code B.17. Down-and-out Barrier Optionsbewertung mit Monte Carlo Simulation.
function [P]=BarrierOption_MC_DO(CallPut,S0,K,r,sigma,H,T,nTime,nPath)
% Barrier Optionsbewertung: down and out, call/put option
% CallPut= 1 call; 0 put
% nTime = Anzahle der Zeitschritte
% nPath = Anzahle der Pades
% Beispiel:
% BarrierOption_MC_DO(CallPut,S0,K,r,sigma,H,T,nTime,nPath)
% BarrierOption_MC_DO(0,50,50,0.1,0.4,40,5/12,10000,10000)=0.5677
payoff = zeros(nPath,1);
% Zeitschritte
dt=T/nTime;
nu_dt=(r-0.5*sigma^2)*dt;
sigma_dt=sigma*sqrt(dt);
for i=1:nPath
S=S0;
j=1;
while (S>=H & j<nTime)
S=S*exp(nu_dt+sigma_dt*randn);
j=j+1;
end
if j>=nTime
if CallPut
payoff(i)=max(0,S-K);
elseif ~CallPut
payoff(i)=max(0,K-S);
else
payoff(i)=0;
end
end
P=exp(-r*T)*mean(payoff);
end
Anhang
98
Code B.18. Amerikanische Down-and-out Put Optionsbewertung mit implizite FDM.
function price = Amer_BarrierDOPut_Imp(SO,K,r,T,sigma,H,Smax,dS,dt)
% Beispiel: Amer_BarrierDOPut_Imp(50,50,0.1,5/12,0.4,40,100,0.5,1/120)
% ans =
%
3.7294
M = round((Smax-H)/dS) ;
dS = (Smax-H)/M;
N = round(T/dt);
dt = T/N;
matVal = zeros(M+1,N+1);
vetS = linspace(H,Smax,M+1)’;
vetj = vetS / dS;
veti =0:N;
% Randbedingung
matVal(: ,N+1) = max(K-vetS,0);
matVal(1,:) =0;
matVal(M+1,:) =0;
% coefficients matrix
a = 0.50*r*vetj*dt- 0.50*sigma^2*(vetj.^2)*dt ;
b = 1+sigma^2*vetj.^2*dt;
c =-(0.50*r*vetj*dt) - 0.50*sigma^2*(vetj.^2)*dt ;
M1 = diag(a(3:M),-1)+diag(b(2:M)) + diag(c(2:M-1),1);
% loesen die folgende linearen Systemen
for i=N:-1 : 1
matVal(2:M,i) = M1\matVal(2:M,i+1);
matVal(:,i)=max(K-vetS,matVal(:,i));
end
%wenn nur die Wert in Punkt S0 bekommen moecchten, benutzt folgende
%Befehle:
price = interp1(vetS,matVal(:,1),SO);
%wenn ganz Matrix bekommen moechten, benutzt folgende Befehle:
%price=matVal
Anhang
Code B.19. Beispiel der Greek.
function [Delta Gamma Theta Vega Rho]
= Greek_Euro_Call_Option(K,S0,T,t,r,sigma)
% Beispiel: [Delta Gamma Theta Vega Rho]
%
=Greek_Euro_Call_Option(50,50,5/12,0,0.1,0.4)
dt
df
d1
d2
=
=
=
=
sigma * sqrt(T-t);
r + 0.5 * sigma ^ 2;
(log( S0 / X ) + df * (T-t) ) / dt;
d1 - dt;
Nd1 = 0.5*erfc(-d1/sqrt(2));
Nd2 = 0.5*erfc(-d2/sqrt(2));
nd1 = 1/sqrt(2*pi)*exp(-d1^2/2);
nd2 = 1/sqrt(2*pi)*exp(-d2^2/2);
Delta = Nd1;
Gamma = nd1/S0/dt;
Theta = -S0*sigma*nd1/2/sqrt(T-t)r*X*exp(-r * (T-t))*Nd2;
Vega = S0*sqrt(T-t)*nd1;
Rho = (T-t)*X*exp(-r*(T-t))*Nd2;
end
99
Anhang
100
%Mit dem Befehl $subplot(n,m,z)$ wird die Position f\"ur $n\times m$
Grafiken dargestellt. Die Anzahl $z$ repr\"asentiert die Anordnung der
Grafiken. $S0=[10:0.2:100]$ bedeutet, dass f\"ur $S0$ ausgehend von
dem Anfangswert $10$ Euro zu jedem Zeitpunkt ein Wert von $0.2$
addiert wird, bis letztendlich $100$ Euro erreicht werden.
Zur Darstellung des Vektors $style$ werden drei unterschiedliche Formen
verwendet, wie in der Legende ausgef\"uhrt, was der Unterscheidung der
drei Kurven im Befehl $plot$ dient. Der Befehl $hold on$ bewirkt, dass
die berechnetenKurven in dieselbe Grafik gezeichnet werden.
(Vgl. Michael G. u. Ansgar J. [4] S.75)
Anhang
Code B.20. Abbildung der Greek.
function Plot_Greek_Euro_Call_Option(X,S0,T,r,sigma,n)
% Greeks for European Call Option using formula
%Plot_Greek_Euro_Call_Option(50,[10:0.2:100],5/12,0.1,0.4,3)
style = ’:-.’;
for j =1:n
t = (j-1)*T/n;
dt = sigma * sqrt(T-t);
df = r + 0.5 * sigma ^ 2;
d1 = (log( S0 / X ) + df * (T-t) ) / dt;
d2 = d1 - dt;
Nd1 = 0.5*erfc(-d1/sqrt(2));
Nd2 = 0.5*erfc(-d2/sqrt(2));
nd1 = 1/sqrt(2*pi)*exp(-d1.^2/2);
nd2 = 1/sqrt(2*pi)*exp(-d2.^2/2);
Delta = Nd1;
Gamma = nd1./(S0*dt);
Theta = -S0*sigma.*nd1/(2*sqrt(T-t))-r*X*exp(-r * (T-t))*Nd2;
Vega = S0*sqrt(T-t).*nd1;
Rho = (T-t)*X*exp(-r*(T-t))*Nd2;
subplot(3,2,1), plot(S0,Delta, style(j)), hold on
xlabel(’Basiswert’)
ylabel(’Delta’)
subplot(3,2,2), plot(S0,Gamma,style(j)), hold on
xlabel(’Basiswert’)
ylabel(’Gamma’)
subplot(3,2,3), plot(S0,Theta,style(j)), hold on
xlabel(’Basiswert’)
ylabel(’Theta’)
subplot(3,2,4), plot(S0,Vega,style(j)), hold on
xlabel(’Basiswert’)
ylabel(’Vega’)
subplot(3,2,5), plot(S0,Rho,style(j)), hold on
xlabel(’Basiswert’)
ylabel(’Rho’)
end
end
101
Anhang
102
Code B.21. Delta der Down-and-in Call Barrier Option.
function Delta = Greek_Euro_Call_DIBarrierOption(K,S0,H,T,t,r,sigma)
% function [Delta Gamma Theta Vega Rho]
%
= Greek_Euro_Call_Option(K,S0,T,t,r,sigma)
% Beispiel: Greek_Euro_Call_DIBarrierOption(50,50,40,5/12,0,0.1,0.4)
% ans =-0.0467
dt = sigma * sqrt(T-t);
df = r + 0.5 * sigma ^ 2;
S00=H^2/S0;
d1 = (log( S00 / K ) + df * (T-t) ) / dt;
d2 = d1 - dt;
Nd1 = 0.5*erfc(-d1/sqrt(2));
Nd2 = 0.5*erfc(-d2/sqrt(2));
% C_Vanilla(H^2/S,t)
C = S00 * Nd1 - K * exp(-r * (T-t)) * Nd2;
temp=1-2*r/(sigma^2);
Delta = (S0/H)^temp*(temp/S0*C-H^2/S0^2*Nd1);
end
Anhang
Code B.22. Sensitivitätskennzahl einer Europäische Call Option.
function [Delta Gamma Theta Vega Rho]
= Greek_Euro_Call_Option(K,S0,T,t,r,sigma)
% Bsp.: [Delta Gamma Theta Vega Rho]
%
=Greek_Euro_Call_Option(50,50,5/12,0,0.1,0.4)
% andere Beispie sihet: Eric Briys, Page 125,
%
[Delta Gamma Theta Vega Rho]
%
=Greek_Euro_Call_Option(15,18,0.25,0,0.1,0.15)
dt = sigma * sqrt(T-t);
df = r + 0.5 * sigma ^ 2;
d1 = (log( S0 / K ) + df * (T-t) ) / dt;
d2 = d1 - dt;
Nd1 = 0.5*erfc(-d1/sqrt(2));
Nd2 = 0.5*erfc(-d2/sqrt(2));
nd1 = 1/sqrt(2*pi)*exp(-d1^2/2);
nd2 = 1/sqrt(2*pi)*exp(-d2^2/2);
Delta = Nd1;
Gamma = nd1/S0/dt;
Theta = -S0*sigma.*nd1/(2*sqrt(T-t))-r*K*exp(-r * (T-t))*Nd2;
Vega = S0*sqrt(T-t)*nd1;
Rho = (T-t)*K*exp(-r*(T-t))*Nd2;
end
103
Anhang
Code B.23. Die Delta einer Europäische oder Amerikanische Put Option.
function [put Delta Delta0]=
Greek_BSEAput_FDM(EuroAmerica,S0,Smax,T, M, N, K, r, sigma);
ds = Smax / M;
dt = T / N;
J = 1:M-1;
a = .5*r*dt*J - .5*sigma^2*dt*J.^2;
b = 1 + sigma^2*dt*J.^2 + r*dt;
c = -.5*r*dt*J - .5*sigma^2*dt*J.^2;
A = diag(a(2:M-1), -1) + diag(b) + diag(c(1:M-2), 1);
put = zeros(N+1, M+1);
put(N+1, :) = max(K - [0:ds:Smax], 0);% Randbedingung
put(:, 1) = K;
put(:, M+1) = 0;
if EuroAmerica
% fuer America option
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
put(i, :) = max(K - [0:ds:Smax], put(i,:));
end
end
if ~EuroAmerica
% fuer European option
for i = N:-1:1
y = put(i+1, 2:M)’; y(1) = y(1) - a(1)*K;
put(i, 2:M) = [A \ y]’;
end
end
for j = M:-1:2
Delta(:,j) = (put(:,j+1)-put(:,j-1))/(ds*2);
end
Delta(:,M+1) = (put(:,M+1)-put(:,M))/ds;
Delta(:,1) = (put(:,2)-put(:,1))/ds;
ss=[S0/ds];
Delta0= (put(1,ss+2)-put(1,ss))/(2*ds);
end
%Mit dem Befehl $mesh(Delta)$ wird die Abbildung 6.2 erzeugt.
104
Literatur
105
Literatur
[1] Phelim P. Boyle and Yisong (Sam) Tian. An explicit finite difference approach to
the pricing of barrier options. Applied Mathematical Finance, 5(1):17–43, March
1998.
[2] Paolo Brandimarte. Numerical methods in finance and economics, a Matlab Baded
Introduction. Wiley, 2006.
[3] Eric Briys, Mondher Bellalah, Huu Minh Mai, and Francois de Varenne. Options,
futures and exotic derivatives—theory, application and practice. Wiley, Chichester
[u.a.], 1998.
[4] Daniel J. Duffy. Finite Difference Methods in Financial Engineering. John Wiley &
Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England,
2006.
[5] Michael Günther and Ansgar Jüngel. Finanzderivate mit MATLAB. Vieweg, Wiesbaden, 2003.
[6] John Hull. Optionen, Futures und andere Derivate. Pearson Studium, München
[u.a.], 6. auflage edition, 2006.
[7] John Hull. Options, futures, and other derivatives. Pearson Prentice-Hall, Upper
Saddle River, NJ [u.a.], 2009.
[8] Albrecht Irle. Finanzmathematik. B.G.Teubner Stuttgart 1998, 1998.
[9] Peter Jäckel. Monte Carlo methods in finance. Wiley, Chichester, 2007.
[10] Lishang Jiang. Mathematical modeling and methods of option pricing. World Scientific Publishing Co. Inc., River Edge, NJ, 2005. Translated from the 2003 Chinese
original by Canguo Li.
[11] Matthias Muck. Pricing turbo certificates in the presence of stochastic jumps, interest rates, and volatility, 2006. http://www.fmpm.ch/docs/9th/papers_2006_
web/9182b.pdf.
[12] Bernt Øksendal. Stochastic differential equations. Universitext. Springer-Verlag,
Berlin, sixth edition, 2003. An introduction with applications.
[13] Peter Reinmuth. Barrier Options. Haupt Verlag; Auflage: 1., Aufl. (1. Juni 2005),
2005.
[14] Klaus Sandmann. Einführung in die Stochastik der Finanzmärkte. Springer, Berlin
[u.a.], 1999.
Literatur
106
[15] Michael Suchanecki. The pricing and hedging of barrier options and their applications in finance and life insurance. Bonn, 2008.
[16] Domingo Tavella and Curt Randall. Pricing financial instruments, The Finite Difference Methode. Wiley, New York, NY [u.a.], 2000.
[17] Ralf und Elke Korn. Optionsbewertung und Portfolio-Optiomierung. Studium, 2009.
[18] Deutschen Derivate Verbandes. Jahresvericht 2009.
[19] Paul Wilmott. Paul Wilmott on quantitative finance, volume II. Wiley, Chichester
[u.a.], 2006.
[20] Paul Wilmott, Sam Howison, and Jeff Dewynne. Option Pricing. Oxford Financial
Press,PO Box348,Oxford OX4 1DR, UK, Cambridge [u.a.], 1997.
[21] Paul Wilmott, Sam Howison, and Jeff Dewynne. The mathematics of financial derivatives: a student introduction. Cambridge Univ. Press, Cambridge [u.a.], 1998.
[22] Peter G. Zhang. Exotic options. World Scientific, Singapore [u.a.], 1998.
Versicherung
107
Name:
Liao
Vorname: Ming
Versicherung
Ich versichere, dass ich die Diplomarbeit selbstständig und ohne Benutzung
anderer als der angegebenen Quellen angefertigt habe.
Die den benutzten Quellen wörtlich oder inhaltlich entnommenen Stellen habe ich als solche kenntlich gemacht.
Bielefeld, den 9. Juni 2011
Ming Liao
Zugehörige Unterlagen
Herunterladen