Vous êtes sur la page 1sur 72

Longstaff Schwarz Revisited:

A Least Squares Approach for Valuating Bermudan


Multi-Factor Interest Rate Derivatives
M. Aichinger & C. Kletzmayr
IMCC/MathConsult
Friday, April 17, 2009

Motivation

The instrument

The models

(Quasi) Monte Carlo methods

A modied least squares algorithm

How to solve the corresponding PDE

Results and Comparison


Outline
Friday, April 17, 2009
Motivation

Pricing of Bermudan callable interest rate derivatives


using (Quasi) Monte Carlo

Method should be independent of underlying


interest rate / FX rate processes - least squares MC

Valuing American Options by Simulation: A Simple Least


Squares Approach, Longstaff and Schwartz (2001)

Pricing and hedging callable Libor exotics in forward Libor


models, Piterbarg (2005)

Solve the corresponding PDE using Finite


Differences or Finite Elements

Results and Comparison


Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


Maturity Date - usually
also a coupon date
Evaluation Date
T = {T
0
, T
1
, . . . , T
N+1
}
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i
Friday, April 17, 2009
the respective set of coupon weights for coupon date T
i

Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i

the value of the swap at a certain date t is


SV
t
=
N+1

l=

t
exp

T
l
t
r
d
(s)ds

CV
l
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i
Friday, April 17, 2009
Bermudan callable interest rate instruments

a contract between two parties exchanging


periodic payments C
PL
and C
RL

dene a set of points in time


T = {T
0
, T
1
, . . . , T
N+1
}

the value of the swap at a certain coupon date


T
i
can be calculated by
CV
i
=
RL
i
C
RL
i

PL
i
C
PL
i

the value of the swap at the evaluation date is


SV
0
=
N+1

l=1
exp

T
l
T
0
r
d
(s)ds

CV
l
Friday, April 17, 2009
Interest rate and exchange rate models

Hull & White Model (H&W)


dr(t) = ((t) (t)r(t))dt +
r
(t)dW(t)

Hull & White 2 Factor Model (H&W 2 Factor)


dr(t) = ((t) + u(t) a(t)r(t))dt +
r
(t)dW
1
(t),
du(t) = b(t)u(t)dt +
u
(t)dW
2
(t)

Black & Karasinski Model (B&K)


d lnr(t) = ((t) (t) lnr(t))dt +
r
(t)dW(t)

FX Rates: Garman & Kohlhagen Model


df
l
(t)
f
l
(t)
= (r
i
(t) r
j
(t))dt +
f
l
(t)dW
l
(t)
Friday, April 17, 2009
(Quasi) Monte Carlo Simulation

For the Monte Carlo Simulation the different interest


rate models are discretized using an Euler scheme
(Incremental construction of the Wiener
processes ) W
t
i+1
= W
t
i
+

t
i

t
i
,
t
i
N(0, 1)

Applying QMC instead of randomly distributed points


in [0;1] so called low discrepancy sequences are used
for calculation (Sobol, Halton, Faure, ...) - the Wiener
process is discretized using the Brownian Bridge
technique
W
t
i
= (1 )W
t
j
+ W
t
k
+

(1 )(t
k
t
j
)
t
i
=
(t
i
t
j
)
(t
k
t
j
)
, t
j
< t
i
< t
k
,
t
i
N(0, 1)
Friday, April 17, 2009
Comparison of MC with QMC

Callable Floater - Instrument:


Start date: December 1, 2008
Evaluation date: December 1, 2008
Duration: 10 years
Coupons: quarter-annual
Coupon rate: max(7.5%-1.5*(3M LIBOR),0.0)
Coupon basis: 30/360
Redemption rate: 100%
Friday, April 17, 2009
Comparison of MC with QMC

Callable Floater - Hull&White model


short rate r(0)=2%
drift ! = 0.0375
reversion speed " = 1
volatility # = 0.015
Friday, April 17, 2009
Comparison of MC with QMC
Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values
Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values

SV
1,1
SV
1,2
. . . SV
1,N
.
.
.
.
.
.
.
.
.
.
.
.
SV
M,1
SV
M,2
. . . SV
M,N

S
k,i
denotes the value of the swap at time T
i
in the k
th
path
Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values
Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values

discount factor matrix D (MxN matrix)


D
k,i
= exp

T
i
T
0
r
d
(s)ds

