Kurs:Modellierung und Numerische Methoden von Finanzderivaten/2 Binomialmethode

Aus testwiki
Zur Navigation springen Zur Suche springen

2.1 Binomialbäume

Wir betrachten einen sehr einfachen Finanzmarkt, in dem mit einem Bond, einer Aktie oder einer (europäischen) Call-Option nur zu den Zeitpunkten t=0 und t=Δt gehandelt werden kann. Dabei werden folgende Annahmen gemacht:

  • Der Bond Bt habe zur Zeit t=0 den Wert B0=1. Der risikofreie Zinssatz betrage r>0 für Guthaben und für Kredite; es werde kontinuierlich verzinst, d.h. BΔt=erΔt.
  • Die Aktie habe zur Zeit t=0 den Wert S0=S. Zur Zeit t=Δt gebe es zwei Möglichkeiten:
    • Der Kurs der Aktie betrage mit Wahrscheinlichkeit q>0: SΔt=uS (u steht für einen ”up”-Zustand) bzw.
    • Der Kurs betrage mit Wahrscheinlichkeit 1q>0: SΔt=dS (d steht für ”down”-Zustand). Es sei u>d>0.
  • Die Call-Option habe den Ausübungspreis K und die Verfallszeit Δt.
  • Der Finanzmarkt sei arbitragefrei und erlaube Aktienleerverkäufe (sog. short selling). Das bedeutet, dass man Aktien noch nicht besitzen muss, sondern später liefern kann. Weiter fallen keine Transaktionskosten für Kauf/Verkauf von Wertpapieren an. Es erfolgen zwischenzeitlich keine Dividendenzahlungen.

Die vierte Voraussetzung impliziert derΔtu. Gilt nämlich erΔt>u, so kann der Kauf von Bonds durch Aktienleerverkäufe finanziert und Arbitrage erzielt werden. Falls aber erΔt<d ist, so besteht eine Arbitrage-Möglichkeit durch den Kauf von Aktien, der durch Kredite finanziert wird.

Zur Zeit Δt beträgt der Wert CΔt der Call-Option entweder Cu:=(uSK)+ oder Cd:=(dSK)+. Wir wollen den Wert C0 der Call-Option zur Zeit t=0 bestimmen. Dazu verwenden wir das Duplikationsprinzip. Wir sichern die Call-Option dadurch ab, dass wir c1 Anteile des Bonds und c2 Anteile der Aktie kaufen bzw. verkaufen. Wir suchen also ein zur Call-Option äquivalentes Portfolio, so dass gilt

c1Bt+c2St=Ct,t=0, bzw. t=Δt.

Die unbekannten Größen c1,c2 bestimmen wir aus dieser Gleichung zum Zeitpunkt t=Δt:

c1erΔt+c2uS=Cu,
c1erΔt+c2dS=Cd.

Als Lösung ergibt sich

c1=uCddCu(ud)erΔt,c2=CuCd(ud)S.

Wegen d<u folgt c10 und c20, d. h. es muss zum Aktienkauf stets ein Kredit aufgenommen werden. Nunmehr können wir die Optionsprämie C0 bestimmen:

(2.1) C0=c1e0+c2S=erΔt(pCu+(1p)Cd) mit p=erΔtdud.

Aus der Ungleichungskette derΔtu folgt 0p1.

Die Optionsprämie kann als diskontierter Erwartungswert bzgl. der Wahrscheinlichkeit p interpretiert werden. Definieren wir nämlich den Erwartungswert einer Zufallsfunktion X, die nur die beiden (diskreten) Zustände X=Xu und X=Xd mit Wahrscheinlichkeit p bzw. 1p annehmen kann, durch

Ep(X):=pXu+(1p)Xd,

so lautet die Formel (2.1) einfach

C0=erΔtEp(SΔtK)+.

Der Optionspreis hängt nicht von der Wahrscheinlichkeit q ab; dies ist verständlich, da wir alle Pfade im Binomialbaum betrachten. Wegen der Relation

puS+(1p)dS=erΔtduduS+uerΔtuddS=erΔtS

können wir p als die risikoneutrale Wahrscheinlichkeit interpretieren, da der erwartete Kurs des Basiswertes mit der Wahrscheinlichkeit p des Up-Zustandes gleich dem Erlös aus dem risikofreien Bond ist.

Wir verallgemeinern nun diese Idee, indem wir einen n-Perioden-Finanzmarkt betrachten. In jeder Periode der Länge Δt kann sich der Aktienkurs mit der Wahrscheinlichkeit q um den Faktor u und mit Wahrscheinlichkeit 1q um den Faktor d ändern. Ein solches Preismodell heißt in der Literatur auch Ross-Rubinstein-Modell [2]. Seien also n und T=nΔt die Verfallszeit. Dann ist Skn:=ukdnkS der Wert der Aktie zur Zeit T bei k Up-Zuständen und nk Down-Zuständen.

