34
Multilevel Monte Carlo Path Simulation Mike Giles [email protected] Oxford University Computing Laboratory First IMA Conference on Computational Finance Multilevel Monte Carlo – p. 1/34

Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles [email protected] Oxford University Computing Laboratory First IMA Conference

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel Monte CarloPath Simulation

Mike Giles

[email protected]

Oxford University Computing Laboratory

First IMA Conference on Computational Finance

Multilevel Monte Carlo – p. 1/34

Page 2: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Generic Problem

Stochastic differential equation with general drift andvolatility terms:

dS(t) = a(S, t) dt + b(S, t) dW (t)

In many applications, we want to compute the expectedvalue of an option dependent on the terminal state

P = f(S(T ))

with a uniform Lipschitz bound,

|f(U) − f(V )| ≤ c ‖U − V ‖ , ∀ U, V.

Multilevel Monte Carlo – p. 2/34

Page 3: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Standard MC Approach

Euler discretisation with timestep h:

Sn+1 = Sn + a(Sn, tn)h + b(Sn, tn) ∆Wn

Simplest estimator for expected payoff is an average of N

independent path simulations:

Y = N−1N∑

i=1

f(S(i)T/h

)

weak convergence – O(h) error in expected payoff

strong convergence – O(h1/2) error in individual path

Multilevel Monte Carlo – p. 3/34

Page 4: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Standard MC Approach

Mean Square Error is O(N−1 + h2

)

first term comes from variance of estimator

second term comes from bias due to weak convergence

To make this O(ε2) requires

N = O(ε−2), h = O(ε) =⇒ cost = O(N h−1) = O(ε−3)

Aim is to improve this cost to O(ε−2(log ε)2

), by combining

simulations with different numbers of timesteps – sameaccuracy as finest calculations, but at a much lowercomputational cost.

Multilevel Monte Carlo – p. 4/34

Page 5: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Other Research

In Dec. 2005, Ahmed Kebaier published an article inAnnals of Applied Probability describing a two-level methodwhich reduces the cost to O

(ε−2.5

).

Also in Dec. 2005, Adam Speight wrote a workingpaper describing a similar multilevel use of controlvariates, but without an analysis of its complexity.

There are also close similarities to a multileveltechnique developed by Stefan Heinrich for parametricintegration (Journal of Complexity, 1998)

Multilevel Monte Carlo – p. 5/34

Page 6: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

Consider multiple sets of simulations with differenttimesteps hl = 2−l T, l = 0, 1, . . . , L, and payoff Pl

E[PL] = E[P0] +L∑

l=1

E[Pl−Pl−1]

Expected value is same – aim is to reduce variance ofestimator for a fixed computational cost.

Key point: approximate E[Pl−Pl−1] using Nl simulationswith Pl and Pl−1 obtained using same Brownian path.

Yl = N−1l

Nl∑

i=1

(P

(i)l −P

(i)l−1

)

Multilevel Monte Carlo – p. 6/34

Page 7: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

Discrete Brownian path at different levels

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.5

0

0.5

1

1.5

2

2.5

3

3.5

P7

P6

P5

P4

P3

P2

P1

P0

Multilevel Monte Carlo – p. 7/34

Page 8: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

Using independent paths for each level, the variance of thecombined estimator is

V

[L∑

l=0

Yl

]=

L∑

l=0

N−1l Vl, Vl ≡ V [Pl−Pl−1],

and the computational cost is proportional toL∑

l=0

Nl h−1l .

Hence, the variance is minimised for a fixed computationalcost by choosing Nl to be proportional to

√Vl hl.

The constant of proportionality can be chosen so that thecombined variance is O(ε2).

Multilevel Monte Carlo – p. 8/34

Page 9: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

For the Euler discretisation and the Lipschitz payoff function

V [Pl−P ] = O(hl) =⇒ V [Pl−Pl−1] = O(hl)

and the optimal Nl is asymptotically proportional to hl.

To make the combined variance O(ε2) requires

Nl = O(ε−2Lhl).

To make the bias O(ε) requires

L = log2 ε−1 + O(1) =⇒ hL = O(ε).

Hence, we obtain an O(ε2) MSE for a computational costwhich is O(ε−2L2) = O(ε−2(log ε)2).

Multilevel Monte Carlo – p. 9/34

Page 10: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

Geometric Brownian motion:

dS = r S dt + σ S dW, 0 < t < T,

T =1, S(0)=1, r=0.05, σ=0.2

European call option with discounted payoff

exp(−rT ) max(S(T )−K, 0)

with K =1.

Multilevel Monte Carlo – p. 10/34

Page 11: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: European call, exp(−rT ) max(S(T )−K, 0)

0 2 4 6−20

−15

−10

−5

0

l

