Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf ·...

21
Simulacija slučajnih procesa pomoću SDJ FINANCIJSKI PRAKTIKUM 10. VJEŽBE

Transcript of Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf ·...

Page 1: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

Simulacija slučajnih procesa pomoću SDJ

FINANCIJSKI PRAKTIKUM

10. VJEŽBE

Page 2: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 3: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 4: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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).

Page 5: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 6: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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).

Page 7: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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 .

Page 8: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 9: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 10: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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 |.

Page 11: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 12: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 13: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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 .

Page 14: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 15: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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

Page 16: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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

Page 17: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 18: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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).

Page 19: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 20: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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.

Page 21: Simulacija slucajnih procesa pomocu SDJ › nastava › finprakt › vjezbe › fp_vj10.pdf · Simuliranje trajektorija Zasimuliranjekoristimoraznezatopredviđenemetode,kojećemo

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 .