Sei zunächst n=2. Dann berechnet sich der Optionspreis zur Zeit t=0 analog zum Ein-Perioden-Modell aus

C0=erΔt(pCu+(1p)Cd),

wobei Cu und Cd gegeben sind durch

Cu=erΔt(pCuu+(1p)Cud),Cd=erΔt(pCud+(1p)Cdd),

und Cuu,Cud und Cdd sind gegeben. Daher ergibt sich im Zwei-Perioden-Modell

C0=erΔt(p2Cuu+2p(1p)Cud+(1p)2Cdd).

Nun kann auf die Verallgemeinerung von n Perioden geschlossen werden:

(2.2) C0=enrΔtk=0nn!k!(nk)!pk(1p)nk(SknK)+.

Unter Verwendung der Binomialkoeffizienten

(nk)=n!k!(nk)!

und dem Erwartungswert einer Zufallsfunktion X, die mit Wahrscheinlichkeit

n!k!(nk)!pk(1p)nk

den Wert X=Xk,k=0,,n annehmen kann, durch

(2.3) Ep(X)=k=0n(nk)pk(1p)nkXk,

so erhalten wir die Beziehung

C0=erTEp((SnK)+).

Der Wert

(nk)pk(1p)nk

ist die Wahrscheinlichkeit, dass der Aktienkurs zur Zeit T=nΔt den Wert ukdnkS besitzt.

Wir können die Formel (2.3) auch anders interpretieren. Mit dem minimalen Index

m=min0kn{ukdnkSK}0

können wir (2.3) schreiben als

C0=Sk=mn(nk)(puerΔt)k((1p)derΔt)nkKerTk=mn(nk)pk(1p)nk.

Sei p=puerΔt. Dann folgt aus der Definition von p die Beziehung pu+(1p)d=erΔt oder 1p=(1p)derΔt und daher

(2.4) C0=Sk=mn(nk)(p)k(1p)nkKerTk=mn(nk)pk(1p)nk
(2.5) =SΦ(m,p)KerTΦ(m,p),

wobei Φ die Verteilungsfunktion der Binomialverteilung ist:

Φ(m,p)=k=mn(nk)pk(1p)nk.

Die Gleichung (2.5) kann als diskrete Black-Scholes-Formel interpretiert werden (s.u.).

2.2 Die Binomial-Optionspreis-Berechnung mit Mathematica

Wir bestimmen den auf der Binomial-Methode beruhenden Optionspreis mit dem Formelmanipulationssystem Mathemtica und wählen als Beispiel für den Aktien-Basispreis S=50. Wir nehmen an, dass der Aktienpreis in der kommenden Periode entweder um 10% steigt oder um 3% fällt; Der (feste) Zinssatz sei r=6%. Aus diesen Werten bestimmen wir die Wahrscheinlichkeiten und schließlich den Optionspreis der Aktie.

Solve[{55*p + 48.5*q == 50, p + q == 1/1.06}, {p, q}]
a = Simplify[Solve[{p*up + q*down == 1, p + q == 1/R}, {p, q}]]

Weiter bestimmen wir den (Zustands-) Optionspreis über n Perioden:

Clear[statePrices]
statePrices[up_, down_, R_] := Solve[{p*up + q*down == 1, p + q == 1/R}, {p, q}]1
Clear[binomialCall]
binomialCall[s_, x_, n_] := Sum[p^j*q^(n - j)*Binomial[n, j]*Max[s*p^j*down^(n - j) - x, 0], {j, 0, n}]
statePrices[up, down, R];

Nun sind die Parameter der Binomial-Verteilung für ein n-Perioden-Modell zu bestimmen. Dabei verwenden wir die asymptotische Beziehung und setzen für St/S die entsprechenden Werte ein:

(2.6) log(StS)𝒩(μt,σt),
log(SujdnjS)=jlogu+(nj)logd=jlog(u/d)+nlog(d),
(2.7) E{(SujdnjS)}=E(j)log(u/d)+nlog(d)=nplog(u/d)+nlogd,
(2.8) Var{(SujdnjS)}=np(1p)[log(ud)]2.

Die Beziehung für die Varianz folgt aus der Tatsache, dass in jeder Periode die Gleichung

(ud)2(p(1p)2+(1p)p2)=(ud)2p(1p)

gilt. Damit gelten für den Erwartungswert μ und für die Varianz (Volatilität) σ die beiden Gleichungen

nplog(u/d)+nlogd=μ,np(1p)[log(ud)]2=σ2.

Wir realisieren die Formeln in Mathematica und erhalten mit der Anweisungsfolge zunächst allgemeine Formeln, in die konkrete Werte eingesetzt werden: Somit sind folgende Anweisungen zu realisieren:

Clear[u, d, mu]
a = Solve[{(p*Log[u/d] + Log[d])*n == mu, n*p*(1 - p)*Log[u/d]^2 == var}/.p->1/2, {u, d}]
a4/.(mu->0.12, var->0.2^2, p->0.5, n->100)