log 2 v

aria

nce

Pl

Pl− P

l−1

0 2 4 6−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 11/34

Page 12: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: European call, exp(−rT ) max(S(T )−K, 0)

0 2 4 610

2

104

106

108

1010

l

Nl

ε=0.00005ε=0.0001ε=0.0002ε=0.0005ε=0.001

10−4

10−3

10−2

10−1

100

101

ε

ε2 Cos

t

Std MCMLMC

Multilevel Monte Carlo – p. 12/34

Page 13: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

Theorem: Let P be a functional of the solution of a stochastic o.d.e.,

and Pl the discrete approximation using a timestep hl = M−l T .

If there exist independent estimators Yl based on Nl Monte Carlo

samples, and positive constants α≥ 12 , β, c1, c2, c3 such that

i) E[Pl − P ] ≤ c1 hαl

ii) E[Yl] =

E[P0], l = 0

E[Pl − Pl−1], l > 0

iii) V [Yl] ≤ c2 N−1l h

βl

iv) Cl, the computational complexity of Yl, is bounded by

Cl ≤ c3 Nl h−1l

Multilevel Monte Carlo – p. 13/34

Page 14: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Multilevel MC Approach

then there exists a positive constant c4 such that for any ε<e−1 thereare values L and Nl for which the multi-level estimator

Y =L∑

l=0

Yl,

has Mean Square Error MSE ≡ E

[(Y − E[P ]

)2]

< ε2

with a computational complexity C with bound

C ≤

c4 ε−2, β > 1,

c4 ε−2(log ε)2, β = 1,

c4 ε−2−(1−β)/α, 0 < β < 1.Multilevel Monte Carlo – p. 14/34

Page 15: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

Generic scalar SDE:

dS(t) = a(S, t) dt + b(S, t) dW (t), 0<t<T.

Milstein scheme:

Sn+1 = Sn + a h + b∆Wn + 12 b′ b

((∆Wn)2 − h

).

Multilevel Monte Carlo – p. 15/34

Page 16: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

In scalar case:

O(h) strong convergence

O(ε−2) complexity for Lipschitz payoffs – trivial

O(ε−2) complexity for Asian, lookback, barrier anddigital options using carefully constructed estimators,based on Brownian interpolation

key idea: within each timestep, model the behaviour assimple Brownian motion conditional on the twoend-points – analytic results exist for distribution ofmin/max/average

Multilevel Monte Carlo – p. 16/34

Page 17: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: European call, exp(−rT ) max(S(T ) − K, 0)

0 2 4 6 8−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

Pl

Pl− P

l−1

0 2 4 6 8−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 17/34

Page 18: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: European call, exp(−rT ) max(S(T ) − K, 0)

0 2 4 6 810

2

104

106

108

l

Nl

ε=0.00005ε=0.0001ε=0.0002ε=0.0005ε=0.001

10−4

10−3

10−2

10−1

100

101

ε

ε2 Cos

t

Std MCMLMC

Multilevel Monte Carlo – p. 18/34

Page 19: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: lookback option, exp(−rT ) (S(T ) − min0<t<T S(t))

0 5 10−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

Pl

Pl− P

l−1

0 5 10−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 19/34

Page 20: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: lookback option, exp(−rT ) (S(T ) − min0<t<T S(t))

0 5 1010

2

104

106

108

l

Nl

ε=0.00005ε=0.0001ε=0.0002ε=0.0005ε=0.001

10−4

10−3

10−2

10−1

100

101

ε

ε2 Cos

t

Std MCMLMC

Multilevel Monte Carlo – p. 20/34

Page 21: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: barrier option, exp(−rT )1min S(t)>B max(S(T ) − K, 0)

0 2 4 6 8−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

Pl

Pl− P

l−1

0 2 4 6 8−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 21/34

Page 22: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

GBM: barrier option, exp(−rT )1minS(t)>B max(S(T ) − K, 0)

0 2 4 6 810

2

104

106

108

l

Nl

ε=0.00005ε=0.0001ε=0.0002ε=0.0005ε=0.001

10−4

10−3

10−2

10−1

100

101

ε

ε2 Cos

t

Std MCMLMC

Multilevel Monte Carlo – p. 22/34

Page 23: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

Generic vector SDE:

dS(t) = a(S, t) dt + b(S, t) dW (t), 0<t<T,

with correlation matrix Ω(S, t) between elements of dW (t).

Milstein scheme:

Si,n+1 = Si,n + ai h + bij ∆Wj,n

+12

∂bij

∂Slblk

(∆Wj,n ∆Wk,n − hΩjk − Ajk,n

)

with implied summation, and Lévy areas defined as

Ajk,n =

∫ tn+1

tn

