homepage | nag · homepage | nag

41
Multilevel Monte Carlo path simulation Mike Giles [email protected] Oxford University Computing Laboratory Oxford-Man Institute of Quantitative Finance Acknowledgments: research funding from Microsoft and EPSRC, and collaboration with Paul Glasserman (Columbia) and Ian Sloan, Frances Kuo (UNSW) Multilevel Monte Carlo – p. 1/41

Upload: others

Post on 23-Jan-2021

36 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Homepage | nag · Homepage | nag

Multilevel Monte Carlopath simulation

Mike Giles

[email protected]

Oxford University Computing Laboratory

Oxford-Man Institute of Quantitative Finance

Acknowledgments: research funding from Microsoft and EPSRC, and

collaboration with Paul Glasserman (Columbia) and Ian Sloan, Frances Kuo (UNSW)

Multilevel Monte Carlo – p. 1/41

Page 2: Homepage | nag · Homepage | nag

Outline

Long-term objective is faster Monte Carlo simulation of pathdependent options to estimate values and Greeks.

Several ingredients, not yet all combined:

multilevel method

quasi-Monte Carlo

adjoint pathwise Greeks

parallel computing on NVIDIA graphics cards

Emphasis in this presentation is on multilevel method

Multilevel Monte Carlo – p. 2/41

Page 3: Homepage | nag · Homepage | nag

Generic Problem

Stochastic differential equation with general drift andvolatility terms:

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

We want to compute the expected value of an optiondependent on S(t). In the simplest case of Europeanoptions, it is a function of 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. 3/41

Page 4: Homepage | nag · Homepage | nag

Simplest MC Approach

Euler discretisation with timestep h:

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

Estimator for expected payoff is an average of Nindependent 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. 4/41

Page 5: Homepage | nag · Homepage | nag

Simplest 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(ε−p), with p as small as

possible, ideally close to 1.

Note: for a relative error of ε = 0.001, the difference betweenε−3 and ε−1 is huge.

Multilevel Monte Carlo – p. 5/41

Page 6: Homepage | nag · Homepage | nag

Standard MC Improvements

variance reduction techniques (e.g. control variates,stratified sampling) improve the constant factor in frontof ε−3, sometimes spectacularly

improved second order weak convergence (e.g. throughRichardson extrapolation) leads to h = O(

√ε), giving

p=2.5

quasi-Monte Carlo reduces the number of samplesrequired, at best leading to N ≈O(ε−1), giving p≈2 withfirst order weak methods

Multilevel method gives p=2 without QMC, and at bestp ≈ 1 with QMC.

Multilevel Monte Carlo – p. 6/41

Page 7: Homepage | nag · Homepage | nag

Other Related 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 very similar multilevel use of controlvariates.

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

Multilevel Monte Carlo – p. 7/41

Page 8: Homepage | nag · Homepage | nag

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. 8/41

Page 9: Homepage | nag · Homepage | nag

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. 9/41

Page 10: Homepage | nag · Homepage | nag

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. 10/41

Page 11: Homepage | nag · Homepage | nag

Multilevel MC Approach

For the Euler discretisation and a 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. 11/41

Page 12: Homepage | nag · Homepage | nag

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. 12/41

Page 13: Homepage | nag · Homepage | nag

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. 13/41

Page 14: Homepage | nag · Homepage | nag

Milstein Scheme

The theorem suggests use of Milstein scheme —better strong convergence, same weak convergence

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. 14/41

Page 15: Homepage | nag · Homepage | nag

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 estimatorsbased on Brownian interpolation or extrapolation

Multilevel Monte Carlo – p. 15/41

Page 16: Homepage | nag · Homepage | nag

Milstein Scheme

Key idea: within each timestep, model the behaviour assimple Brownian motion conditional on the two end-points

S(t) = Sn + λ(t)(Sn+1 − Sn)

+ bn

(W (t) − Wn − λ(t)(Wn+1−Wn)

),

where

λ(t) =t − tn

tn+1 − tn

There then exist analytic results for the distribution of themin/max/average over each timstep.

Multilevel Monte Carlo – p. 16/41

Page 17: Homepage | nag · Homepage | nag

Results

Geometric Brownian motion:

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

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

European call option: exp(−rT ) max(S(T ) − 1, 0)

Asian option: exp(−rT ) max

(T−1

∫ T

0S(t) dt − 1, 0

)

Lookback option: exp(−rT )

(S(T ) − min

0<t<TS(t)

)

Down-and-out barrier option: same as call providedS(t) stays above B=0.9

Multilevel Monte Carlo – p. 17/41

Page 18: Homepage | nag · Homepage | nag

MLMC Results

GBM: European

call0 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. 18/41

Page 19: Homepage | nag · Homepage | nag

MLMC Results

GBM: European

call0 2 4 6 8

102

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. 19/41

Page 20: Homepage | nag · Homepage | nag

MLMC Results

GBM: Asian

option0 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. 20/41

Page 21: Homepage | nag · Homepage | nag

MLMC Results

GBM: Asian

option0 2 4 6 8

102

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. 21/41

Page 22: Homepage | nag · Homepage | nag

MLMC Results

GBM: lookback

