Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf ·...
Transcript of Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf ·...
Simulacija slučajnih procesa pomoću SDJ
FINANCIJSKI PRAKTIKUM
10. VJEŽBE
Problem
Slučajni proces (Xt)t≥0 zadan je pomoću SDJ
dX (t) = a(t,X (t))dt + b(t,X (t))dW (t), X (0) = x0.
gdje je (W (t))t≥0 standardno Brownovo gibanje. Želimo simuliratitrajektorije na vremenskom intervalu [0,T ] koristeći samo SDJ.To je nužno u situacijama kada nam rješenje SDJ nije eksplicitnopoznato, npr. za Cox-Ingersoll-Ross-ov proces koji modeliradinamiku kamatnih stopa.
Simuliranje trajektorija
Za simuliranje koristimo razne za to predviđene metode, koje ćemotestirati na primjeru geometrijskog Brownovog gibanja. Naime, zageometrijsko Brownovo gibanje imamo i eksplicitni izraz, pa ćemomoći usporediti simulaciju preko SDJ i direktnu simulaciju.Uočimo i iduće činjenicu: kod Itovog procesa slučajnost dolazi samood standardnog Brownovog gibanja pomoću kojeg je procesdefiniran. Ta će nam činjenica omogućiti da metode simulacijauspoređujemo na istim trajektorijama.Sve numeričke metode bazirane su na diskretizaciji.
1. Eulerova diskretizacija SDJ
Inicijalni uvjeti: t0 = 0, X (0) = x0, W (0) = 0 i zadamo ∆t.Korak:
tj+1 = tj + ∆t
∆W = Z√
∆t, Z ∼ N(0, 1)
xj+1 = xj + a(tj , xj)∆t + b(tj , xj)∆W .
Graf točaka (tj , xj) je jedna simulirana trajektorija procesa (Xt)t≥0.Pogreška kod ove metode je umjerena (u odnosu na druge poznatemetode).
Primjer 1. Geometrijsko Brownovo gibanje
Simulirajte trajektoriju geometrijskog Brownovog gibanja
dX (t) = 0.2X (t)dt + 0.1X (t)dW (t), X (0) = 35.
Eulerovom metodom na intervalu od 0 do T = 1 godina, tako dasimulirate u koracima od 1 dana. Usporedite dobivenu trajektoriju strajektorijom dobivenom preko egzaktne forme.
Zadatak 1. Cox-Ingersoll-Rossov proces
Eulerovom metodom simulirajte trajektoriju CIR procesa
dR(t) = (0.3− 10R(t))dt + 0.07√
R(t)dW (t), R(0) = 0.045.
na intervalu od 0 do T = 5 godina, tako da simulirate u koracimaod 1 dana.Napomena: kod CIR modela vrijednost bi dugoročno trebalakonvergirati k α
β = 0.310 = 0.03. U ovom modelu β = 10 sam po sebi
označava "brzinu konvergencije”. Gore zadani β nije realan (upraksi je manji).
2. Milsteinova diskretizacija autonomnih SDJ
Preduvjet je da SDJ bude autonomna, tj. oblika
dX (t) = a(X (t))dt + b(X (t))dW (t), X (0) = x0.
Inicijalni uvjeti: t0 = 0, X (0) = x0, W (0) = 0 i zadamo ∆t. Korak:
tj+1 = tj + ∆t
∆W = Z√
∆t, Z ∼ N(0, 1)
xj+1 = xj + a(xj)∆t + b(xj)∆W +12b(xj)b′(xj)(∆W 2 −∆t).
Graf točaka (tj , xj) je jedna simulirana trajektorija procesa X .
Primjer 2. CIR Milsteinovom metodom
Kako je SDJ za CIR model očito autonomna, testirat ćemo ovumetodu na simulaciji iste trajektorije CIR procesa kao i ranije teusporediti. Uočimo da je u ovom primjeru
a(x) = α− βx , b(x) = σ√
x ⇒ b′(x) =σ
2√
x.
Zadatak 2. Brownov most
Brownov most između točaka (0, a) i (1, b) je s jedne strane zadandirektno pomoću egzaktne forme
X (t) = (b − a)t + a + W (t)− tW (1), X (0) = a, t ∈ [0, 1],
a s druge strane pomoću SDJ
dX (t) =b − X (t)
1− tdt + dW (t), X (0) = a, t ∈ [0, 1].
Vizualnim kriterijem odredite najmanji h za koji je numeričkasimulacija pomoću SDJ jednako dobra kao i direktna simulacija.Koju ćete numeričku metodu koristiti i zašto? Parametri su:a = −2, b = 5, t0 = 0, T = 1.
Pogreška simulacija
Pokazuje se da greška ovisi o metodi te o glatkoći funkcija a(t, x) ib(t, x) kojima su zadani koeficijenti SDJ.Uvedimo iduće oznake:
I X (T ) - prava vrijednost u trenutku T . To je slučajan broj kojiovisi o trajektoriji Brownovog gibanja na kojoj je baziranatrajektorija od (X (t); 0 ≤ t ≤ T ).)
I yhT - vrijednost simulirana pomoću SDJ u trenutku T uzdiskretizaciju s korakom h. To je također slučajan broj kojiovisi o koraku h i trajektoriji Brownovog gibanja na kojoj jebazirana simulirana trajektorija (yh
t ; 0 ≤ t ≤ T ).Kada izračunamo X (T ) i yh
T na bazi iste trajektorije Brownovoggibanja, možemo ih direktno usporediti, tj. gledati
|X (T )− yhT |.
Apsolutna pogreška
Uočimo da je gornji broj slučajan (tj. slučajna varijabla). On namne govori ništa za iduću simulaciju, kada odaberemo neku drugutrajektoriju Brownovog gibanja. Stoga jedino ima smisla promatratineku vrst očekivane pogreške.Apsolutna pogreška za odabrani korak h jest
ε(h) = E(|X (T )− yhT |).
Procjenitelj za takvu pogrešku jest
ε(h) :=1N
N∑k=1
|X (T )k − yhT ,k |,
gdje je N broj simuliranih trajektorija Brownovog gibanja, X (T )kprava vrijednost bazirana na k-toj trajektoriji Brownovog gibanja, ayhT ,kvrijednost simulirana pomoću SDJ na bazi k-te trajektorijeBrownovog gibanja.
Jaka konvergencija
Kažemo da yhT jako konvergira prema X (T ) reda γ > 0 ako
ε(h) ≤ C · hγ = O(hγ) kada h→ 0.
Teorem: Za dovoljno "lijepe" funkcije a(t, x) i b(t, x) (vidjetipredavanja):
I rješenje dobiveno Eulerovom metodom jako konveregirareda 1/2.
I rješenje dobiveno Millsteinovom metodom jako konvergirareda 1.
No često nam nije od interesa simulirati baš vrijednost X (T ) nego,primjerice, prvi ili drugi moment ili neki drugi funkcional. U tomslučaju i sam pojam pogreške se mijenja s obzirom da sadasimulacijama želimo doći do npr. E(X (T )) , što više nije slučajnavarijabla nego broj.
Slaba konvergencija
Kažemo da yhT slabo konvergira prema X (T ) s obzirom na funkciju
g i to reda β > 0 ako |E(g(X (T )))− E(g(yhT ))| ≤ C · hβ = O(hβ)
kada h→ 0.
Teorem: Ako su a(t, x) i b(t, x) klase C 4 rješenje dobivenoEulerovom metodom slabo konveregira reda 1, za sve polinome g .
Primjer 3: GBG
Testirajte na Primjeru 1 apsolutne pogreške Eulerove i Milsteinovemetode za vrijednost X (T ). Uzmite h = 0.01, 0.005, 0.0025,koristeći za svaku metodu i svaki h po N = 100 simulacija.Odredite konstantu C za ovaj primjer za obe metode.
Rješenje
Pogreška Eulerovom metodom:
h= 0.01--------------pogreska= 0.0856978 C= 0.856978
h= 0.005--------------pogreska= 0.0597815 C= 0.8454381
h= 0.0025--------------pogreska= 0.04454729 C= 0.8909458
Rješenje
Pogreška Milsteinovom metodom:
h= 0.01--------------pogreska= 0.03279923 C= 3.279923
h= 0.005--------------pogreska= 0.01639357 C= 3.278714
h= 0.0025--------------pogreska= 0.008135149 C= 3.254059
Zadatak 3.
Testirajte na istom primjeru pogrešku Eulerove metode zavrijednost E(X (T )). Uzmite h = 0.01, 0.005, 0.0025. Za svaki hprocijenite E(yh
T ) koristeći N = 200 simulacija. Za E(X (T ))koristite eksplicitnu formulu:
E(X (T )) = X (0) · eTµ.
Odredite konstantu C za ovaj primjer.
Cijena opcije u Black-Scholesovom modelu
Evolucija cijene opcije zadana geometrijskim Brownovim gibanjemX . Risk free rate na sredstva u banci označavamo s r > 0.Označimo s V cijenu bilo koje izvedenice, koja u trenutku T donosiisplatu V (T ). Nearbitražna cijena takvog slučajnog zahtjeva utrenutku t jednaka je
V (t) = e−r(T−t)E [V (T )],
gdje je E očekivanje uz jedinstvenu martingalnu mjeru P uz koju jemodel bez arbitraže (neutralan na rizik) i potpun (svaki se slučajnizahtjev može replicirati).
Znamo da pod tom novom mjerom naše GBG mijenja distribucijuna način da sada zadovoljava egzaktnu formu
X (t) = X (0) · e(r−σ2/2)t+σW (t),
odnosno SDJ-u
dX (t) = rX (t)dt + σX (t)dW (t).
Upravo nam to što znamo distribuciju GBG obzirom na novuvjerojatnosnu mjeru omogućava da pomoću simulacija vrlo lakoodredimo cijenu bilo koje izvedenice (opcije, slučajnog zahtjeva) utrenutku t.
I simuliramo trajektoriju GBG-a s novom distribucijom dotrenutka T
I izračunamo V (T ) (što gotovo uvijek ovisi o trajektoriji GBG,bilo cijeloj bilo samo o zadnjem stanju)
I ponovimo postupak N puta, usrednjimo dobivene vrijednosti idiskontiramo
Pri tome možemo birati hoćemo li GBG simulirati pomoću SDJ ilipomoću jednadžbe kojom je eksplicitno zadano.
Primjer 4. Europska call opcija
Zadana je europska call opcija s dospijećem T = 3 godine i cijenomizvršenja K = 120 u BS modelu s parametrima r = 0.05, σ = 0.01,S(0) = 115. Izračunajte cijenu opcije u trenutku t = 01. direktno pomoću BS formule,2. simulacijom pomoću N=1000 simuliranih trajektorija GBG.
Prisjetimo se C = S0 · Φ(d1)− Ke−rtΦ(d2), gdje su
d1 =ln(S0/K ) + (r + σ2/2)t
σ√
t,
d2 = d1 − σ√
t.
Zadatak 4.
Zadana je azijska call opcija s dospijećem T = 3 godine i cijenomizvršenja K = 120, u BS modelu s parametrima r = 0.05, σ = 0.1 iS(1) = 100. Izračunajte cijenu opcije u trenutku t = 1 koristećiN = 1000 simulacija i korak h = 0.01. Izvršite tu istu simulacijunekoliko puta. Kolika je oscilacija u rezultatu? U ovom primjerumoramo simulirati cijelu trajektoriju na nekoj mreži točaka jercijena opcije u trenutku T ne ovisi samo o vrijednosti dionice utrenutku T .