Friday, April 17, 2009


A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values

discount factor matrix D (MxN matrix)


Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values

set of short rate matrices (MxN matrix) for each short rate
used in the regression SR
l

set of FX rate matrices (MxN matrix) for each FX rate used in


the regression FX
l

discount factor matrix D (MxN matrix)


Friday, April 17, 2009
A modied least squares algorithm

Initialization (M runs and N call dates):

call rate matrix C for every call date (1xN matrix)

swap value matrix (MxN matrix) - during the algorithm the


entries of this matrix will be replaced by the option values

set of short rate matrices (MxN matrix) for each short rate
used in the regression SR
l

set of FX rate matrices (MxN matrix) for each FX rate used in


the regression FX
l

discount factor matrix D (MxN matrix)


SR
l
k,i
= r
l
k,i
FX
l
k,i
= f
l
k,i
Friday, April 17, 2009
A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Friday, April 17, 2009


A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
regression function
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Friday, April 17, 2009


A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Friday, April 17, 2009


A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Compute the current regression value RV


g
k,N
for
each path using the optimal parameter set A
*
N
RV
g
k,N
= g({A

N
}, {r
k,N
}, {f
k,N
})
Friday, April 17, 2009
A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Friday, April 17, 2009


A modied least squares algorithm cont.

Compute the least square regression of swap values


as a function of short rates and exchange rates at
last call date T
n
min

k=1
(S
k,N
g({A
N
}, {r
k,N
}, {f
k,N
}))
2

Compare the regression value to the call rate for


each path: If the latter is smaller than RV
g
k,N
it is
better to exercise the option and take the
difference SV
k,N
-C
N
, otherwise set S
k,N
to 0
SV
k,N
=

SV
k,N
C
N
if C
N
< RV
g
k,N
0 else
Friday, April 17, 2009
A modied least squares algorithm cont.

The swap value matrix may look like

SV
1,1
SV
1,2
. . . SV
1,N1
SV
1,N
C
N
SV
2,1
SV
2,2
. . . SV
2,N1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
k1,1
SV
k1,2
. . . SV
k1,N1
0
SV
k,1
SV
k,2
. . . SV
k,N1
SV
k,N
C
N
SV
k+1,1
SV
k+1,2
. . . SV
k+1,N1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
M,1
SV
M,2
. . . SV
M,N1
0

Friday, April 17, 2009


A modied least squares algorithm cont.

Switch to call date T


N-1
and compute two least
square regressions:
Friday, April 17, 2009
A modied least squares algorithm cont.

Switch to call date T


N-1
and compute two least
square regressions:
min

k=1
(SV
k,N1
C
N1
g({A
N1
}{r
k,N1
}, {f
k,N1
}))
2

tting current gains


Friday, April 17, 2009
A modied least squares algorithm cont.

Switch to call date T


N-1
and compute two least
square regressions:
min

k=1

l>N1

S
k,l
D
l,k
D
N1,k

h({B
N1
}{r
k,N1
}, {f
k,N1
})

tting the sum of discounted future cash ows


Friday, April 17, 2009
A modied least squares algorithm cont.

Compute both regression values using the optimal


parameter sets A* and B* in each path
RV
g
k,N1
= g({A

N1
}, {r
k,N1
}, {f
k,N1
})
RV
h
k,N1
= h({B

N1
}, {r
k,N1
}, {f
k,N1
})
Friday, April 17, 2009
A modied least squares algorithm cont.

Compute both regression values using the optimal


parameter sets A* and B* in each path
RV
g
k,N1
= g({A

N1
}, {r
k,N1
}, {f
k,N1
})
RV
h
k,N1
= h({B

N1
}, {r
k,N1
}, {f
k,N1
})

compare RV
g
to RV
h
: If the rst regression value is
smaller than the second regression value, it is better
to exercise the option and take the difference
SV
k,N-1
-C
N-1
, otherwise set S
k,N-1
to 0
SV
k,N1
=

SV
k,N1
C
N1
if RV
g
k,N1
< RV
h
k,N1
0 else
Friday, April 17, 2009
A modied least squares algorithm cont.

The swap value matrix may look like