Die Werte p=0.5,μ=0.12,σ2=0.22 (d.h. var), n=100 liefern folgenden Plot:

p = 0.5; 
mu = 0.12;
var = 0.2^2;
n = 100;
aa = 
 ListPlot[
  Table[{u^j*d^(n - j), p^j*(1 - p)^(n - j)*Binomial[n, j]}, {j, 0, n}]/.a4, 
  Joined->True, PlotRange->A11]

Bemerkung:

Das ist nicht die einzige Lösungsmenge, die gegen die Log-Normal-Verteilung konvergiert. Cox, Ross, Rubinstein [2] benutzen die Werte

u=exp(σ1/n),d=1u=exp(σ1/n),p=12+12μσ1/n.

Diese Werte lösen die Gleichungen zwar nicht exakt, sie konvergieren aber für n gegen die exakten Werte.

2.3 Brownsche Bewegung und ein Aktienkursmodell

Wir stellen zunächst einige Begriffe aus der Stochastik zusammen.

Wir bezeichnen mit (Ω,,P) einen Wahrscheinlichkeitsraum. Ω bezeichnet hier im einfachsten Fall eine endliche (oder - etwas komplizierter - eine abzählbare) Menge, die Menge der Elementarereignisse, ist die Klasse aller Teilmengen von Ω (d.h. die Klasse von Ereignissen), P(A) wird die Wahrscheinlichkeit des Ereignisses A genannt.

Bemerkung:

(a) Die Klasse ist eine σ-Algebra, d.h.

  1. A impliziert A=ΩA,
  2. Ak,k=1,2, impliziert Ak und Ak.

(b) Die numerische, auf definierte Funktion P ist

  1. positiv semidefinit, d.h. P(A)0A,
  2. normalisiert, d.h. P(Ω)=1,
  3. σ-additiv, d.h. P(kAk)=kP(Ak) für Ak,k, paarweise disjunkt.

Im allgemeinen Fall, wo Ω z. B. überabzählbar ist, gilt die Forderung, dass die Klasse eine σ-Algebra ist, ebenfalls. Zur Definition und für Beispiele informiere man sich in Grundlagenwerken der Stochastik, siehe z. B. [10], oder man vgl. die Aussagen im Kurs Stochastik.

Definition 2.1

(1) Ein Wahrscheinlichkeitsraum ist ein Tripel (Ω,,P), bestehend aus einer Menge Ω, einer σ-Algebra und einem Wahrscheinlichkeitsmaß P.
(2) Eine Funktion X:Ω auf einem Wahrscheinlichkeitsraum (Ω,,P) heißt Zufallsvariable genau dann, wenn für alle Borelmengen BB() gilt: X1(B).

Bemerkung:

Die Menge B() aller Borelmengen ist die kleinste σ-Algebra, die alle offenen Mengen von enthält.

Definition 2.2

Sei (Ω,,P) ein Wahrscheinlichkeitsraum. Die Zufallsvariablen X1,,Xn heißen unabhängig, falls AkB(),k=1,,n gilt
P({X1A1}{XnAn})=P({X1A1})P({XnAn}).

Wir gehen nun zu stetigen Zufallsvariablen über. Unter gewissen Voraussetzungen können Erwartungswert und Varianz mittels eines Riemann-Integrals berechnet werden.

Definition 2.3

1. Sei (Ω,,P) ein Wahrscheinlichkeitsraum und X eine Zufallsvariable. Dann ist der Erwartungswert E(X) definiert durch
E(X):=ΩX(ω)dP,ωΩ.
(Das ist das Lebesgue-Integral der summierbaren Funktion X:Ω bzgl. des Maßes P.)
2. Die Varianz Var(X) ist definiert durch
Var(X):=E((XE(X))2)=E(X2)(E(X))2,
falls die entsprechenden Integrale existieren. Die Standardabweichung ist gegeben durch σ:=Var(X).
3. Die Kovarianz zweier Zufallsvariabler X, Y</math> ist definiert durch
Cov(X,Y):=E((XE(X))(YE(Y)))=E(XY)E(X)E(Y),
falls E(X),E(XY) und E(Y) existieren.

Für unabhängige Zufallsvariable X und Y gilt E(XY)=E(X)E(Y) und insbesondere Cov(X,Y)=0. Daher kann die Kovarianz als ein Maß für die Abhängigkeit von X und Y betrachtet werden. Eine weitere Konsequenz aus der Unabhängigkeit von X und Y ist die Additivität der Varianzen:

(2.9)Var(X+Y)=E(X2)+2E(X)E(Y)+E(Y2)(E(X)+E(Y))2=Var(X)+Var(Y).

Die Integrale werden i. a. über ihre Darstellung der Zufallsvariablen mittels charakteristischer Funktionen definiert. Sind die Funktionen Riemann-integrabel, so erhalten wir folgende Darstellungen:

Definition 2.4

Sei X:Ω eine Zufallsvariable auf einem Wahrscheinlichkeitsraum (Ω,,P).
1. Die Verteilungsfunktion F von X ist definiert durch
F(x)=P(X<x)=P({yΩ:X(y)<x}).
Die Dichtefunktion f von X (falls sie existiert) ist gegeben durch
F(x)=xf(s)ds oder F=f.
2. Der Erwartungswert und die Varianz einer Zufallsvariablen X, die eine Dichtefunktion besitzt, sind gegeben durch
E(X)=xf(x)dx,Var(X)=E(X2)E(X)2=(xE(X))2f(x)dx,
falls die entsprechenden Integrale existieren.

Wir geben folgende Beispiele an:

(1) Betrachten Ω=,μ und σ>0. Eine Zufallsvariable X mit der Dichtefunktion

f(x)=12πσ2exp((xμ)22σ2),x

heißt normalverteilt oder N(μ,σ2)-verteilt. Der Erwartungswert und die Varianz lauten E(X)=μ und Var(X)=σ2. Eine N(0,1)-verteilte Zufallsvariable nennen wir standardnormalverteilt. Für die Verteilungsfunktion F einer standardnormalverteilten Zufallsvariable schreiben wir auch

Φ(x)=12πxes2/2ds.

Eine Zufallsvariable X, deren Logarithmus normalverteilt ist, d. h. für die gilt, dass lnX normalvertelit ist, heißt lognormalverteilt.

(2) Wir betrachten den Kurs einer Aktie in einem zeit-diskreten Finanzmarkt. Damit kann der Aktienkurs um einen konstanten Faktor mit Wahrscheinlichkeit q steigen (”up”) und mit Wahrscheinlichkeit 1q fallen (”down”). Die Zufallsvariable X beschreibe die Anzahl der ”up”-Zustände in einem n-Perioden-Finanzmarkt. Dann ist der Wertebereich von X die Menge {0,1,2,,n}, und die Wahrscheinlichkeit, dass der Aktienkurs k-mal steigt, beträgt

P(X=k)=(nk)qk(1q)nk.

Wir sagen, dass X binomialverteilt oder B(n,q)-verteilt ist. Der Aktienkurs lautet dann (in den gleichen Notationen, wie im 1. Teil angegeben)

SXn=uXdnXS.

Die Verteilungsfunktion ist dann gegeben durch

F(m)=P(Xm)=k=0mP(X=k)=k=0m(nk)qk(1q)nk.

Ersetzen wir in der Definition der Verteilungsfunktion das Integral durch eine Summe, so erkennen wir, dass die Dichtefunktion gerade f(k)=P(X=k) ist. Damit sind der Erwartungswert und die Varianz gegeben durch

E(X)=k=0nkf(k)=nq,Var(X)=k=0n(kE(X))2f(k)=nq(1q).

Damit können wir die diskrete Formel (2.5) zur Berechnung der Optionsprämie C0 in der folgenden Form schreiben:

C0=SP(Xpm)KerTP(Xpm),

wobei Xp bzw. Xp jetzt B(n,p)- bzw. B(n,p)-verteilte Zufallsvariablen sind.

Stochastische Prozesse und Brownsche Bewegung. Der zeitstetige Aktienkurs St ist eine Zufallsvariable, d.h. wir sollten eigentlich S(ω,t) schreiben, wobei ω ein Element des zugrundeliegenden Wahrscheinlichkeitsraumes ist. Man lässt jedoch i. a. das Argument ω weg. Die Funktion ωS(ω,t) ist eine Zufallsvariable für festes t. Welche Regularität besitzt nun tS(ω,t) für festes ω? Die Klärung dieses Zusammenhangs führt auf den Begriff des stochastischen Prozesses.

Definition 2.5

Ein (stetiger) stochastischer Prozess Xt,t[0,), ist eine Familie von Zufallsvariablen X:Ω×[0,), wobei tX(ω,t) stetig ist für (fast alle) ωΩ.
Wir schreiben Xt=X(t)=X(,t), d.h. Xt ist eine Zufallsvariable.

Ein stochastischer Prozess ist also eine funktionenwertige Zufallsvariable. Ein spezieller stochastischer Prozess ist durch die sog. Brownsche Bewegung gegeben:
Sei Zk eine Folge von unabhängigen Zufallsvariablen, die mit jeweils mit Wahrscheinlichkeit 12 die Werte +Δt oder Δt annehmen und es sei weiter

Xtn=k=1nZk, wobei nΔt=t

ist. Dann gilt für alle k für Erwartungswert und Varianz E(Zk)=0,Var(Zk)=Δt und wegen (2.9)

E(Xtn)=0,Var(Xtn)=(E(Xtn)2)=nE(Z12)=nVar(Z1)=nΔt=t.

Man kann zeigen, dass Xtn für n (und damit für Δt0, so dass nΔt=t gilt) konvergiert. Den Grenzwert nennen wir die Brownsche Bewegung Wt.

