amerikanske optioner og nansielle beregningerweb.math.ku.dk/~rolf/famoes/famoes_follow-up.pdf · i...
TRANSCRIPT
Amerikanske optioner og nansielle beregninger 1
Amerikanske optioner og
nansielle beregningerRolf Poulsen
Med den haringrdtarbejdende redaktions egne ord saring tilstraeligbes det
at artikler i FAMOslashS henvender sig til alle paring IMF (ansatte og
studerende) Jeg vil dog straks begraelignse naeligrvaeligrende skriveriertil den delmaeligngde af foslashrnaeligvnte der opfylder mindst en af foslashl-gende ikke-disjunkte betingelser (a) har et aringbent sind (b) harhaft Fin1 (c) har laeligst Lando (1999) Hovedresultatet i bemeld-te fortrinlige artikel kan fortaeliglles bemaeligrkelsesvaeligrdigt kort i ar-bitrageprisfastsaeligttelsesteoriens foslashrste1 hovedsaeligtning En nansi-el model (π δ r) (priser dividender rente) paring den stokastiskebasis (Ω Ftt=01T P ) (udfaldsrum ltrering sandsynligheds-
maringl) er arbitragefri hvis og kun hvis den har et aeligkvivalent mar-tingalmaringl Q (risiko-neutralt maringl)
Et centralt element i en videnskabelig artikel er at placere sigi forhold til litteraturen Denne er ingen undtagelse Men de frie-re toslashjler tillader mig at forstaring litteratur paring samme maringde som folkudenfor den akademiske verdens beskyttede vaeligrksted Nemlig som litteratur I viktorianske kriminalromaner afsloslashres i det sidstekapitel hvor obersten de uvorne boslashrn gammeljomfruerne mv er
1Som ordenstalsbetegnelsen indikerer er der ogsaring en hovedsaeligtning num-mer to Den siger at en arbitragefri model er komplet hvis og kun hvis Q erentydigt Fra et praktisk synspunkt er dette mere vigtigt da det fortaeligller atenhver (ny) kontrakt kan replikeres Den har derfor kun en eneste fornuftigpris De konkrete modeller vi moslashder i denne artikel er komplette Men be-regningsmaeligssige teknikker og trick er ofte uahaeligngige af hvilket af de maringskemange martingalmaringl man benytter Der er ikke nogen almindeligt accepterettredje eller hoslashjere hovedsaeligtning
X aringrgang nr X
2 Amerikanske optioner og nansielle beregninger
forsamlet i biblioteket hvordan og hvorfor butleren gjorde detParing samme maringde vil jeg tilsidst afsloslashre hvad amerikanske optionerburde blive kaldt Undervejs skal vi saring grueligt meget igennemdvs jeg kommer ind paring en raeligkke emner fra min forskning Meden karikeret 70-formulering siger det enormt meget om samfun-det Holdbarheden af litteratur med dette som hovedmaringl har vistsig tvivlsom Jeg lader det vaeligre op til laeligseren om det bliver bed-re eller vaeligrre hvis man som overordnet princip soslashger at byttelitteratur ud med forskning
Arbitragefri prisfastsaeligttelse taelignk globalt regn lokalt
Foslashrst omskriver vi den globale denition af et martingalmaringl fraLando (1999) til en lokal karakterisation Vi betragter et vilkaringligt2
aktiv med en givet dividende-proces δ tilpasset vores ltreringog lader ˜ angive diskontering med det lokalt riskofrie aktiv dvsdivision med R0t = (1 + r0) middot (1 + r1) middot middot (1 + rtminus1) hvor r erden muligvis stokastiske korte rente I en arbitragefri modelskal aktivets prisproces π opfylde
π(t) = EQt
Tsumj=t+1
δ(t)
= EQt(δ(t+ 1)
R0t+1
)+ EQt
EQt+1
Tsumj=t+2
δ(t)
︸ ︷︷ ︸
=π(t+1)
2Arbitraeligrt kunne man sige men det ord er belastet i netop denne sam-menhaeligng
Famoslashs skabelon
Rolf Poulsen 3
hvor vi har brugt reglen om itererede forventninger (eller taringrne-genskaben) og linearitet af betinget forventning Heraf faringr vi vedbrug af denitionen af R-processen specielt at R0t+1 er Ft-maringlelig at
π(t) =1
1 + rtEQt (π(t+ 1) + δ(t+ 1)) (1)
Denne lokaliserede ligning (t paring venstresiden kun t+ 1 paring hoslashjre-siden) er overmaringde nyttig Den er hjertet i eektive beregningeri modeller med Markov-struktur den fortaeligller hvordan vi haringnd-terer dividendebetalinger og stokastiske renter3 og den er centralfor at forstaring hvordan amerikanske optioner prisfastsaeligttes
Amerikanske optioner mere subtilt end som saring
En europaeligisk option giver dens ejer ret men ikke pligt til atgoslashre et eller andet paring et (eneste) paring forharingnd fastlagt tidspunktT (med svag misbrug af notation) Som regel er valget trivieltog vi siger derfor blot at ejeren modtager beloslashbet g(S(T )) paringtidspunkt T hvor g er payo-funktionen Fx er g(x) = max(K minusx 0) = (K minus x)+ for en strike-K put-option4 hvor ejeren harret men ikke pligt til saeliglge det underliggende aktiv til prisenK For en amerikansk option vaeliglger ejeren selv hvornaringr optionenskal indfries lad os kalde tidspunktet τ hvorefter han (straks)modtager g(S(τ)) Ordene amerikansk og europaeligisk har her ingen
3En fordel ved den diskrete ramme er at vi faringr det hele i et hug studerendei FinKont-kurser kan skrive under paring at saring let garingr det ikke altid
4Hvis det underliggende aktiv ikke udbetaler dividender i optionens loslashbe-tid (og renten er positiv) saring er det aldrig optimalt at indfri en amerikanskcall-option foslashrtidigt Derfor er put-optionen det gennemgaringende eksempel her
X aringrgang nr X
4 Amerikanske optioner og nansielle beregninger
geogrask betydning vi kunne ligesaring godt kalde optionerne orangeeller varmforzinkede5
Ejeren af en (endnu ikke indfriet) amerikansk option skal heletiden overveje om hans option er mere vaeligrd doslashd end i live Hvishan undlader at indfri og derved holder optionen i live saring faringr hanet lignende valg i naeligste periode Optionsejeren goslashr hvad der ermest fordelagtigt og oversat til ligninger giver det en dynamiskprogrammeringsformulering eller Bellman-ligning for prisen πAparing en amerikansk option
πA(t) = max
g(S(t))
1
1 + rtEQt (πA(t+ 1))
(2)
Jeg haringber ovenfor at have kommunikeret det intuitivt rimelige iligning (2) og som vi om lidt vil se er det kodningsmaeligssigt letteregjort end sagt Men matematiskteoretisk er det mere subtilt ThiHvis det er 1 led paring hoslashjresiden i (2) (kaldet indfrielsesvaeligrdien 2led kaldes tidsvaeligrdien) der er stoslashrst saring strider det lodret imodligning (1) Ups Der hvor kaninen forsvinder ned i hatten er at(1) udtaler sig om priser for aktiver hvis betalinger er givet paringforharingnd Men altsaring igen givet som tilpasset stokastisk procesdvs naringr et traelig repraeligsenterende informationsstrukturen er blevetlavet saring kendes aktivets betalinger i hver eneste knude For enamerikansk option har ejeren derimod en yderst ikke-triviel ind-virkning paring betalingsprocessen Ikke desto mindre kan man viseat (2) vitterlig giver den eneste arbitragefri amerikanske options-
5En historie fortaeligller at den (amerikanske) oslashkonom Paul Samuelson somden foslashrste brugte betegnelsen amerikansk om optioner med foslashrtidige ind-frielsesrettigheder Han gjorde det for at signalere noget bedre noget mereavanceret Selveste internettet har dog vaeligret ude af stand til at bekraeligfte denhistorie saring
Famoslashs skabelon
Rolf Poulsen 5
S0lt-100 rlt-003 alphalt-007 sigmalt-020expirylt-1 strikelt-100nlt-expiry252 dtlt-expirynult-exp(alphadt+sigmasqrt(dt)) dlt-exp(alphadt-sigmasqrt(dt))Rlt-exp(rdt)qlt-(R-d)(u-d)
Slt-putlt-matrix(0nrow=(n+1)ncol=(n+1))put[n+1]lt-pmax(strike-S0u^(0n)d^(n0)0)for (i in n1)
for (j in 1i)S[ji]lt-S0u^(j-1) d^(i-j)put[ji]lt-max(max(strike-S[ji]0) (qput[j+1i+1]+(1-q)put[ji+1])R)
Tabel 1 R-kode med en naturlig algoritme til prisfastsaeligttelse afen amerikansk put-option For at prisfastsaeligtte den europaeligiskeoption fjernes den kursiverede del af koden Koden under stregenvil senere rykke ud for at foroslashge beregningshastigheden Kodenligger i wwwmathkudk~rolfFAMOES
pris6 Det kraeligver en udugt til optimale stoppetider hvilket goslashresglimrende i kapitel 2 i Lamberton amp Lapeyre (1996) Og i Fin2
Amerikanske optioner nemmere gjort end sagt
For at illustrere hvordan man faktisk regner amerikanske options-priser ud lad os da traeligkke en arbejdshest af stalden standardbi-nomialmodellen som vist i Figur 1 Her udvikler aktiekursen sig
6En anden detalje der afsloslashres naringr man arbejder sig igennem beviset for(2) er at vi rettelig burde sige at πA(t) er tid-t prisen paring den amerikanskeoption givet den endnu ikke er blevet indfriet
X aringrgang nr X
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
2 Amerikanske optioner og nansielle beregninger
forsamlet i biblioteket hvordan og hvorfor butleren gjorde detParing samme maringde vil jeg tilsidst afsloslashre hvad amerikanske optionerburde blive kaldt Undervejs skal vi saring grueligt meget igennemdvs jeg kommer ind paring en raeligkke emner fra min forskning Meden karikeret 70-formulering siger det enormt meget om samfun-det Holdbarheden af litteratur med dette som hovedmaringl har vistsig tvivlsom Jeg lader det vaeligre op til laeligseren om det bliver bed-re eller vaeligrre hvis man som overordnet princip soslashger at byttelitteratur ud med forskning
Arbitragefri prisfastsaeligttelse taelignk globalt regn lokalt
Foslashrst omskriver vi den globale denition af et martingalmaringl fraLando (1999) til en lokal karakterisation Vi betragter et vilkaringligt2
aktiv med en givet dividende-proces δ tilpasset vores ltreringog lader ˜ angive diskontering med det lokalt riskofrie aktiv dvsdivision med R0t = (1 + r0) middot (1 + r1) middot middot (1 + rtminus1) hvor r erden muligvis stokastiske korte rente I en arbitragefri modelskal aktivets prisproces π opfylde
π(t) = EQt
Tsumj=t+1
δ(t)
= EQt(δ(t+ 1)
R0t+1
)+ EQt
EQt+1
Tsumj=t+2
δ(t)
︸ ︷︷ ︸
=π(t+1)
2Arbitraeligrt kunne man sige men det ord er belastet i netop denne sam-menhaeligng
Famoslashs skabelon
Rolf Poulsen 3
hvor vi har brugt reglen om itererede forventninger (eller taringrne-genskaben) og linearitet af betinget forventning Heraf faringr vi vedbrug af denitionen af R-processen specielt at R0t+1 er Ft-maringlelig at
π(t) =1
1 + rtEQt (π(t+ 1) + δ(t+ 1)) (1)
Denne lokaliserede ligning (t paring venstresiden kun t+ 1 paring hoslashjre-siden) er overmaringde nyttig Den er hjertet i eektive beregningeri modeller med Markov-struktur den fortaeligller hvordan vi haringnd-terer dividendebetalinger og stokastiske renter3 og den er centralfor at forstaring hvordan amerikanske optioner prisfastsaeligttes
Amerikanske optioner mere subtilt end som saring
En europaeligisk option giver dens ejer ret men ikke pligt til atgoslashre et eller andet paring et (eneste) paring forharingnd fastlagt tidspunktT (med svag misbrug af notation) Som regel er valget trivieltog vi siger derfor blot at ejeren modtager beloslashbet g(S(T )) paringtidspunkt T hvor g er payo-funktionen Fx er g(x) = max(K minusx 0) = (K minus x)+ for en strike-K put-option4 hvor ejeren harret men ikke pligt til saeliglge det underliggende aktiv til prisenK For en amerikansk option vaeliglger ejeren selv hvornaringr optionenskal indfries lad os kalde tidspunktet τ hvorefter han (straks)modtager g(S(τ)) Ordene amerikansk og europaeligisk har her ingen
3En fordel ved den diskrete ramme er at vi faringr det hele i et hug studerendei FinKont-kurser kan skrive under paring at saring let garingr det ikke altid
4Hvis det underliggende aktiv ikke udbetaler dividender i optionens loslashbe-tid (og renten er positiv) saring er det aldrig optimalt at indfri en amerikanskcall-option foslashrtidigt Derfor er put-optionen det gennemgaringende eksempel her
X aringrgang nr X
4 Amerikanske optioner og nansielle beregninger
geogrask betydning vi kunne ligesaring godt kalde optionerne orangeeller varmforzinkede5
Ejeren af en (endnu ikke indfriet) amerikansk option skal heletiden overveje om hans option er mere vaeligrd doslashd end i live Hvishan undlader at indfri og derved holder optionen i live saring faringr hanet lignende valg i naeligste periode Optionsejeren goslashr hvad der ermest fordelagtigt og oversat til ligninger giver det en dynamiskprogrammeringsformulering eller Bellman-ligning for prisen πAparing en amerikansk option
πA(t) = max
g(S(t))
1
1 + rtEQt (πA(t+ 1))
(2)
Jeg haringber ovenfor at have kommunikeret det intuitivt rimelige iligning (2) og som vi om lidt vil se er det kodningsmaeligssigt letteregjort end sagt Men matematiskteoretisk er det mere subtilt ThiHvis det er 1 led paring hoslashjresiden i (2) (kaldet indfrielsesvaeligrdien 2led kaldes tidsvaeligrdien) der er stoslashrst saring strider det lodret imodligning (1) Ups Der hvor kaninen forsvinder ned i hatten er at(1) udtaler sig om priser for aktiver hvis betalinger er givet paringforharingnd Men altsaring igen givet som tilpasset stokastisk procesdvs naringr et traelig repraeligsenterende informationsstrukturen er blevetlavet saring kendes aktivets betalinger i hver eneste knude For enamerikansk option har ejeren derimod en yderst ikke-triviel ind-virkning paring betalingsprocessen Ikke desto mindre kan man viseat (2) vitterlig giver den eneste arbitragefri amerikanske options-
5En historie fortaeligller at den (amerikanske) oslashkonom Paul Samuelson somden foslashrste brugte betegnelsen amerikansk om optioner med foslashrtidige ind-frielsesrettigheder Han gjorde det for at signalere noget bedre noget mereavanceret Selveste internettet har dog vaeligret ude af stand til at bekraeligfte denhistorie saring
Famoslashs skabelon
Rolf Poulsen 5
S0lt-100 rlt-003 alphalt-007 sigmalt-020expirylt-1 strikelt-100nlt-expiry252 dtlt-expirynult-exp(alphadt+sigmasqrt(dt)) dlt-exp(alphadt-sigmasqrt(dt))Rlt-exp(rdt)qlt-(R-d)(u-d)
Slt-putlt-matrix(0nrow=(n+1)ncol=(n+1))put[n+1]lt-pmax(strike-S0u^(0n)d^(n0)0)for (i in n1)
for (j in 1i)S[ji]lt-S0u^(j-1) d^(i-j)put[ji]lt-max(max(strike-S[ji]0) (qput[j+1i+1]+(1-q)put[ji+1])R)
Tabel 1 R-kode med en naturlig algoritme til prisfastsaeligttelse afen amerikansk put-option For at prisfastsaeligtte den europaeligiskeoption fjernes den kursiverede del af koden Koden under stregenvil senere rykke ud for at foroslashge beregningshastigheden Kodenligger i wwwmathkudk~rolfFAMOES
pris6 Det kraeligver en udugt til optimale stoppetider hvilket goslashresglimrende i kapitel 2 i Lamberton amp Lapeyre (1996) Og i Fin2
Amerikanske optioner nemmere gjort end sagt
For at illustrere hvordan man faktisk regner amerikanske options-priser ud lad os da traeligkke en arbejdshest af stalden standardbi-nomialmodellen som vist i Figur 1 Her udvikler aktiekursen sig
6En anden detalje der afsloslashres naringr man arbejder sig igennem beviset for(2) er at vi rettelig burde sige at πA(t) er tid-t prisen paring den amerikanskeoption givet den endnu ikke er blevet indfriet
X aringrgang nr X
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 3
hvor vi har brugt reglen om itererede forventninger (eller taringrne-genskaben) og linearitet af betinget forventning Heraf faringr vi vedbrug af denitionen af R-processen specielt at R0t+1 er Ft-maringlelig at
π(t) =1
1 + rtEQt (π(t+ 1) + δ(t+ 1)) (1)
Denne lokaliserede ligning (t paring venstresiden kun t+ 1 paring hoslashjre-siden) er overmaringde nyttig Den er hjertet i eektive beregningeri modeller med Markov-struktur den fortaeligller hvordan vi haringnd-terer dividendebetalinger og stokastiske renter3 og den er centralfor at forstaring hvordan amerikanske optioner prisfastsaeligttes
Amerikanske optioner mere subtilt end som saring
En europaeligisk option giver dens ejer ret men ikke pligt til atgoslashre et eller andet paring et (eneste) paring forharingnd fastlagt tidspunktT (med svag misbrug af notation) Som regel er valget trivieltog vi siger derfor blot at ejeren modtager beloslashbet g(S(T )) paringtidspunkt T hvor g er payo-funktionen Fx er g(x) = max(K minusx 0) = (K minus x)+ for en strike-K put-option4 hvor ejeren harret men ikke pligt til saeliglge det underliggende aktiv til prisenK For en amerikansk option vaeliglger ejeren selv hvornaringr optionenskal indfries lad os kalde tidspunktet τ hvorefter han (straks)modtager g(S(τ)) Ordene amerikansk og europaeligisk har her ingen
3En fordel ved den diskrete ramme er at vi faringr det hele i et hug studerendei FinKont-kurser kan skrive under paring at saring let garingr det ikke altid
4Hvis det underliggende aktiv ikke udbetaler dividender i optionens loslashbe-tid (og renten er positiv) saring er det aldrig optimalt at indfri en amerikanskcall-option foslashrtidigt Derfor er put-optionen det gennemgaringende eksempel her
X aringrgang nr X
4 Amerikanske optioner og nansielle beregninger
geogrask betydning vi kunne ligesaring godt kalde optionerne orangeeller varmforzinkede5
Ejeren af en (endnu ikke indfriet) amerikansk option skal heletiden overveje om hans option er mere vaeligrd doslashd end i live Hvishan undlader at indfri og derved holder optionen i live saring faringr hanet lignende valg i naeligste periode Optionsejeren goslashr hvad der ermest fordelagtigt og oversat til ligninger giver det en dynamiskprogrammeringsformulering eller Bellman-ligning for prisen πAparing en amerikansk option
πA(t) = max
g(S(t))
1
1 + rtEQt (πA(t+ 1))
(2)
Jeg haringber ovenfor at have kommunikeret det intuitivt rimelige iligning (2) og som vi om lidt vil se er det kodningsmaeligssigt letteregjort end sagt Men matematiskteoretisk er det mere subtilt ThiHvis det er 1 led paring hoslashjresiden i (2) (kaldet indfrielsesvaeligrdien 2led kaldes tidsvaeligrdien) der er stoslashrst saring strider det lodret imodligning (1) Ups Der hvor kaninen forsvinder ned i hatten er at(1) udtaler sig om priser for aktiver hvis betalinger er givet paringforharingnd Men altsaring igen givet som tilpasset stokastisk procesdvs naringr et traelig repraeligsenterende informationsstrukturen er blevetlavet saring kendes aktivets betalinger i hver eneste knude For enamerikansk option har ejeren derimod en yderst ikke-triviel ind-virkning paring betalingsprocessen Ikke desto mindre kan man viseat (2) vitterlig giver den eneste arbitragefri amerikanske options-
5En historie fortaeligller at den (amerikanske) oslashkonom Paul Samuelson somden foslashrste brugte betegnelsen amerikansk om optioner med foslashrtidige ind-frielsesrettigheder Han gjorde det for at signalere noget bedre noget mereavanceret Selveste internettet har dog vaeligret ude af stand til at bekraeligfte denhistorie saring
Famoslashs skabelon
Rolf Poulsen 5
S0lt-100 rlt-003 alphalt-007 sigmalt-020expirylt-1 strikelt-100nlt-expiry252 dtlt-expirynult-exp(alphadt+sigmasqrt(dt)) dlt-exp(alphadt-sigmasqrt(dt))Rlt-exp(rdt)qlt-(R-d)(u-d)
Slt-putlt-matrix(0nrow=(n+1)ncol=(n+1))put[n+1]lt-pmax(strike-S0u^(0n)d^(n0)0)for (i in n1)
for (j in 1i)S[ji]lt-S0u^(j-1) d^(i-j)put[ji]lt-max(max(strike-S[ji]0) (qput[j+1i+1]+(1-q)put[ji+1])R)
Tabel 1 R-kode med en naturlig algoritme til prisfastsaeligttelse afen amerikansk put-option For at prisfastsaeligtte den europaeligiskeoption fjernes den kursiverede del af koden Koden under stregenvil senere rykke ud for at foroslashge beregningshastigheden Kodenligger i wwwmathkudk~rolfFAMOES
pris6 Det kraeligver en udugt til optimale stoppetider hvilket goslashresglimrende i kapitel 2 i Lamberton amp Lapeyre (1996) Og i Fin2
Amerikanske optioner nemmere gjort end sagt
For at illustrere hvordan man faktisk regner amerikanske options-priser ud lad os da traeligkke en arbejdshest af stalden standardbi-nomialmodellen som vist i Figur 1 Her udvikler aktiekursen sig
6En anden detalje der afsloslashres naringr man arbejder sig igennem beviset for(2) er at vi rettelig burde sige at πA(t) er tid-t prisen paring den amerikanskeoption givet den endnu ikke er blevet indfriet
X aringrgang nr X
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
4 Amerikanske optioner og nansielle beregninger
geogrask betydning vi kunne ligesaring godt kalde optionerne orangeeller varmforzinkede5
Ejeren af en (endnu ikke indfriet) amerikansk option skal heletiden overveje om hans option er mere vaeligrd doslashd end i live Hvishan undlader at indfri og derved holder optionen i live saring faringr hanet lignende valg i naeligste periode Optionsejeren goslashr hvad der ermest fordelagtigt og oversat til ligninger giver det en dynamiskprogrammeringsformulering eller Bellman-ligning for prisen πAparing en amerikansk option
πA(t) = max
g(S(t))
1
1 + rtEQt (πA(t+ 1))
(2)
Jeg haringber ovenfor at have kommunikeret det intuitivt rimelige iligning (2) og som vi om lidt vil se er det kodningsmaeligssigt letteregjort end sagt Men matematiskteoretisk er det mere subtilt ThiHvis det er 1 led paring hoslashjresiden i (2) (kaldet indfrielsesvaeligrdien 2led kaldes tidsvaeligrdien) der er stoslashrst saring strider det lodret imodligning (1) Ups Der hvor kaninen forsvinder ned i hatten er at(1) udtaler sig om priser for aktiver hvis betalinger er givet paringforharingnd Men altsaring igen givet som tilpasset stokastisk procesdvs naringr et traelig repraeligsenterende informationsstrukturen er blevetlavet saring kendes aktivets betalinger i hver eneste knude For enamerikansk option har ejeren derimod en yderst ikke-triviel ind-virkning paring betalingsprocessen Ikke desto mindre kan man viseat (2) vitterlig giver den eneste arbitragefri amerikanske options-
5En historie fortaeligller at den (amerikanske) oslashkonom Paul Samuelson somden foslashrste brugte betegnelsen amerikansk om optioner med foslashrtidige ind-frielsesrettigheder Han gjorde det for at signalere noget bedre noget mereavanceret Selveste internettet har dog vaeligret ude af stand til at bekraeligfte denhistorie saring
Famoslashs skabelon
Rolf Poulsen 5
S0lt-100 rlt-003 alphalt-007 sigmalt-020expirylt-1 strikelt-100nlt-expiry252 dtlt-expirynult-exp(alphadt+sigmasqrt(dt)) dlt-exp(alphadt-sigmasqrt(dt))Rlt-exp(rdt)qlt-(R-d)(u-d)
Slt-putlt-matrix(0nrow=(n+1)ncol=(n+1))put[n+1]lt-pmax(strike-S0u^(0n)d^(n0)0)for (i in n1)
for (j in 1i)S[ji]lt-S0u^(j-1) d^(i-j)put[ji]lt-max(max(strike-S[ji]0) (qput[j+1i+1]+(1-q)put[ji+1])R)
Tabel 1 R-kode med en naturlig algoritme til prisfastsaeligttelse afen amerikansk put-option For at prisfastsaeligtte den europaeligiskeoption fjernes den kursiverede del af koden Koden under stregenvil senere rykke ud for at foroslashge beregningshastigheden Kodenligger i wwwmathkudk~rolfFAMOES
pris6 Det kraeligver en udugt til optimale stoppetider hvilket goslashresglimrende i kapitel 2 i Lamberton amp Lapeyre (1996) Og i Fin2
Amerikanske optioner nemmere gjort end sagt
For at illustrere hvordan man faktisk regner amerikanske options-priser ud lad os da traeligkke en arbejdshest af stalden standardbi-nomialmodellen som vist i Figur 1 Her udvikler aktiekursen sig
6En anden detalje der afsloslashres naringr man arbejder sig igennem beviset for(2) er at vi rettelig burde sige at πA(t) er tid-t prisen paring den amerikanskeoption givet den endnu ikke er blevet indfriet
X aringrgang nr X
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 5
S0lt-100 rlt-003 alphalt-007 sigmalt-020expirylt-1 strikelt-100nlt-expiry252 dtlt-expirynult-exp(alphadt+sigmasqrt(dt)) dlt-exp(alphadt-sigmasqrt(dt))Rlt-exp(rdt)qlt-(R-d)(u-d)
Slt-putlt-matrix(0nrow=(n+1)ncol=(n+1))put[n+1]lt-pmax(strike-S0u^(0n)d^(n0)0)for (i in n1)
for (j in 1i)S[ji]lt-S0u^(j-1) d^(i-j)put[ji]lt-max(max(strike-S[ji]0) (qput[j+1i+1]+(1-q)put[ji+1])R)
Tabel 1 R-kode med en naturlig algoritme til prisfastsaeligttelse afen amerikansk put-option For at prisfastsaeligtte den europaeligiskeoption fjernes den kursiverede del af koden Koden under stregenvil senere rykke ud for at foroslashge beregningshastigheden Kodenligger i wwwmathkudk~rolfFAMOES
pris6 Det kraeligver en udugt til optimale stoppetider hvilket goslashresglimrende i kapitel 2 i Lamberton amp Lapeyre (1996) Og i Fin2
Amerikanske optioner nemmere gjort end sagt
For at illustrere hvordan man faktisk regner amerikanske options-priser ud lad os da traeligkke en arbejdshest af stalden standardbi-nomialmodellen som vist i Figur 1 Her udvikler aktiekursen sig
6En anden detalje der afsloslashres naringr man arbejder sig igennem beviset for(2) er at vi rettelig burde sige at πA(t) er tid-t prisen paring den amerikanskeoption givet den endnu ikke er blevet indfriet
X aringrgang nr X
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
6 Amerikanske optioner og nansielle beregninger
som
S(t+ ∆t) = S(t)times
exp(α∆t+ σradic
∆t) = u m ssh 12
exp(α∆tminus σradic
∆t) = d m ssh 12
hvor α og σ er konstanter Aktieafkastenes spredning bestemmes afσ der kaldes volatiliteten Igen har vi foretaget en subtil udvidelseaf modelrammen Vi kan ikke blot variere antallet af skridt menogsaring og uafhaeligngigt heraf tidsskridtlaeligngden ∆t Man kan sposlashrgehvorfor tidsskaleringen er som den er specielt hvorfor plusmnσ
radic∆t
modellerer usikkerheden Det vil dog foslashre for vidt at komme ind paringdet her men tro mig Det er det7 Vi antager renten er konstantog parametriserer diskonteringsfaktoren som R0t = Rt∆t hvorR = er∆t Den betingede Q-op-sandsynlighed er den samme i alleknuder
q =Rminus duminus d
Taylor-udvilker man q i ∆t ser man at led af formen σradic
∆t domi-nerer for smaring tidsskridt (hvor
radic∆t ∆t) Kombineres det med
en tilpas kraftig version af den centrale graelignsevaeligrdisaeligtning sekapitel 7 i Lando amp Poulsen (2006) kan vise man at α asymp-totisk ingen eekt har paring optionspriser og derfor ofte udladesSandsynlighedsteoretikere kan skimte Girsanovs saeligtning her
Tabel 1 giver en R-implementation af en naturlig algoritme tiludregning af prisen paring en amerikansk put-option R er et open
source programmeringssprog det kan downloades fra wwwr-projectorgog er uhyre nemt at installere Som noget meget nyttigt ifm
7En indikation af rimeligheden kan man faring saringledes Benyt empiriskehorisont-h log-afkast Ah(t) = ln(S(t∆)S(t minus h∆t)) til at estimere α ogσ Foretag estimationen for forskellige horisonter h og se at α og σ er no-genlunde uparingvirkede heraf
Famoslashs skabelon
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 7
00 02 04 06 08 10
100
150
200
tid t
aktie
kurs
S(t
)
Figur 1 Aktiekursgitter for standardbinomialmodellen (med 10tidsskridt og ioslashvrigt parametre som i Tabel 1) De fede knuder(og aht graske udtryk linjerne der forbinder dem) angiver denkritiske indfrielsesgraelignse for en amerikansk strike-100 put-optionFoslashrste gang aktiekursen falder til dette niveau indfries optionen
forskningssamarbejde eller projektvejledning saring er R-kode me-get transportabel Man kan koslashre hinandens programmer udenden udvidede eksamen som systemadministrator R har staeligrkestatistik-vaeligrktoslashjer (med en bred fortolkning af statistik der in-kluderer fx lineaeligr algebra og grak) og minder syntaksmaeligssigt omMatlab Det er hvad dataloger kalder et domain-specic language
(DSL) det retter sig imod brugere der skal loslashse bestemte typeropgaver og har saring nyttig funktionalitet hertil indbygget Modsaeligt-ningen til DSL er general-purpose languages (GPL) som fx C++
X aringrgang nr X
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
8 Amerikanske optioner og nansielle beregninger
Java eller Python Jeg kalder som regel DSL for hoslashjniveau-sprogog GPL for lavniveau-sprog Datalogiske pedanter kan sikkert givegrunde til at jeg ikke burde goslashre det
I prisfastsaeligttelsesalgoritmen traeligvler vi os rekursivt baglaeligns fradet senest mulige slutidspunkt idet vi hele tiden udnytter at vinetop har beregnet (t+ 1)-elementet i ligning (2) Udvidelsen iftprisfastsaeligttelse af den europaeligiske option beloslashber sig til en halvlinjes kode Foslashrtidig indfrielse af put-optionen sker for lave ak-tiekurser For ethvert (tilstraeligkkeligt stort) tidspunkt ti ndes igitteret et maksimalt tid-ti aktiekursniveau S
lowast(ti) saringledes at foraktiekurser under Slowast(ti) indfries optionen Kurven t 7rarr Slowast(t) kal-des den kritiske indfrielsesgraelignse en illustration ses i Figur 18
Den optimale strategi for optionsejeren der ikke kan se ind ifremtiden er at indfri optionen foslashrste gang den kritiske indfri-elsesgraelignse rammes Som beregnere bevaeligger vi os altsaring fra hoslashjremod venstre i gitteret som optionsejere fra venstre mod hoslashjre
Amerikanske optioner rettidig omhu i regnerier
Der er en raeligkke maringder at forbedre beregningstiden for den natur-lige algoritme i Tabel 1
1 Hav nyeste version installeret For anstaeligndig software skerder ofte forbedringer bag scenen dvs skjult for slutbrugerenog de har positiv indvikning paring tidsforbruget Her betoslashd et
8Den opmaeligrksomme laeligser ser at vi paring indfrielseskurven har tegnet punk-tet (udloslashbstid strike) (eller (TK)) skoslashnt dette ikke er et gitterpunkt Manfaringr glattere konvergens (for ∆t rarr 0) af (specielt europaeligiske) optionspriserhvis man (ved valg af skridtlaeligngde) sikrer at K altid ligger paring et gitterpunktDen rene af sind paringpeger det inkonsistente i at bruge modeller for det under-liggende aktiv der afhaelignger af den option man skal prisfastsaeligtte Yeah well
Famoslashs skabelon
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 9
qURlt-qR qDRlt-(1-q)R upowlt-u^(0n) dpowlt-d^(0n)Slt-S0upow[1(n+1)]dpow[(n+1)1] putlt-pmax(strike - St0)for (i in n1)
Slt-S0upow[1i]dpow[i1]put[1i]lt-pmax(strike-S(qURput[2(i+1)]+qDRput[1i]))
Tabel 2 Hastighedsforbedret kode til prisfastsaeligttelse af en ame-rikanske put-option Koden ovenfor erstatter koden under stregenTabel 1
skift fra R 2111 til R 2140 omtrent en halvering af koslashrsels-tiden
2 Undgaring unoslashdvendige beregninger Flyt saring mange funktions-kald som muligt udenfor loslashkker Her gav det en ca 10 for-bedring af koslashrselstiden Dimensioneacuter i videst muligt omfangvektorer og matricer paring forharingnd Hoslashjniveau-sprog tvinger ty-pisk ikke brugeren til dette Det kan vaeligre behageligt da detligger i numeriske metoders natur at mange ting foslashrst bliverkendt efterharingnden som programmet loslashser ens opgave Mender kan vaeligre tid at spare ET konkret R-eksempel Skriverman skriver cbind inde i en loslashkke skal en roslashd lampe lyse
3 Brug indbygget funktionalitet Her specielt Udnyt Rs ev-ne til at arbejde med vektorer og matricer undgaring element-for-element-operationer9 Her nedbringer det beregningsti-den med omkring en faktor 7
9Ikke alle funktioner virker paring er-dimensionale objekter paring den maringdedu maringske trorharingber Lad fx x vaeligre en vektor og sammenlign max(x0) medpmax (x0) Eller lad X og Y vaeligre matricer og sammenlign XY med XY
X aringrgang nr X
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
10 Amerikanske optioner og nansielle beregninger252skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(ms)
Meto
de
Tid
(ms)
Window
sTabel1R2111
sim750
Visu
alStudiosim
Tabel1
9Window
sTabel1R2140
720
Visu
alStudiosim
Tabel2
15
Window
sTabel2R2111
sim30
Window
sTabel2R2140
15
LinuxTabel1R2111
(fys
p)458(fy
so-p)260
GNUg++
simTabel1
35
(CPUp)126(C
PUo-p)119
GNUg++
simTabel2
60
LinuxTabel2R2111
(fys
p)209(fy
so-p)57
(CPUp)55(C
PUo-p)51
Europaeligisk
BS-fo
rmel
004
106BS-sim
plusmn
03
310
104Tabel4stier
plusmn
14
65000
(30times
252)skrid
tR-ko
de
C++-ko
de
Meto
de
Tid
(s)Meto
de
Tid
(s)Window
ssimTabel1R2140
600
Visu
alStudiosim
Tabel2
23
GNUg++
simTabel2
12
Window
sTabel2R2140
68
Tabel3Bereg
ningstid
erforalgoritm
ertil
prisfa
stsaeligttelse
afen
amerika
nsk
put-o
ptio
nista
n-
darbinomialm
odellen
Parametren
eer
som
angivet
iTabel1Alkodendes
iwwwmathkudk
~rolfFAMOESWindow
s-koslashrslern
eer
foreta
get
paringen
Intel
P8700Core2
DuoCPUmed
25
GHz
og3GBRAMEller
mere
forstaring
eligtParingmin
etpararingrgamlecomputer
der
daden
varnyvar
retkraftig
afen
baeligrbaratvaelig
reLinux-koslash
rslerneer
fraIM
FsShannon-server
ogher
indikerer
po-p
om
koslashrslen
sketeparinget
travlttid
spunkteller
ej(peako-peak)
Famoslashs skabelon
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 11
I de meget laeligsevaeligrdige Higham (2002) og Eddelbuettel (2009)kan man nde mere Koslashreklar R-kode ses i Tabel 2 Man kan ret-telig mene at ovenstaringende liste mangler et punkt 0 Kommen-terdokumenter dine programmer Lad os sige grunden til at detikke er gjort her er hensynet til det typograske udtryk
Selv Schroumldinger kunne ikke svinge en maringske doslashd kat i Tabel 3uden at ramme en beregningstid Allerfoslashrst ser vi at med de for-holdsvis simple justeringer naeligvnt ovenfor falder tiden det tagerat udregne prisen paring en 1-aringrig amerikansk put-option i en stan-dardbinomialmodel med daglige skridt (∆t = 1252) fra 750 til15 millisekunder dvs med en faktor 15 Der er beregningstiderbaringde fra en (Windows-)PC og fra IMFs (Linux-)server ShannonNaringr man skal dele regnekraften med andre saring er der forskel paringden tid det fysisk tager at koslashre programmet og den tid det villehave taget hvis man havde tingene for sig selv (CPU-tiden) Derkan derfor vaeligre tydelige fordele (her en faktor 4) ved at koslashre sineprogrammer udenfor spidsbelastningsperioder dvs om natten ogi weekenden
En skeptiker kunne nu sige Ja jo men er det besvaeligret vaeligrdForbedringen er jo mindre end et sekund Til det behoslashves barehenvises til nedre del af Tabel 3 Her beregnes en amerikansk op-tionspris for en 30-aringrig option i en model med daglige skridt skalman eksempelvis prisfastsaeligtte konverterbare realkreditobligatio-ner saring er det en relevant problemstoslashrrelse10 Her tager Tabel 2-koden omkring 7 sekunder mens tidsforbruget for Tabel 1-kodener 10 minutter11 Saring er forskellen pludselig til at faring oslashje paring naringr man
10Som den engelske komiker Andy Zaltzman plejer at sige i den fremragen-de og staeligrkt vanedannende podcast The Bugle Thats a lie but my pointstands
11Antallet af knuder i et binomialgitter vokser kvadratisk i antallet af tids-skridt Man ville derfor forvente at en 30-aringrig option tog 302 = 900 gange saring
X aringrgang nr X
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
12 Amerikanske optioner og nansielle beregninger
sidder foran computeren Og hvis man saring ikke-spor-hypotetisk (sePedersen Weissensteiner amp Poulsen (2011)) skal udregne ikke 1men 5000 priser der skal indgaring i et dynamisk portefoslashljevalgspro-blem saring kan den ene beregning koslashres over en nat mens den andentager en maringned Saring selv med dagens computere kan beregningstidblive en askehals Det betyder at der er al mulig grund til forskei forbedrede berergningsmetoder
En ide er naturligvis at man med blyant og papir leder efterlukkede formler Det kan give dramatiske hastighedsforoslashgelser ek-sempelvis ser vi i Tabel 3 at det kun tager 004 millisekund atudregne en optionspris fra Black-Scholes-formlen (der dog kun vir-ker for europaeligiske optioner) En anden mulighed er at formuleresine prisfastsaeligttelsesproblemer vha partielle dierentialligningerog saring angribe dem numerisk Binomial-metoden kan ses som en nu-merisk loslashsningsmetode men som saringdan er den en absolut letvaeligg-ter der ndes vaeligsentligt bedre teknikker En tredje tilgangsvinkeler Monte Carlo-simulationsteknikker eller i min forskningsverdenblot simulation Dette er en bred betegnelse for beregningsme-toder hvor tilfaeligldige tal samt asymptotiske resultater som fxstore tals lov spiller en stor rolle Monte Carlo henviser saring tilcasinoet sammesteds12 hvor der er masser af tilfaeligldige udfald men hvor vi godt ved hvordan det garingr i det lange loslashb Simulationer som udgangspunkt langsomt Tabel 3 viser at for at ramme en
lang tid at prisfastsaeligtte som en 1-aringrig For den naturlige metode passer detsaring godt som det nogenlunde kan Den 30-aringrige optimerede R-kode er nogethutigere end forventet 6 8 lt 13 5 = 0 0015times302 det skyldes at de 15 mil-lisekunder inkluderer nogle faste beregningsomkostninger eksempelvis til kom-pilering C++-koden taber omvendt hastighed 2 3 gt 1 35 = 0 0015 times 302Grunden er ikke helt klar for mig maringske ekstra omkostninger til hukommel-sesallokering ifm lange vektorer
12For administrative feinschmeckere er Monte Carlo et kommunaldisktrikti fyrstendoslashmmet Monaco
Famoslashs skabelon
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 13
europaeligisk put-optionspris indenfor 1 skal der omkring en halvmillion udfald til Det tager nogle hundrede millisekunder Og detkraeligver endda at man kan simulere S(T ) direkte dvs ikke skallave sti-vise beregninger Skal man det saring eksploderer beregning-stiden Den simulationsbaserede amerikanske optionsprisfastsaeligt-telseskode fra Tabel 4 tager 65000 millisekunder (Og den regnerikke engang det rigtige ud men det har ikke noget med hastighe-den at goslashre) Simulationsmetoders styrke ligger i deres alsidighedmange mere komplicerede modeller og problemstillinger har de letved at haringndtere Og ofte13 er det vigtigere at have et approksima-tivt svar paring det rigtige sposlashrgsmaringl end et ultra-praeligcist svar paring etforkert sposlashrgsmaringl
En fjerde mulighed er at skifte hest ved at programmere prisfast-saeligttelsesalgoritmerne i et lavniveau-sprog C++ er den nansiellesektors foretrukne Det stiller stoslashrre krav til programmeringsfaeligr-digheder men beloslashnningen skulle gerne vaeligre foroslashget hastighedbrugervenlighed i interfacet og ekstra funktionalitet koster Algo-ritmerne fra Tabel 1 og 2 er stort set bare loslashkker indeni hinandensaring de er nemme at implementere i C++ I hoslashjre soslashjle i Tabel 3 sesberegningsstider Man opnaringr en tydelig forbedring (under Win-dows er det 15 vs 15 millisekunder for en 1-aringrig option og 68vs 23 sekunder for en 30-aringrig option) Men det gode hoslashjniveau-sprog er ikke haringbloslashst bagud Sammenlignes en naiv implemente-ring (ala Tabel 1) i Microsofts Visual Studio-miljoslash med den op-timerede R-kode saring er forskellen blot 10 vs 15 millisekunder for1-aringrige optioner For 30-aringrige optioner er R-kodens tider en faktor3 fra C++-kodens Meget groft sagt er beregningstidsforbedrin-
13Man kan mene at ofte burde vaeligre altid Det synspunkt afspejles dogikke udpraeligget i vore uddannelser
X aringrgang nr X
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
14 Amerikanske optioner og nansielle beregninger
gen altsaring her halvanden stoslashrrelsesorden14 ved at man taelignker sigom indenfor R og en halv stoslashrrelsesorden ved at man skifter Rud med C++ Saring det er ikke en datalogisk doslashdssynd at lade detafhaelignge af situationen15 om man skoslashnner det umagen vaeligrd atbruge C++ I saringdanne overvejelser er et realistisk forhold til egneprogrammeringsevner tilraringdeligt
Amerikanske optioner og simulation hvordan ikke og
hvordan saring
Et af de store forsknings- og anvendelsesomraringder indenfor kva-nititativ nansierngsteori de seneste 10 aringr har vaeligret brugen afsimulation til prisfastsaeligttelse af amerikanske optioner Det folke-lige gennembrud kom med Longsta amp Schwartz (2001) Denneartikel var dog langt fra den foslashrste der kombinerede amerikan-ske optioner og simulation Forfatterne til eksempelvis Carriere(1996) Broadie amp Glasserman (1997) og Andersen (1999) kan meden vis ret mugge over at have faringet stjaringlet rampelyset Jeg tror enmeget vigtig grund til at det er Longsta amp Schwartz (2001) derloslashber med citationerne er at forfatterne turde bruge selv i etaf de mest prestigefyldte tidsskrifter de foslashrste 10 sider til de-taljeret at gennemgaring et simpelt taleksempel 3 perioder 8 stieralle kan vaeligre med Men inden jeg naringr til Longsta og Schwartz(simulation-regression)-ide vil jeg foslashrst forklare hvorfor det er
14Med det bevidst loslashse begreb stoslashrrelsesorden mener jeg noget ala ti-potens til forskel saring faktor 10 er en stoslashrrelesorden faktor 100 er to og faktor3 asymp 1005 er en halv
15Et sted det er umagen vaeligrd at bruge C++ eller ihvertfald at kaldekompileret kode fra R er ved loslashsning partielle dierentialligninger med die-rensmetoder
Famoslashs skabelon
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 15
Nsimlt-10000DiscPayofflt-rep(0Nsim)Slt-rep(S0(n+1))
for (j in 1Nsim)UpMoveslt-cumsum((runif(n) lt q))S[2(n+1)]lt-S0u^UpMovesd^((1n)-UpMoves)SnellZlt-gSlt-pmax(strike-S0)for (i in n1) SnellZ[i]lt-max(gS[i]RSnellZ[i+1])tauindexlt-dummy[SnellZ==gS][1]DiscPayoff[j]lt-disc^((tauindex-1))gS[tauindex]
print(c(mean(DiscPayoff) 196sd(DiscPayoff)sqrt(Nsim)))
Tabel 4 En simulationsalgoritme man kunne tro udregner denamerikanske put-optionspris Men det goslashr den ikke
overraskende og langt fra oplagt at det overhovedet kan lade siggoslashre Til det formaringl vil jeg vise hvordan man ikke skal goslashreDer er andre maringder end ligning (2) at karakterisere den ame-
rikanske optionspris paring I den sammenhaeligng er stoppetider vigti-ge Denitionen er (her) simpel en stoppetid τ er en stokastiskvariabel der tager vaeligrdier i maeligngden 0 1 T for hvilkenhaeligndelsen τ le n er Fn-maringlelig for ethvert n Intuitivt betyderdet at paring tid n ved vi om vi er stoppet eller ej Den amerikan-ske optionspris kan repraeligsenteres som loslashsningen til det optimalestoppetidsproblem
πA(0) = maxτisinT
EQ(eminusrτg(S(τ))
) (3)
hvor T er maeligngden af alle stoppetider Og det lyder jo rimeligtnok vi stopper saring vi (i forventning og diskonteret) faringr mestmuligt ud af vores option Det optimale tidspunkt at stoppe τlowaster
τlowast = mint|g(S(t) = V (t) (4)
X aringrgang nr X
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
16 Amerikanske optioner og nansielle beregninger
hvor den saringkaldte Snell-foldning V er deneret rekursivt baglaelignsved V (T ) = g(S(T )) og
V (t) = maxg(S(t)) eminusr∆tEQt (V (t+ ∆t)) (5)
Igen Det lyder rimeligt nok Ligningen ovenfor er jo stort set (2)og vi kan vel ligesaring godt stoppe foslashrste gang det ikke kan blivebedre
Man kan nu forsoslashge regne paring (3)-(5) med denne algoritme
1 Simuler N aktiekurs-stier hver med n skridt Sj(ti)ni=0hvor ∆t = Tn ti = i∆t og j-indekset angiver sti-nummeret
2 Udregn foldningen som
Vj(ti) = maxg(Sj(ti)) e
minusr∆tVj(ti+1)
3 Brug τlowastj = min ti|Vj(ti) = g(Sj(ti)) som indfrielsestidspunktfor sti j
4 Udregn gennemsnittet over mange stier (j) af eminusrτlowastj g(Sj(τ
lowastj ))
og brug det som estimat for den amerikanske optionspris
Algoritmen er implementeret som R-kode i Tabel 4 I Tabel5 sammenlignes beregnede priser Simulationsalgoritmen ovenforgiver en pris der er omtrent dobbelt saring stor som den korrekte ame-rikanske put-optionspris Ups Saring hvad er der galt Fejlen ligger ialgoritmens 2 skridt foldningsudregningen Her er den betinge-de forventningsoperator fra ligning (5) forsvundet Beregningen affoldningen bruger derfor fremtidig information hvorved det fund-ne indfrielsestidspunkt matematisk set ikke er en stoppetid Etpar faktorer goslashr en fejlagtig implementation som denne svaeligr atfange For det foslashrste er den forkerte pris ikke aringbenlyst forkertom 674 eller ca 13 er det rigtige tal er ikke umiddelbart op-lagt Det betyder saring paring positiv-siden at en pris udregnet med den
Famoslashs skabelon
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 17
Optionstype Algoritme Pris (plusmn konfbaringnd)Eu put 646Am put Tabel 1 674Am put (misforstaringet) Tabel 4 130 plusmn0 2Am put L amp S (2001)-sim 67 plusmn0 2
Tabel 5 Den amerikanske put-option forsoslashgt prisfastsat medalgoritmen og parametrene fra Tabel 1 (korrekt) med algo-ritmen fra Tabel 4 (forkert) og med simulationsmetoden fraLongsta amp Schwartz (2001) (appoksimativt korrekt der bruges2-gradspolynomier i regressionerne) Ved at tillaeliggge eller fratraeligk-ke tallet angivet med plusmn farings 95-kondensintervallet for prisesti-materne opnaringet ved simulation
slags fuld forudsigelighed er en ikke-triviel oslashvre graelignse for vaeligrdi-en af den amerikanske option I mere avancerede sammenhaeligngekan den korrekte optimale indfrielsesstrategi vaeligre meget vanskeligat beregne men den oslashvre graelignse nem I kapitel 3 i RasmussenMadsen amp Poulsen (2011) bruges det til at nde oslashvre graelignser forkonverteringsgevinster i realkreditmarkeder og folk snedigere endos bruger ideen i saringkaldte primal-dual-simulationer For det andeter foldningsberegningen lokaliseret den involverer kun ti og ti+1
saring man ved foslashrste oslashjekast ikke ser ret langt ind i fremtiden men altsaring alligevel nok til at tingene bryder sammen
Lad os nu se paring hvad man saring kan goslashre Vi beholder vores N si-mulerede aktiekurs-stier zoomer ind paring et tidspunkt ti og antageri den baglaeligns rekursive tradition at alt ti+1-relevant allerede erberegnet Markov-egenskaben fortaeligller os at tidsvaeligrdien af op-
X aringrgang nr X
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
18 Amerikanske optioner og nansielle beregninger
tionen har den funktionelle form
EQti (πA(ti+1)R) = fti(S(ti))
Langs sti j kender vi det rette argument tallet Sj(ti) problemeter at vi ikke kender funktionen fti Det er en betinget forventetvaeligrdi saring vi kunne proslashve at starteN nye simulerede stier fra Sj(ti)Men for hver af dem ville vi paring tid ti+1 skulle starte nye stier osvhele vejen ud til tid T Vi ender med at have noget ala Nn stier(fx 10000252) og det jo ikke til at have med at goslashre16 Men vikan jo proslashve med et gaeligt eller en approksimation til fti s form fxkvadratisk
fti(x) = a0 + a1x+ a2x2
hvor aerne er ukendte koecienter som vi vil estimere (De budreegentlig have tier paring men det er sent i artiklen ) Vi opfatternu naeligste periodes (diskonterede) faktisk realiserede optionsvaeligrdiπAj (ti+1)R (husk det tal har vi beregnet da vi arbejder rekursivtbaglaeligns) som et signal om tidsvaeligrdien Det goslashr vi for alle stierog kombinerer det med den postulerede funktionelle form af fti saring vi faringr ligningerne
πAj (ti+1)R = a0 + a1Sj(ti) + a2S2j (ti) + εj for j = 1 N
hvor εj erne er fejlled Vi kan nu estimere aerne ved lineaeligr re-gression her specikt
a =1
R(XgtX)minus1XgtπA(ti+1)
hvor X er en matrix med indgange Xjk = Skminus1j (ti) for j =
1 N og k = 1 2 3 Det er denne regression paring tvaeligrs af sti-er der sikrer at fremtidige vaeligrdier ikke udnyttes paring en ulovlig
16Saringdanne nested simulations er ikke helt saring fjollede som jeg her faringr demtil at se ud Men beregningsmaeligsssigt dyre er de altid
Famoslashs skabelon
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 19
maringde For at forstaring forskellen til det foslashrste simulationsforsoslashg kanman goslashre sig foslashlgende tankeeksperiment I naeligstsidste periode harto simulerede stier begge aktiekursen 98 For den ene sti slutteraktiekursen i 102 for den anden i 97 I snyde-algoritmen indfriesstrike-100 put-optionen for den foslashrste sti (venter man faringr man 0bedre at faring 2 nu) men ikke for den anden (venter man faringr man3 isf 2 nu) Brugen af den estimerede funktionelle form af tids-vaeligrdien sikrer at man for stier med samme aktiekurser traeliger desamme indfrielsesbeslutninger
Som tid-ti optionsvaeligrdi(estimat)er bruger vi
πAj (ti) = max
((K minus Sj(ti))+
3sumk=1
Xjk(ti)ak
)
vi estimerer det kritiske niveau for indfrielse som Slowast(ti) = maxx leK|K minus x = fti(x) og vi er klar til at fortsaeligtte videre baglaelignstil tidspunkt timinus1
Der er et par ekstra julelege i Longsta og Schwartz fulde al-goritme (fx at man kun bruger in-the-money-stier i regressionen)som goslashr koden for omfattende til at blive gengivet her men denkan ndes samme sted som artiklens oslashvrige programmer
Sidste linje i Tabel 5 viser at selv med den nok noget friskekvadratiske approksimation til optionens tidsvaeligrdi saring ligger denberegnede amerikanske put-optionspris ganske taeligt paring den (i bino-mialmodellen entydigt) sande vaeligrdi 67 plusmn 02 ift 674 En grundtil dette er den forholdvis tilgivende natur af problemet Vi skalnde det kritiske niveau hvor vi skal indfri vores option Det ernetop der hvor vaeligrdien af at indfri er den samme som af at holdeoptionen i live Mindre fejltagelser er derfor naeligppe katastrofale
X aringrgang nr X
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
20 Amerikanske optioner og nansielle beregninger
Hvorfor amerikanske optioner burde blive kaldt
Kierkegaard-optioner
Soslashren Kierkegaard skrev at livet leves forlaeligns men forstarings bag-laeligns Det beskriver praeligcis situationen for amerikanske optionerVi bestemmer den optimale indfrielsesstrategi (og samtidig prisen)rekursivt baglaeligns men maring som ejere af en amerikansk option foslashlgestrategien forlaeligns i tid uden at kunne se ind i fremtiden
Litteratur
Andersen L (1999) `A simple approach to the pricing of Ber-mudan swaptions in the multifactor LIBOR market modelJournal of Computational Finance 2 532
Broadie M amp Glasserman P (1997) `Pricing American-StyleSecurities by Simulation Journal of Economic Dynamics
and Control 21 13231352
Carriere J F (1996) `Valuation of the early-exercise price for de-rivative securities using simulations and splines InsuranceMathematics and Economics 19 1930
Eddelbuettel D (2009) Introduction to High-Performance
Computing with R Praeligsentation ved The Institute ofStatistical Mathematics Tachikawa Tokyo httpdirk
eddelbuettelcompapersismNov2009introHPCwithR
Higham D J (2002) `Nine Ways to Implement the BinomialMethod for Option Valuation in MATLAB SIAM Review
44 661677
Lamberton D amp Lapeyre B (1996) Introduction to stochastic
calculus applied to nance Chapman amp Hall
Famoslashs skabelon
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-
Rolf Poulsen 21
Lando D (1999) `En hovedsaeligtning i nansieringsteorien oglidt om kreditobligationer FAMOslashS 13 920
Lando D amp Poulsen R (2006) Notes for Finance 1 (and More)Institut for Matematiske Fag Koslashbenhavns Universitet httpwwwmathkudk~rolfifnotespdf
Longsta F A amp Schwartz E S (2001) `Valuing American Op-tions by Simulation A Simple Least-Squares Approach Re-view of Financial Studies 14 113147
Pedersen A M B Weissensteiner A amp Poulsen R (2011) Fi-nancial planning for young households Working paper httpwwwmathkudk~rolfMultistagePaper_260811pdf
Rasmussen K M Madsen C amp Poulsen R (2011) Re-
alkreditraringdgivning Et studie af danskernes valg af real-
kreditlaringn og konverteringspraksis Boligoslashkonomisk Viden-center httpwwwbvcdkSiteCollectionDocuments
AnalyserKonverteringsanalysepdf
X aringrgang nr X
- Amerikanske optioner og finansielle beregninger
-