SV
1,1
SV
1,2
. . . 0 SV
1,N
C
N
SV
2,1
SV
1,2
. . . SV
1,N1
C
N1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
j1,1
SV
j1,2
. . . SV
j1,N1
C
N1
0
SV
j,1
SV
j,2
. . . 0 SV
j,N
C
N
SV
j+1,1
SV
j+1,2
. . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
M,1
SV
M,2
. . . SV
M,N1
C
N1
0

Repeat this step for all remaining call dates


Friday, April 17, 2009
A modied least squares algorithm cont.

The nal swap value matrix has at most one entry


different from 0 per row and may look like

0 0 . . . 0 SV
1,N
C
N
0 0 . . . SV
1,N1
C
N1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
j1,1
C
1
0 . . . 0 0
0 SV
j,2
C
2
. . . 0 0
0 0 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . SV
M,N1
C
N1
0

Friday, April 17, 2009


A modied least squares algorithm cont.

The nal swap value matrix has at most one entry


different from 0 per row and may look like

0 0 . . . 0 SV
1,N
C
N
0 0 . . . SV
1,N1
C
N1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SV
j1,1
C
1
0 . . . 0 0
0 SV
j,2
C
2
. . . 0 0
0 0 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . SV
M,N1
C
N1
0

Each of these values is discounted to the valuation


date and the nal value of the option is
E[CV ] =
1
M
M

k=1
n

i=0
D
k,i
S
k,i
Friday, April 17, 2009
Regression functions

The functions g and h have a polynomial form


(X, {r}, {f}) =

||<S
x

Y

, x

R
Friday, April 17, 2009
Regression functions

The functions g and h have a polynomial form


basis functions (multi-dimensional
power functions)
vector that contains all interest and exchange rates
|| =
N
r
+N
f

i=1

i
, N
N
r
+N
f
0
,
Y

=
N
r
+N
f

i=1
Y

i
i
(X, {r}, {f}) =

||<S
x

Y

, x

R
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0
x
1
= fx
x
2
= r
d
x
3
= r
f
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


diffusion
u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


convection
u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


reaction
u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0

Discretization using Finite Differences (FD) or (FEM)


Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0

Discretization using Finite Differences (FD) or (FEM)

Numerical instabilities in areas with dominating


convection - use methods known from CFD for
stabilization (FD: upwinding FEM: SD, SUPG,...)
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0

Discretization using Finite Differences (FD) or (FEM)

Numerical instabilities in areas with dominating


convection - use methods known from CFD for
stabilization (FD: upwinding FEM: SD, SUPG,...)

Time discretization with one-step procedure (!-


scheme) either semi-implicit (Crank Nicolson !=0.5)
or fully implicit (!=1)
Friday, April 17, 2009
The corresponding PDE

PDE for a cross currency swap


u
t

1
2
3

i,j=1

ij

2
u
x
i
x
j

i=1

i
u
x
i
+
31

1
u
x
3
+x
2
u = 0

Discretization using Finite Differences (FD) or (FEM)

Numerical instabilities in areas with dominating


convection - use methods known from CFD for
stabilization (FD: upwinding FEM: SD, SUPG,...)

Time discretization with one-step procedure (!-


scheme) either semi-implicit (Crank Nicolson !=0.5)
or fully implicit (!=1)

Sparse linear system is solved with BICGSTAB


Friday, April 17, 2009
Start date: December 1, 2008
Evaluation date: December 1, 2008
Duration: 10 years
Coupons: quarter-annual
Coupon rate: max(7.5%-1.5*(3M LIBOR),0.0)
Coupon basis: 30/360
Redemption rate: 100%
Callability: annual on December 1, 2008
Call rate: 100%

Callable Floater - Instrument


Results - Floater
Friday, April 17, 2009

Callable Floater - Hull&White model


short rate r(0)=2%
drift ! = 0.0375
reversion speed " = 1
volatility # = 0.015
regression functions:
Results - Floater
g(. . .) = a
0,.
+ a
1,.
r
k,.
+ a
2,.
(r
k,.
)
2
+ a
3,.
(r
k,.
)
3
h(. . .) = b
0,.
+ b
1,.
r
k,.
+ b
2,.
(r
k,.
)
2
+ b
3,.
(r
k,.
)
3
Friday, April 17, 2009
Results - Floater
Friday, April 17, 2009
Results - Floater
Friday, April 17, 2009
Results - Floater
PDE Value: 1.01708
Friday, April 17, 2009
Start date: January 1, 2008
Evaluation date: January 1, 2008
Duration: 10 years
Redemption rate: 100%
Callability: annual on January 1, starting 2013
Call rate: 0%