Satz 2.1 (Wiener)

Es gibt einen stetigen stochastischen Prozess Wt mit den folgenden Eigenschaften:
  1. W0=0,
  2. Für alle 0st gilt: WtWs ist N(0,ts)-verteilt.
  3. Für alle 0rust gilt: W_t - W_s</math> und WuWr sind unabhängig.

Der stochastische Prozess Wt aus Satz 2.1 wird Wiener Prozess oder Brownsche Bewegung genannt. Aus Satz 2.1, (2) folgt unmittelbar, dass Wt N(0,t)-verteilt ist und dass gilt

(2.10) E((WtWs)2)=ts

Der Beweis von Satz 2.1 ist aufwändig.

Ein Aktienkursmodell. Mit Hilfe des Wiener-Prozesses können wir ein Modell für die Entwicklung von Aktienkursen angeben. Wir betrachten zunächst einen Bond Bt mit dem risikofreien Zinssatz r0. Dann gilt Bt=B0ert oder

lnBt=lnB0+rt.

Das legt den folgenden Ansatz für den Aktienkurs St nahe:

lnSt=lnS0+bt+Zufallseinfluss.

Da in einem arbitragefreien Markt die Anlage einer Aktie die gleiche Rendite wie ein Bond bringen soll, ersetzen wir rt durch bt. ein solches Verhalten kann dem (längerfristigen) Verlauf von Aktienkursen entnommen werden. Er verändert sich mit dem Driftterm und wird durch zufällige Schwankungen überlagert.

Für den Zufall nehmen wir an, dass er ohne Tendenz ist, d.h. der Erwartungswert der (zufälligen) Schwankungen sei Null; er hänge jedoch von der Zeit ab. Das wird durch den Ansatz

lnSt=lnS0+bt+σWt

erfüllt. Man definiert üblicherweise μ=b+12σ2, das impliziert

(2.11) lnSt=lnS0+(μ12σ2)t+σWt.

Der Aktienkurs ist dann gegeben durch

(2.12) St=S0exp(μt+σWt12σ2t).

Man nennt St eine geometrische Brownsche Bewegung; St ist lognormalverteilt. Bei der Analyse der Black-Scholes-Formel kommen wir auf die Beziehungen zurück.

Für den Erwartungswert und die Varianz von St gelten nun folgende Aussagen:

Lemma 2.1

Sei St eine geometrische Brownsche Bewegung. Dann gilt
(2.13) E(St)=S0eμt,
(2.14) Var(St)=S02exp(2μt)(eσ2t1).

Beweis:

Wir verwenden die Eigenschaft, dass für eine normalverteilte Zufallsgröße X gilt, dass exp(X) logarithmisch normalverteilt (log-normalverteilt) ist. Da Wt N(0,t)-verteilt ist, folgt

E(eσWt)=12πteσxex22tdx=12πteσ2t2e(xσt)22tdx=exp(σ2t2),

also

E(St)=S0exp(μtσ2t2)E(eσWt)=S0eμt

und

Var(St)=E(St2)E(St)2=S02exp((2μσ2)t)E(e2σWt)S02e2μt=S02e2μt(eσ2t1).

q.e.d.

Der Aktienkurs ist nach Gleichung (2.14) ein Produkt aus dem mittleren Kurs S0eμt und einer zufälligen Schwankung exp(σWt12σ2t) um diesen mittleren Kurs. Die Formeln (2.14) benötigen wir für die Betrachtungen der Binomialmethode im nächsten Abschnitt.

2.4 Der Algorithmus der Binomialmethode

Wir sind nun in der Lage, einen ersten numerischen Algorithmus vorzustellen, um den Preis einer europäischen oder einer amerikanischen Option approximativ zu bestimmen:
Wir zerlegen das Zeitintervall [0,T] in N Zeitschritte der Länge Δt=T/N und suchen Approximationen Sk von S(tk) zu den Zeitpunkten tk=kΔt,k=0,1,,N. Wir treffen folgende Annahmen:

Der Kurs Sk nimmt nach Ablauf der Zeit Δt entweder mit Wahrscheinlichkeit p den Wert Sk+1=uSk (”up”) oder mit Wahrscheinlichkeit 1p den Wert Sk+1=dSk (”down”) an.
Die erwartete Rendite im Zeitraum Δt entspricht dem risikolosen Zinssatz, d. h. wir setzen μ=r in (2.14):
(2.15) E(S(tk+1))=S(tk)erΔt,Var(S(tk+1))=(S(tk))2e2rΔt(eσ2Δt1).
Für den Optionspreis V(tk) gelte analog
(2.16) E(V(tk+1))=V(tk)erΔt.
Für den Kauf oder Verkauf von Wertpapieren fallen keine Transaktionskosten an, es erfolgen keine Dividendenzahlungen.

Die Parameter u,d,p sind (zunächst) unbekannt.