(Wj(t)−Wj(tn)) dWk − (Wk(t)−Wk(tn)) dWj .

Multilevel Monte Carlo – p. 23/34

Page 24: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

In vector case:

O(h) strong convergence if Lévy areas are simulatedcorrectly – expensive

O(h1/2) strong convergence in general if Lévy areas areomitted, except if a certain commutativity condition issatisfied (useful for a number of real cases)

Lipschitz payoffs can be handled well using antitheticvariables

Other cases may require approximate simulation ofLévy areas

Multilevel Monte Carlo – p. 24/34

Page 25: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

If Scn satisfies

Scn+1 = R(Sc

n),

and Sfn satisfies

Sfn+1 = R(Sf

n) + gn.

then if gn1, putting Sfn = Sc

n+Dn and linearising gives

Dn+1 =∂R

∂SDn + gn.

Scn represents calculation using timestep 2h

Sfn represents calculation using two timesteps of size h

Multilevel Monte Carlo – p. 25/34

Page 26: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

To leading order, error analysis gives

gi,n =h

2

∂bij

∂Slblk

(Yj,nZk,n − Yk,nZj,n

).

where

∆W fn = 1

2

√2h (Yn+Zn), ∆W

f

n+ 1

2

= 12

√2h (Yn−Zn).

i.e. Yn is standard N(0, 1) variable used to construct coarsepath, and Zn is N(0, 1) variable for Brownian Bridgeconstruction of fine path.

Note: independence implies that

E[gn] = 0 =⇒ E[Dn] = 0.Multilevel Monte Carlo – p. 26/34

Page 27: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

Option 1: use control variate

Define

Yl = N−1l

Nl∑

i=1

(P

(i)l −P

(i)l−1 −

∂f

∂SD

(i)T/2h

),

The control variate has zero mean and cancels out theleading order variation so that

V

[Pl − Pl−1 −

∂f

∂SDT/2h

]= O(h2)

for twice differentiable payoffs (and O(h3/2) for usualLipschitz payoffs?)

Multilevel Monte Carlo – p. 27/34

Page 28: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Milstein Scheme

Option 2: use antithetic variables

Define

Yl = N−1l

Nl∑

i=1

(12

(P

(i)l +P

(i)∗l

)− P

(i)l−1

),

where P(i)∗l is based on the same coarse path with Zn

replaced by −Zn, which leads to cancellation of leadingorder error proportional to Zn.

Very simple to implement (but slightly more costly?)

Multilevel Monte Carlo – p. 28/34

Page 29: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

Heston model:

dS = r S dt +√

V S dW1, 0 < t < T

dV = λ (σ2−V ) dt + ξ√

V dW2,

T =1, S(0)=1, V (0)=0.04, r=0.05,

σ=0.2, λ=5, ξ=0.25, ρ=−0.5

Multilevel Monte Carlo – p. 29/34

Page 30: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

Heston model: European call

0 2 4 6 8−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

Pl

Pl− P

l−1

0 2 4 6 8−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 30/34

Page 31: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Results

Heston model: European call

0 2 4 6 810

2

104

106

108

l

Nl

ε=0.00005ε=0.0001ε=0.0002ε=0.0005ε=0.001

10−4

10−3

10−2

10−1

100

101

ε

ε2 Cos

t

Std MCMLMC

Multilevel Monte Carlo – p. 31/34

Page 32: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Conclusions

Results so far:

(much) improved order of complexity

(fairly) easy to implement

significant benefits for model problems

However:

lots of scope for further improvement

need to test ideas on “real” finance applications

Multilevel Monte Carlo – p. 32/34

Page 33: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Future Work

multi-dimensional SDEs with barrier and digital options

quasi-Monte Carlo integration(F. Kuo, I. Sloan – UNSW)

Greeks and calibration(P. Glasserman – Columbia Business School)

numerical analysis(D. Higham, X. Mao – Strathclyde)

real finance applications

parallel implementation on hyper-core chips(ClearSpeed, nVidia – 96-128 cores)

Multilevel Monte Carlo – p. 33/34

Page 34: Multilevel Monte Carlo Path Simulation · 2007-03-22 · Multilevel Monte Carlo Path Simulation Mike Giles giles@comlab.ox.ac.uk Oxford University Computing Laboratory First IMA Conference

Working Papers

M.B. Giles, “Multilevel Monte Carlo path simulation”,Numerical Analysis Report NA-06/03

M.B. Giles, “Improved multilevel convergence using theMilstein scheme”, Numerical Analysis Report NA-06/22

www.comlab.ox.ac.uk/mike.giles/finance.html

Email: [email protected]

Acknowledgements:

Paul Glasserman and Mark Broadie for early feedback

Microsoft for current research funding

Multilevel Monte Carlo – p. 34/34