Steepener Swap - Instrument


Results - Steepener Swap
Coupons PL: quarter-annual
Coupon rate: max(0.5*3M LIBOR-0.5%,0.0)
Coupon basis: 30/360
Friday, April 17, 2009
Start date: January 1, 2008
Evaluation date: January 1, 2008
Duration: 10 years
Redemption rate: 100%
Callability: annual on January 1, starting 2013
Call rate: 0%

Steepener Swap - Instrument


Coupons RL: annual
Coupon rate: max(10*(10YCMS-2YCMS)+1.0%,0.0)
Coupon basis: 30/360
Results - Steepener Swap
Friday, April 17, 2009

Steepener Swap - Hull&White 2 factor model


short rate r(0)=2%
drift ! = 0.0375
reversion speed of short rate " = 1
reversion speed of second process b = 0.05
volatility of short rate #
r
= 0.015
volatility of second process #
u
= 0.015
correlation $ = 0.2
Results - Steepener Swap
Friday, April 17, 2009
Results - Steepener Swap
Friday, April 17, 2009
Results - Steepener Swap
Friday, April 17, 2009
PDE Value: 0.003299
Results - Steepener Swap
Friday, April 17, 2009
Start date: January 1, 2009
Evaluation date: January 1, 2009
Duration: 5 years
Redemption rate: 100%
Callability: annual on January 1, starting 2010
Call rate: 0%
Product Currency: EUR

FX Linked Swap - Instrument


Results - FX Linked Swap
Friday, April 17, 2009
Coupons RL: annual
Coupon rate: (3M CHFLIBOR)+0.02*FX
Coupon basis: 30/360

FX Linked Swap - Coupons


Coupons PL: annual
Coupon rate: 1.25*(3M EURLIBOR)
Coupon basis: 30/360
Results - FX Linked Swap
Friday, April 17, 2009

FX Linked Swap - Hull&White model EUR


short rate r(0)=4%
drift ! = 0.0125
reversion speed " = 0.25
volatility of short rate # = 0.01
correlation rd-rf: 0.8
correlation rd-fx: -0.2
Results - FX Linked Swap
Friday, April 17, 2009

FX Linked Swap - Hull&White model CHF


short rate r(0)=2%
drift ! = 0.00625
reversion speed " = 0.25
volatility of short rate # = 0.015
correlation rf-fx: -0.15
Results - FX Linked Swap
Friday, April 17, 2009

FX Linked Swap - Exchange rate model


exchange rate fx(0)=0.62
volatility of exchange rate # = 0.05
regression functions:
Results - FX Linked Swap
g(. . .) = a
0,.
+ a
1,.
r
1
k,.
+ a
2,.
(r
1
k,.
)
2
+
a
3,.
r
2
k,.
+ a
4,.
(r
2
k,.
)
2
+
a
5,.
f
k,.
+ a
6,.
(f
k,.
)
2
+
a
7,.
r
1
k,.
r
2
k,.
+ a
8,.
r
1
k,.
f
k,.
+ a
9,.
r
2
k,.
f
k,.
h(. . .) = b
0,.
+ b
1,.
r
1
k,.
+ b
2,.
(r
1
k,.
)
2
Friday, April 17, 2009
Results - FX Linked Swap
Friday, April 17, 2009
Results - FX Linked Swap
Friday, April 17, 2009
Results - FX Linked Swap
PDE Value: 0.01845
Friday, April 17, 2009
Summary

Putability is included straightforward

Algorithm allows calculation of call/put


values for interest rate derivatives - the
algorithm works independently of the
underlying stochastic processes

Comparison of the results with PDE shows


reliability of the approach

The combination with Quasi Monte Carlo


methods allows a fast calculation

Application to callable oater, callable


steepener and callable fx linked swap
Friday, April 17, 2009
Acknowledgement

We want to thank our colleagues Andreas Binder,


Andrea Fischbacher, Johannes Frst and Michael
Schwaiger for fruitful discussions on the topic.

Part of this work was supported by the Austrian


Ministry for Economy and Labor and by the Upper
Austrian government within the framework
``Industrial Competence Centers''.
Friday, April 17, 2009
Acknowledgement
Thank You
Friday, April 17, 2009