Die Grundidee der Binomialmethode ist es, die Erwartungswerte und Varianzen des (zeit-)kontinuierlichen und des (zeit-)diskreten Modells gleichzusetzen. Für das diskrete Modell gilt

(2.17) E(Sk+1)=puSk+(1p)dSk,
(2.18) Var(Sk+1)=E(Sk+12)(E(Sk+1))2
(2.19) =p(uSk)2+(1p)(dSk)2(puSk+(1p)dSk)2.

Ersetzen wir in (2.15) S(tk) durch die Approximation Sk und verwenden wir (2.19), so erhalten wir

SkerΔt=puSk+(1p)dSk,
Sk2e2rΔt(eσ2Δt1)=p(uSk)2+(1p)(dSk)2(puSk+(1p)dSk)2.

Die erste Gleichung ist äquivalent zu

(2.20) erΔt=pu+(1p)d.

Wir setzen diese Beziehung in die zweite Gleichung ein und erhalten

e2rΔt(eσ2Δt1)=pu2+(1p)d2(erΔt)2

oder die dazu äquivalente Gleichung

(2.21) e2rΔt+σ2Δt=pu2+(1p)d2.

Damit haben wir mit (2.20) und (2.21) zwei Gleichungen für die drei Unbekannten u,d,p. Wir wählen zusätzlich dazu eine Symmetriebeziehung für einen Kursanstieg bzw. einen Kursabfall:

(2.22) ud=1.

Die Wahl von p=12 wäre auch möglich. Damit ist noch das nichtlineare Gleichungssystem (2.20) bis (2.22) zu lösen:

u=β+β21,d=ββ21,p=erΔtdud,

wobei für β gilt

β=12(erΔt+e(r+σ2)Δt).

Die Binomialmethode wird nun in drei Schritten realisiert:
Sei S0 der Aktienkurs zur Zeit t=0 und seien Slk=uldklS0 für k=0,,N und l=0,,k die möglichen Aktienkurse zur Zeit tk.