option0 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. 22/41

Page 23: Homepage | nag · Homepage | nag

MLMC Results

GBM: lookback

option0 5 10

102

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. 23/41

Page 24: Homepage | nag · Homepage | nag

MLMC Results

GBM: barrier

option0 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. 24/41

Page 25: Homepage | nag · Homepage | nag

MLMC Results

GBM: barrier

option0 2 4 6 8

102

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. 25/41

Page 26: Homepage | nag · Homepage | nag

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. 26/41

Page 27: Homepage | nag · Homepage | nag

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. 27/41

Page 28: Homepage | nag · Homepage | nag

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. 28/41

Page 29: Homepage | nag · Homepage | nag

MLMC 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. 29/41

Page 30: Homepage | nag · Homepage | nag

MLMC 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. 30/41

Page 31: Homepage | nag · Homepage | nag

Quasi-Monte Carlo

well-established technique for approximatinghigh-dimensional integrals

for finance applications see papers by l’Ecuyer andbook by Glasserman

Sobol sequences are perhaps most popular;we use lattice rules (Sloan & Kuo)

two important ingredients for success:randomized QMC for confidence intervalsgood identification of “dominant dimensions”(Brownian Bridge and/or PCA)

Multilevel Monte Carlo – p. 31/41

Page 32: Homepage | nag · Homepage | nag

Quasi-Monte Carlo

Approximate high-dimensional hypercube integral∫

[0,1]df(x) dx

by

1

N

N−1∑

i=0

f(x(i))

where

x(i) =

[i

Nz

]

and z is a d-dimensional “generating vector”.

Multilevel Monte Carlo – p. 32/41

Page 33: Homepage | nag · Homepage | nag

Quasi-Monte Carlo

In the best cases, error is O(N−1) instead of O(N−1/2) butwithout a confidence interval.

To get a confidence interval, let

x(i) =

[i

Nz + x0

].

where x0 is a random offset vector.

Using 32 different random offsets gives a confidenceinterval in the usual way.

Multilevel Monte Carlo – p. 33/41

Page 34: Homepage | nag · Homepage | nag

Quasi-Monte Carlo

For the path discretisation we can use

∆Wn =√

h Φ−1(xn),

where Φ−1 is the inverse cumulative Normal distribution.

Much better to use a Brownian Bridge construction:

x1 −→ W (T )

x2 −→ W (T/2)

x3, x4 −→ W (T/4),W (3T/4)

. . . and so on by recursive bisection

Multilevel Monte Carlo – p. 34/41

Page 35: Homepage | nag · Homepage | nag

Multilevel QMC

rank-1 lattice rule developed by Sloan, Kuo &Waterhouse at UNSW

32 randomly-shifted sets of QMC points

number of points in each set increased as needed toachieved desired accuracy, based on confidenceinterval estimate

results show QMC to be particularly effective on lowestlevels with low dimensionality

Multilevel Monte Carlo – p. 35/41

Page 36: Homepage | nag · Homepage | nag

MLQMC Results

GBM: European call

0 2 4 6 8−40

−35

−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

1162564096

0 2 4 6 8−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 36/41

Page 37: Homepage | nag · Homepage | nag

MLQMC Results

GBM: European call

0 2 4 6 810

1

102

103

104

105

106

l

Nl

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

10−4

10−3

10−4

10−3

10−2

10−1

ε

ε2 Cos

t

Std QMCMLQMC

Multilevel Monte Carlo – p. 37/41

Page 38: Homepage | nag · Homepage | nag

MLQMC Results

GBM: barrier option

0 2 4 6 8−40

−35

−30

−25

−20

−15

−10

−5

0

l

log 2 v

aria

nce

1162564096

0 2 4 6 8−20

−15

−10

−5

0

l

log 2 |m

ean|

Pl

Pl− P

l−1

Multilevel Monte Carlo – p. 38/41

Page 39: Homepage | nag · Homepage | nag

MLQMC Results

GBM: barrier option

0 2 4 6 810

1

102

103

104

105

106

107

l

Nl

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

10−4

10−3

10−3

10−2

10−1

100

ε

ε2 Cos

t

Std QMCMLQMC

Multilevel Monte Carlo – p. 39/41

Page 40: Homepage | nag · Homepage | nag

Conclusions

Results so far:

much improved order of complexity

fairly easy to implement

significant benefits for model problems

However:

lots of scope for further developmentmulti-dimensional SDEs needing Lévy areasadjoint Greeks and “vibrato” Monte Carlonumerical analysis of algorithmsexecution on NVIDIA graphics cards (128 cores)

need to test ideas on real finance applications

Multilevel Monte Carlo – p. 40/41

Page 41: Homepage | nag · Homepage | nag

Papers

M.B. Giles, “Multilevel Monte Carlo path simulation”,to appear in Operations Research, 2007.

M.B. Giles, “Improved multilevel convergence using theMilstein scheme”, to appear in MCQMC06 proceedings,Springer-Verlag, 2007.

M.B. Giles, “Multilevel quasi-Monte Carlo path simulation”,submitted to Journal of Computational Finance, 2007.

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

Email: [email protected]

Multilevel Monte Carlo – p. 41/41