1. Schritt: Initialisierung des Binomialbaumes. Berechne (für den Fall europäischer oder amerikanischer Optionen) l=0,,N:
SlN=uldNlS0.
2. Schritt: Berechne die Optionswerte V. Für t=T ist V(S,T) durch die Endbedingung bekannt. Zu berechnen ist folglich für l=0,,N:
VlN={(SlNK)+(Europ.) Call(KSlN)(Europ.) Put.
Bei amerikanischen Optionen ist hier zu überprüfen, ob ein vorzeitiger Kauf/Verkauf günstiger ist.

Den dritten Schritt der Berechnung der Optionspreise Vlk nehmen wir wie folgt vor:
Wir können (2.20) mit Hilfe der Definition von Slk auch in der Form

SlkerΔt=puSlk+(1p)dSlk=pSl+1,k+1+(1p)Sl,k+1

schreiben. Ersetzen wir in (2.16) den zeit-kontinuierlichen Optionspreis durch den zeitdiskreten, d. h. VkerΔt=E(Vk+1), so folgt für den Aktienkurs die Gleichung

VlkerΔt=pVl+1,k+1+(1p)Vl,k+1.
3. Schritt: (Rückwärtsiteration)
Für alle k=N1,,0 und für l=0,,k bestimme man im Falle europäischer Optionen
Vlk=erΔt(pVl+1,k+1+(1p)Vl,k+1)
und im Falle amerikanischer Optionen
V~lk=erΔt(pVl+1,k+1+(1p)Vl,k+1)
Vlk=max{VlN,V~lk}.

Der Wert V00 ist eine Approximation der Optionsprämie V(S0,0).

Die angegebenen Schritte können mittels Mathematica realisiert werden. Wie bei dem nachfolgenden Matlab-Programm wählen wir den Basiswert S0=5, die Zinsrate r=4%, die Volatilität σ=0.3, die Periodendauer T=1 und greifen z. B. auf ein Fünf-Perioden-Modell zurück.

Wir realisieren die payoff-Funktion

max{STX,0},max{XST,0}

in Mathematica durch die Funktionen

Clear[payoffCall, payoffPut];
payoffCall[s_] := Max[s - X, 0];
payoffPut[s_] := Max[X - s, 0];

in den benötigten Varianten für Call- und Put-Option. Das geschieht durch jeweiliges Vertauschen der beiden Summanden. Wir bilden weiter den Binomialbaum und berechnen mit Hilfe einer Prozedur die Optionswerte.

Clear[r, n, S0, h1, up, down, p]
{* up=1.1; down=0.95; *}
r = 0.04;
sigma = 0.3; 
n = 4; 
S0 = 5; 
h1 = 1/2*(Exp[-r/(n + 1)] + Exp[(r + sigma^2)/(n + 1)]);
up = h1 + Sqrt[h1^2 - 1];
down = 1/up;
p0 = (Exp[r/(n + 1)] - down)/(up - down);
Print["up = ", up]
Print["down = ", down]
stock = Table[5*up^(j - 1)*down^(i - j), {i, 1, 5}, {j, 1, i}];
MatrixForm[stock]

solution = Solve[{p*(1 + r) + q*(1 + r) == 1, up*p + down*q == 1}{p, q}]

Die Zinsrate gilt für jede Periode (was hier mit T=1 zusammenfällt!). Der gesamte Baum für die errechneten Werte p und q hat dann folgende Gestalt:

n = 4;
p = solution1, 1, 2;
q = solution1, 2, 2;
statePrices = Table[p^(j - 1)*q^(i - j), {i, 1, n + 1}, {j, 1, i}];
MatrixForm[statePrices]

mit dem (aktuellen, d. h. dem gegenwärtigen) Optionspreis für X=6 von

X = 6;
statePricesn + 1 . payoffPut /@ stockn + 1
statePricesn + 1 . Map[payoffPut, stockn + 1];
{* --> alternativer Befehl *}

Ein anderer Weg zur Berechnung des Optionspreises ist die Konstruktion eines intermediären Binomial-Baumes, wo auch Dividenden-Ausschüttungen, Änderungen von Zinssätzen oder Volatilitäten usw. eingebaut werden können, durch eine Prozedur, die sog. Europäische Optionen berücksichtigt.

N V(5,0) CPU-Zeit [sec]
10 1.096558 < 0.001
100 1.092326 0.06
500 1.094202 1.52
1000 1.094364 5.78
2000 1.094361 24.8

Die Übereinstimmung mit dem weiter unten durch eine MATLAB-Prozedur berechneten Put-Wert ist (bei Beachtung der jeweiligen Unterteilungszahl in Perioden) gegeben.

Als weiteres Beispiel ist ein Programm (in Matlab) zur Berechnung einer europäischen Put-Option mit K=6,r=0.04,σ=0.3,T=1 angegeben. Mit Hilfe der (weiter unten betrachteten) Black-Scholes-Gleichung erhält man als ”exakte” Lösung V(5,0)=1.09435; für die Binomialmethode sind für verschiedene Zerlegungen N die zeit-diskreten Lösungen in der Tabelle oben angegeben.

Bemerkung:

1. In Abschnitt 2.1 wurde begründet, dass die Arbitrage-Freiheit des Marktes die Ungleichungskette derΔtu nach sich zieht. Diese Ungleichungekette ist erfüllt, falls σ0 ist, denn es gilt

ββ21erΔtβ+β21|erΔtβ|β21(erΔtβ)2β21β12(erΔt+erΔt).

Die letzte Ungleichung ist für alls r0,σ0,Δt>0 erfüllt, was in praktischen Fällen zutreffend ist.

2. Eine alternative Binomialmethode erhalten wir durch Lösung der Gleichungen (2.20), (2.21) und p=12. Dieses Vorgehen liefert (Man versuche, den Beweis selbständig zu führen!)

d=erΔt(1eσ2Δt1),u=erΔt(1+eσ2Δt1),p=12.

In diesem Fall können die Parameter r,σ,Δt nicht beliebig sein, da sonst d<0 möglich ist. Dies wird verhindert, wenn wir den Zeitschritt klein genug wählen, nämlich

Δtln2σ2.

Hier findet sich ein Stabilitätsproblem der Numerik wieder, das wir aber momentan nicht näher beleuchten wollen.

3. Die beschriebene Binomialmethode basiert darauf, Erwartungswerte und Varianzen des zeit-kontinuierlichen und des zeit-diskreten Modells gleich zu setzen und weiter ud=1 oder p=12 vorauszusetzen. Eine weitere Variante erhält man, indem nicht nur die Erwartungswerte und die Varianzen, sondern auch die dritten Momente, d. h. Ausdrücke E(Sk)3, gleichgesetzt werden. Das führt auf die Gleichungen (2.20), (2.21) und auf

p(Sk)3+(1p)(dSk)3=Sk3e3(r+σ2)Δt.

Die Lösung lautet dann

d=Q2erΔt(Q+1Q2+2Q3),u=Q2erΔt(Q+1+Q2+2Q3),
p=erΔtdud,Q=eσΔt.

In diesem Falle gilt d>0 und p>0 für alle r,σ,Δt.

4. In dem Falle von Dividendenzahlungen auf den Basiswert (etwa zur Zeit t<T), fällt der Kurs sprunghaft um den Ausschüttungsbetrag. Dies kann modelliert werden, indem die Werte von S im Binomialbaum zur Zeit tk entsprechend vermindert werden.

5. Die Binomialmethode kann zur Trinomialmethode erweitert werden, indem zu jedem Zeitpunkt tk drei Änderungsmöglichkeiten für den Kurs des Basiswertes mit Wahrscheinlichkeit p,q,r mit p+q+r=1 zugelassen werden. Details findet man in [13].

% Binomialmethode fuer einen europäischen Put
% Input
K = 6; S0 = 5; r = 0.04; sigma = 0.3; T = 1; N = 99;
dt = T/(N+1);
beta = 0.5*(exp(-r*dt) + exp((r + sigma^2)*dt));
u = beta + sqrt(beta^2 - 1);
d = 1/u;
p = (exp(r*dt) - d)/(u - d);
% 1. Schritt
for j=1:N + 1
  S(j,N+1) = S0*u^(j - 1)*d^(N - j+1);
end
% 2. Schritt
for j=1:N + 1
  V(j,N+1) = max([K - S(j,N+1) 0]);
end
% 3. Schritt
e = exp(- r*dt);
for i=N - 1:1
  for j=1:i
    V(j,i) = e*(p*V(j + 1, i + 1) + (1 - p)*V(j, i + 1));
  end
end
% output
fprintf(’V(%f,0) = %f\n\n’, S0, V(1,1))

2.5 Ein Übergang vom Binomialbaum zur Black-Scholes-Formel

In Abschnitt 2.1 wurde der Preis einer europäischen Call-Option zur Zeit t=0 aus einem n-Perioden-Binomialbaum hergeleitet:

(2.24) C0=SP(Xpm)KerTP(Xpm),

wobei Xp und Xp binomialverteilte Zufallsgrößen mit B(n,p) und B(n,p) sind. Weiter ist m=min0kn{ukdnkSK0} und

p=erΔtdud,p=puerΔt.

Wir wollen nun den Grenzwert von C0 für n untersuchen. Wir setzen dafür T=nΔt,u>1 und ud=1. Weiter sei eine Zahl \sigma > 0 definiert durch

u=exp(σΔt).

Der Grenzübergang beruht auf dem zentralen Grenzwertsatz, den wir in folgender Variante benutzen:

Satz 2.2

Sei Xn,n eine Folge B(n,p)-verteilter Zufallsvariable auf einem Wahrscheinlichkeitsraum. Dann gilt
limnP(Xnnpnp(1p)x)=Φ(x)=12πxes22ds.

Wir beweisen, dass im zeit-kontinuierlichen Grenzfall Δt0 der diskrete Optionspreis (2.24) gegen die zeit-kontinuierliche Black-Scholes-Formel konvergiert.

Satz 2.3

Es gelte T=nΔt,u=exp(σΔt),d=exp(σΔt). Dann folgt
limΔt0C0=SΦ(d1)KerTΦ(d2),
wobei der Grenzwert Δt0 bei T=nΔt gerade n entspricht und
d1/2=ln(S/K)+(r±σ2/2)TσT.

Beweis:

Es genügt zu zeigen, dass

limΔt0P(Xpm)=Φ(d1),limΔt0P(Xpm)=Φ(d2)

Wir beweisen exemplarisch den zweiten Grenzwert. Wir zeigen zuerst, dass

(2.25) limΔt0np(1p)(lnud)2=σ2T,
(2.26) limΔt0n(plnud+lnd)=(rσ22)T.

Sowohl u als auch d hängen von Δt ab; somit ist auch p eine Funktion von Δt. Durch Anwendung der Regel von l’Hospital auf p=(exp(rΔt)d)/(ud),u=1/d=exp(σΔt) folgt

limΔt0p=limΔt0erΔteσΔteσΔteσΔt=limΔt0rerΔt+σ2ΔteσΔtσ2ΔteσΔt+σ2ΔteσΔt=12.

Eine weitere Rechnung (- die etwas mühsam ist -) zeigt, dass

limΔt02p1Δt=rσσ2.

Wir schließen aus diesen beiden Beziehungen (2.25), denn

limΔt0np(1p)(lnud)2=limΔt0TΔtp(1p)(2σΔt)2=limΔt04p(1p)σ2T=σ2T,
limΔt0n(plnud+lnd)=limΔt0TΔt(2p1)σ=(rσ22)T.

Um den zentralen Grenzwertsatz anwenden zu können, formulieren wir die Wahrscheinlichkeit für Xp um:

P(Xpm)=1P(Xp<m)=1P(Xpnpnp(1p)<mnpnp(1p))

Nach Definition von m gilt

mlnu+(nm)lndlnKSmlnSK+nlndlnud

und es exisitiert eine Zahl 0α<1, so dass

m=lnSK+nlndlnud+α.

Damit ergibt sich

P(Xpm)=1P(Xpnpnp(1p)<lnSKn(plnud+lnd)+αlnudlnudnp(1p)).

Wegen (2.25) und αln(u/d)=2ασΔt erhalten wir den Grenzwert für Δt0

P(Xpm)(Δt0)1Φ(ln(S/K)(rσ2/2)TσT),

woraus wegen 1Φ(x)=Φ(x)

P(Xpm)(Δt0)Φ(ln(S/K)+(rσ2/2)TσT)=Φ(d2)

und damit die Behauptung folgt.

q.e.d.