AN EFFI CI ENT LATTI CE ALGORI THM FOR THE

LI BOR MARKET MODEL

Tim Xiao
1

Risk Analyt ics, Capit al Market s Risk Management , CI BC, Toront o, Canada

ABSTRACT
The LI BOR Market Model ( LMM or BGM) has become one of t he most popular
models for pricing int erest rat e product s. I t is commonly believed t hat Mont e- Carlo
simulat ion is t he only viable met hod available for t he LI BOR Market Model. I n t his
art icle, however, we propose a lat t ice ( or t ree) approach t o price int erest rat e
product s wit hin t he LI BOR Market Model by i nt roducing a shift ed forward measure
and several novel fast drift approximat ion met hods. This model should achieve t he
best performance wit hout losing much accuracy. Moreover, t he calibrat ion is almost
aut omat ic and it is simple and easy t o implement . Addi ng t his model t o t he valuat ion
t oolkit is act ually quit e useful; especially for risk management or in t he case t here is
a need for a quick t urnaround.

Key Words: LI BOR Market Model ( LMM or BGM) , lat t ice model, t ree model, shift ed
forward measure, drift approximat ion, risk management , calibrat ion, callable exot ics,
callable bond, callable capped float er swap, callable inverse float er swap, callable
range accrual swap.

1
The views expressed here are of t he aut hor alone and not necessarily of his host inst it ut ion.

Address correspondence t o Tim Xiao, Risk Analyt ics, Capit al Market s Risk Management , CI BC,
161 Bay St reet , 12
t h
Floor, Toront o, ON M5J 2S8, Canada; email: Tim. Xiao@CI BC. com
1
The LI BOR Market Model ( LMM) is an int erest rat e model based on evolving
LI BOR market forward rat es under a risk-neut ral forward probabilit y measure. I n
cont rast t o models t hat evolve t he inst ant aneous short rat es ( e.g., Hull -Whit e, Black-
Karasinski models) or inst ant aneous forward rat es ( e.g., Heat h- Jarrow- Mort on (HJM)
model) , which are not direct ly observable in t he market , t he obj ect s modeled using
t he LMM are market observable quant it ies. The explicit modeling of market forward
rat es allows for a nat ural formula for int erest rat e opt ion volat ilit y t hat is consist ent
wit h t he market pract ice of using t he formula of Black for caps. I t is generally
considered t o have more desirable t heoret ical calibrat ion propert ies t han short rat e
or inst ant aneous forward rat e models.
I n general, it is believed t hat Mont e Carlo simulat ion is t he only viable
numerical met hod available for t he LMM ( see Pit erbarg [ 2003] ) . The Mont e Carlo
simulat ion is comput at ionally expensive, slowly converging, and not oriously difficult
t o use for calculat ing sensit ivit ies and hedges. Anot her not able weakness is it s
inabilit y t o det ermine how far t he solut ion is from opt imalit y in any given problem.
I n t his paper, we propose a lat t ice approach wit hin t he LMM. The model has
similar accuracy t o t he current pricing models in t he market , but is much fast er.
Some ot her merit s of t he model are t hat calibrat ion is almost aut omat ic and t he
approach is less complex and easier t o implement t han ot her current approaches.
We int roduce a shift ed forward measure t hat uses a variable subst it ut ion t o
shift t he cent er of a forward rat e dist ribut ion t o zero. This ensures t hat t he
dist ribut ion is symmet ric and can be represent ed by a relat ively small number of
discret e point s. The shift t ransformat ion is t he key t o achieve high accuracy in
relat ively few discret e finit e nodes. I n addit ion, we present several fast and novel
drift approximat ion approaches. Ot her concept s used in t he model are probabilit y
dist ribut ion st ruct ure exploit at ion, numerical int egrat ion and t he long j ump t echnique
( we only posit ion nodes at t imes when decisions need t o be made) .
2
This model is act ually quit e useful for risk management because normally full -
revaluat ions of an ent ire port folio under hundreds of t housands of different fut ure
scenarios are required for a short t ime window. Wit hout an efficient algorit hm, one
cannot properly capt ure and manage t he risk exposed by t he port folio.
The rest of t his paper is organized as follows: The LMM is discussed in Sect ion
I . I n Sect ion I I , t he lat t ice model is elaborat ed. The calibrat ion is present ed in
Sect ion I I I . The numerical impl ement at ion is det ailed in Sect ion I V, which will
enhance t he reader’s underst anding of t he model and it s pract ical implement at ion.
The conclusions are provided in Sect ion V.

I . LI BOR MARKET MODEL
Let ( O , F , { }
0 > t t
F , P ) be a filt ered probabilit y space sat isfying t he usual
condit ions, where O denot es a sample space, F denot es a o - algebra, P denot es
a probabilit y measure, and { }
0 > t t
F denot es a filt rat ion. Consider an increasing
mat urit y st ruct ure
N
T T T < < < = ... 0
1 0
from which expiry- mat urit y pairs of dat es
(
1 ÷ k
T ,
k
T ) for a family of spanning forward rat es are t aken. For any t ime
1 ÷
s
k
T t , we
define a right - cont inuous mapping funct ion ) (t n by
) ( 1 ) ( t n t n
T t T < s
÷
. The simply
compounded forward rat e reset at t for forward period (
1 ÷ k
T ,
k
T ) is defined by

|
|
.
|

\
|
÷ = =
÷
÷
1
) , (
) , ( 1
) , ; ( : ) (
1
1
k
k
k
k k k
T t P
T t P
T T t F t F
o
( 1)
where ) , ( T t P denot es t he t ime t price of a zero- coupon bond mat uring at t ime T and
) , ( :
1 k k k
T T
÷
=o o is t he accrual fact or or day count fract ion for period (
1 ÷ k
T ,
k
T ) .
I nvert ing t his relat ionship ( 1) , we can express a zero coupon bond price in
t erms of forward rat es as:
[
=
+
=
k
t n j
j j
t n k
t F
T t P T t P
) (
) (
) ( 1
1
) , ( ) , (
o
( 2)
3

LI BOR Market Model Dynamics
Consider a zero coupon bond numeraire ) , (
i
T P - whose mat urit y coincides wit h
t he mat urit y of t he forward rat e. The measure
i
Q associat ed wit h ) , (
i
T P - is called
i
T
forward measure. Terminal measure
N
Q is a forward measure where t he mat urit y of
t he bond numeraire ) , (
N
T P - mat ches t he t erminal dat e
N
T .
For brevit y, we discuss t he one- fact or LMM only. The one- fact or LMM ( Brace
et al. [ 1997] ) under forward measure
i
Q can be expressed as
I f
i
T t k i s < , , t k k
k
i j
j j
j j j
k k k
dX t F t dt
t F
t F t
t F t t dF ) ( ) (
) ( 1
) ( ) (
) ( ) ( ) (
1
o
o
o o
o +
+
=
¿
+ =
( 3a)
I f
1
,
÷
s =
k
T t k i ,
t k k k
dX t F t t dF ) ( ) ( ) ( o = ( 3b)
I f
1
,
÷
s >
k
T t k i , t k k
i
k j
j j
j j j
k k k
dX t F t dt
t F
t F t
t F t t dF ) ( ) (
) ( 1
) ( ) (
) ( ) ( ) (
1
o
o
o o
o +
+
÷ =
¿
+ =
( 3c)
where
t
X is a Brownian mot ion.
There is no requirement for what kind of inst ant aneous volat ilit y st ruct ure
should be chosen during t he life of t he caplet . All t hat is required is (see Hull -Whit e
[ 2000] ) :
( )
}
÷
÷
÷
= K =
1
0
2
1
2
1
2
) (
1
) , ( : ) (
k
T
k
k
k k k
du u
T
T o o o
 
( 4)
where
k
o

denot es t he market Black caplet volat ilit y and K denot es t he st rike. Given
t his equat ion, it is obviously not possible t o uniquely pin down t he inst ant aneous
volat ilit y funct ion. I n fact , t his specificat ion allows an infinit e number of choices.
People oft en assume t hat a forward rat e has a piecewise const ant inst ant aneous
volat ilit y. Here we choose t he forward rat e ) (t F
k
has const ant inst ant aneous volat ilit y
regardless of t ( see Brigo- Mercurio [ 2006] ) .

4
Shift ed Forward Measure
The ) (t F
k
is a Mart ingale or drift less under it s own measure
k
Q . The solut ion
t o equat ion (3b) can be expressed as
|
.
|

\
|
+ ÷ =
} }
t
s k
t
k k k
dX s ds s F t F
0 0
2
) ( ) (
2
1
exp ) 0 ( ) ( o o
( 5)
where ) , ; 0 ( ) 0 (
1 k k k
T T F F
÷
= is t he current ( spot ) forward rat e. Under t he volat ilit y
assumpt ion described above, equat ion (5) can be furt her expressed as
|
|
.
|

\
|
+ ÷ =
t k
k
k k
X t F t F o
o
2
exp ) 0 ( ) (
2
( 6)
Alt ernat ively, we can reach t he same Mart ingale conclusion by direct ly deriving t he
expect at ion of t he forward rat e ( 6); t hat is
( )
) 0 (
2
exp
2
1
) 0 (
2
) (
exp
2
1
) 0 (
2
exp
2
exp
2
1
) 0 ( ) (
2 2
2 2
0
k t
t
k t
k t
k
t
t
t k
k
k k
F dY
t
Y
t
F dX
t
t X
t
F
dX
t
X
X t
t
F t F E
=
|
|
.
|

\
|
÷ =
|
|
.
|

\
| ÷
÷ =
|
|
.
|

\
|
÷
|
|
.
|

\
|
+ ÷ =
} }
}
·
· ÷
·
· ÷
·
· ÷
t
o
t
o
o
t
( 7)
where
t
X ,
t
Y are bot h Brownian mot ions wit h a normal dist ribut ion (0, t ) at t ime t ,
) | ( : ) (
t t
E E F - = - is t he expect at ion condit ional on t he
t
F , and t he variable subst it ut ion
used for derivat ion is
k t t
t X Y o ÷ = ( 8)
This variable subst it ut ion t hat ensures t hat t he dist ribut ion is cent ered on zero and
symmet ry is t he key t o achieve high accuracy when we express t he LMM in discret e
finit e form and use numerical int egrat ion t o calculat e t he expect at ion. As a mat t er of
fact , wit hout t his linear t ransformat ion, a lat t ice met hod in t he LMM eit her does not
exist or int roduces t oo much error for longer mat urit ies.
Aft er applying t his variable subst it ut ion (8) , equat ion ( 6) can be expressed as
5
|
|
.
|

\
|
+ =
|
|
.
|

\
|
+ ÷ =
t k
k
k t k
k
k k
Y t F X t F t F o
o
o
o
2
exp ) 0 (
2
exp ) 0 ( ) (
2 2
( 9)
Since t he LMM models t he complet e forward curve direct ly, it is essent ial t o
bring everyt hing under a common measure. The t erminal measure is a good choice
for t his purpose, alt hough t his is by no means t he only choice. The forward rat e
dynamic under t erminal measure
N
Q is given by
t k k
N
k j
j j
j j j
k k k
dX t F dt
t F
t F
t F t dF ) (
) ( 1
) (
) ( ) (
1
o
o
o o
o +
+
÷ =
¿
+ =
( 10)
The solut ion t o equat ion (10) can be expressed as
|
|
.
|

\
|
+ ÷ =
|
|
.
|

\
|
+ ÷ =
} }
t k
k
k k
t
s k
t
k
k k k
X t t F dX ds t F t F o
o
µ o
o
µ
2
) ( exp ) 0 (
2
) ( exp ) 0 ( ) (
2
0 0
2
( 11a)
where t he drift is given by
}
¿
}
¿
+ = + =
+
÷ = ÷ =
t
N
k j
j k
j j
j j
t
N
k j
j k j k
ds
s F
s F
ds s t
0
1
0
1
) ( 1
) (
) ( ) ( o o
o
o
o o ¢ µ
(11b)
where | | ) ( 1 / ) ( ) ( s F s F s
j j j j j
o o ¢ + = is the drift term.
Applying ( 8) t o ( 11a) , we have t he forward rat e dynamic under t he shift ed
t erminal measure as
|
|
.
|

\
|
+ + =
t k
k
k k k
Y t t F t F o
o
µ
2
) ( exp ) 0 ( ) (
2
( 12)

Drift Approximat ion
Under t erminal measure, t he drift s of forward rat e dynamics are st at e-
dependent , which gives rise t o sufficient ly complicat ed non-lognormal dist ribut ions.
This means t hat an explicit analyt ic solut ion t o t he forward rat e st ochast ic different ial
equat ions cannot be obt ained. Therefore, most work on t he t opic has focused on
6
ways t o approximat e t he drift , which is t he fundament al t rickiness in implement ing
t he Market Model.
Our model works backwards recursively from forward rat e N down t o forward
rat e k. The N- t h forward rat e ) (t F
N
wit hout drift can be det ermined exact ly. By t he
t ime it t akes t o calculat e t he k-t h forward rat e ) (t F
k
, all forward rat es from ) (
1
t F
k +
t o
) (t F
N
at t ime t are already known. Therefore, t he drift calcul at ion ( 11b) is t o
est imat e t he int egrals cont aining forward rat e dynamics ) (s F
j
, for j = k+ 1,…,N, wit h
known beginning and end point s given by ) 0 (
j
F and ) (t F
j
. For complet eness, we list
all possible solut ions below.
Frozen Drift ( FD) . Replace t he random forward rat es in t he drift by t heir
det erminist ic init ial values, i.e.,
¿
}
¿
+ = + =
+
÷ ~
+
÷ =
N
k j
j k
j j
j j
t
N
k j
j k
j j
j j
k
t
F
F
ds
s F
s F
t
1
0
1
) 0 ( 1
) 0 (
) ( 1
) (
) ( o o
o
o
o o
o
o
µ
( 13)
Arit hmet ic Average of t he Forward Rat es ( AAFR) . Apply t he midpoint
rule ( rect angle rule) t o t he random forward rat es in t he drift , i.e.,
( )
( )
¿
+ =
+ +
+
÷ ~
N
k j
j k
j j j
j j j
k
t
t F F
t F F
t
1
2
1
2
1
) ( ) 0 ( 1
) ( ) 0 (
) ( o o
o
o
µ
( 14)
Arit hmet ic Average of t he Drift Terms ( AADT) . Apply t he midpoint rule t o
t he random drift t erms, i.e.,
¿
+ = |
|
.
|

\
|
+
+
+
÷ ~
N
k j
k j
j j
j j
j j
j j
k
t
t F
t F
F
F
t
1
) ( 1
) (
) 0 ( 1
) 0 (
2
1
) ( o o
o
o
o
o
µ
( 15)
Geometric Average of t he Forward Rates ( GAFR) . Replace t he random
forward rat es in t he drift by t heir geomet ric averages, i.e.,
¿
+ =
× +
×
÷ ~
N
k j
k j
j j j
j j j
k
t
t F F
t F F
t
1
) ( ) 0 ( 1
) ( ) 0 (
) ( o o
o
o
µ
( 16)
7
Geometric Average of t he Drift Terms ( GADT) . Replace t he random drift
t erms by t heir geomet ric averages, i.e. ,
¿
+ =
+
×
+
÷ ~
N
k j
k j
j j
j j
j j
j j
k
t
t F
t F
F
F
t
1
) ( 1
) (
) 0 ( 1
) 0 (
) ( o o
o
o
o
o
µ
( 17)
Condit ional Expect at ion of t he Forward Rat e ( CEFR) . I n addit ion t o t he
t wo endpoint s, we can furt her enhance our est imat e based on t he dynamics of t he
forward rat es. The forward rat e ) (s F
j
follows t he dynamic ( 9) ( The drift t erm is
ignored) . We can derive t he expect at ion of t he forward rat e condit ional on t he t wo
endpoint s and replace t he random forward rat e in t he drift by t he condit ional
expect at ion of t he forward rat e.
Proposit ion 1. Assume t he forward rat e ) (s F
j
follows t he dynamic ( 9) , wit h
t he t wo known endpoint s given by ) 0 (
j
F and ) (t F
j
. Based on t he condit ional
expect at ion of t he forward rat e ) (s F
j
, t he drift of ) (t F
k
can be expressed as
¿
} + =
+
÷ ~
N
k j
t
k j
t F F j j
t F F j j
k
ds
s F E
s F E
t
j j
j j
1
0
) ( ), 0 ( 0
) ( ), 0 ( 0
] | ) ( [ 1
] | ) ( [
) ( o o
o
o
µ ( 18a)
where t he condit ional expect at ion of t he forward rat e is given by
|
|
.
|

\
| ÷
|
|
.
|

\
|
=
t
s t s
F
t F
F s F E
j
t
s
j
j
j t F F j
j j
2
) (
exp
) 0 (
) (
) 0 ( ] | ) ( [
2
) ( ), 0 ( 0
o
( 18b)
Proof. See Appendix A.
Condit ional Expect at ion of t he Drift Term ( CEDT) . Similarly, we can
calculat e t he condit ional expect at ion of t he drift t erm and replace t he random drift
t erm by t he condit ional expect at ion.
Proposit ion 2. Assume t he forward rat e ) (s F
j
follows t he dynamic ( 9) , wit h
t he t wo known endpoint s given by ) 0 (
j
F and ) (t F
j
. Based on t he condit ional
expect at ion of t he drift t erm
j
¢ , t he drift of ) (t F
k
can be expressed as
8
¿
} + =
|
|
|
.
|

\
|
+
÷ ~
N
k j
k j
t
t F F
j j
j j
k
ds
s F
s F
E t
j j
1
0
) ( ), 0 (
0
) ( 1
) (
) ( o o
o
o
µ
( 19a)
where t he condit ional expect at ion of t he drift t erm is given by
( )
) (
) ( / ) ( 1
1
) ( 1
) (
| ) (
2
) ( ), 0 (
0 ) ( ), 0 ( 0
s
s s
s F
s F
E s E
Cj
Cj Cj
t F F
j j
j j
t F F j
j j
j j
µ
µ v
o
o
¢
+
÷ =
|
|
|
.
|

\
|
+
=
( 19b)
|
|
.
|

\
| ÷
|
|
.
|

\
|
+ =
t
s t s
F
t F
F s
j
t
s
j
j
j j Cj
2
) (
exp
) 0 (
) (
) 0 ( 1 ) (
2
o
o µ
(19c)

|
|
.
|

\
| ÷
|
|
.
|

\
|
÷
|
|
.
|

\
| ÷
|
|
.
|

\
|
=
t
s t s
t
s t s
F
t F
F s
j j
t
s
j
j
j j Cj
) (
exp 1
) (
exp
) 0 (
) (
) 0 ( ) (
2 2
2
2 2
o o
o v
( 19d)
Proof. See Appendix A.
The accuracy and performance of t hese drift approximat ion met hods are
discussed in sect ion I V.

I I . THE LATTI CE PROCEDURE I N THE LMM
The “lat t ice” is t he generic t erm for any graph we build for t he pricing of
financial product s. Each lat t ice is a layered graph t hat at t empt s t o t ransform a
cont inuous- t ime and cont inuous-space underlying process int o a discret e-t ime and
discret e-space process, where t he nodes at each level represent t he possible values
of t he underlying process in t hat period.
There are t wo primary t ypes of lat t ices for pricing financial product s: t ree
lat t ices and grid lat t ices ( or rect angular lat t ices or Markov chain lat t ices) . The t ree
lat t ices, e.g., t radit ional binomial t ree, assume t hat t he underlying process has t wo
possible out comes at each st age. I n cont rast wit h t he binomial t ree lat t ice, t he grid
lat t ices (see Amin [ 1993] , Gandhi-Hunt [ 1997] , Mart zoukos- Trigeorgis [ 2002] ,
Hagan [ 2005] , and Das [ 2011] ) shown in Exhibit 1, which permit t he underlying
9
process t o change by mult iple st at es, are built in a rect angular finit e difference grid
( not t o be confused wit h finit e difference numerical met hods for solving part i al
different ial equat ions) . The grid lat t ices are more realist ic and convenient for t he
implement at ion of a Markov chain solut ion.
This art icle present s a grid lat t ice model for t he LMM. To illust rat e t he lat t ice
algorit hm, we use a callable exot ic as an example. Callable exot ics are a class of
int erest rat e derivat ives t hat have Bermudan st yle provisions t hat allow for early
exercise int o various underlying int erest rat e product s. I n general, a callable exot ic
can be decomposed int o an underlying inst rument and an embedded Bermudan
opt ion.
We will simplify some of t he definit ions of t he universe of inst rument s we will
be dealing wit h for brevit y. Assume t he payoff of a generic underlying inst rument is
a st ream of payment s | |
i i i i i
C T F Z ÷ =
÷
) (
1
o for i= 1,…,N, where
i
C is t he st ruct ured
coupon. The callable exot ic is a Bermudan st yle opt ion t o ent er t he underlying
inst rument on any of a sequence of not ificat ion dat es
ex
M
ex ex
t t t ,..., ,
2 1
. For any
not ificat ion dat e
ex
j
t t = , we define a right - cont inuous mapping funct ion ) (t n by
) ( 1 ) ( t n t n
T t T < s
÷
. I f t he opt ion is exercised at t , t he reduced price of t he underlying
inst rument , from t he st ruct ured coupon payer’s perspect ive, is given by
( )
¿ ¿
=
÷
= |
|
.
|

\
| ÷
=
|
|
.
|

\
|
= =
N
t n i
N i
i i i i
t
N
t n i
N i
i
t
N
T T P
C T F
E
T T P
Z
E
T t P
t I
t I
) (
1
) (
) , (
) (
) , ( ) , (
) (
: ) (
~ o
( 20)
where t he rat io ) (
~
t I is usually called t he reduced value of t he underlying inst rument
or t he reduced exercise value or t he reduced int rinsic value.
Lat t ice approaches are ideal for pricing early exercise product s, given t heir
“ backward- in-t ime” nat ure. Bermudan pricing is usually done by building a lat t ice t o
carry out a dynamic programming calculat ion via backward induct ion and is
10
st andard. The lat t ice model described below also uses backward induct ion but
exploit s t he Gaussian st ruct ure t o gain ext ra efficiencies.
First we need t o creat e t he lat t ice. The random process we are going t o model
in t he lat t ice is t he LMM ( 12) . Unlike t radit ional t rees, we only posit ion nodes at t he
det erminat ion dat es (t he payment and exercise dat es) . At each det erminat ion dat e,
t he cont inuous-t ime st ochast ic equat ion (12) shall be discret ized int o a discret e-t ime
scheme. Such discret ized schemes basically convert t he Brownian mot ion int o
discret e variables. There is no rest rict ion on discret izat ion schemes. At any
det erminat ion dat e t , for inst ance, we discret ize t he Brownian mot ion t o be equally
spaced as a grid of nodes
t i
y
,
, for i = 1,…,
t
S . The number of nodes
t
S and t he space
bet ween nodes
t i t i t
y y
, 1 , ÷
÷ = ¢ at each det erminat ion dat e can vary depending on t he
lengt h of t ime and t he accuracy requirement . The nodes should cover a cert ain
number of st andard deviat ions of t he Gaussian dist ribut ion t o guarant ee a cert ain
level of accuracy. We have t he discret e form of t he forward rat e as
|
|
.
|

\
|
+ + =
t i k
k
t i k k t i k
y t y t F y t F
,
2
, ,
2
) , ( exp ) 0 ( ) ; ( o
o
µ
( 21)
The zero- coupon bond (2) can be expressed in discret e form as
[
=
+
=
k
t n j
t i j j
t i t n t i k
y t F
y T t P y T t P
) (
,
, ) ( ,
) ; ( 1
1
) ; , ( ) ; , (
o
( 22)
We now have expressions for t he forward rat e (21) and discount bond (22) ,
condit ional on being in t he st at e
t i
y
,
at t ime t , and from t hese we can perform
valuat ion for t he underlying inst rument .
At t he mat urit y dat e, t he value of t he underlying inst rument is equal t o t he
payoff, i.e.,
) ( ) , (
, ,
N N
T i N T i N
y Z y T I = ( 23)
11
The underlying st at e process
t
X in t he LMM ( 11) is a Brownian mot ion. The
t ransit ion probabilit y densit y from st at e (
t i
x
,
, t ) t o st at e (
T j
x
,
, T ) is given by
(
(
¸
(

¸

÷
÷
÷
÷
=
) ( 2
) (
exp
) ( 2
1
) , ; , (
2
, ,
, ,
t T
x x
t T
T x t x p
t i T j
T j t i
t
( 24)
Applying t he variable subst it ut ion ( 8) , equat ion ( 24) can be expressed as
(
(
¸
(

¸

÷
÷ + ÷
÷
÷
=
) ( 2
) (
exp
) ( 2
1
) , ; , (
2
, ,
, ,
t T
t T y y
t T
T y t y p
t T t i T j
T j t i
o o
t
( 25)
Equat ion ( 20) can be furt her expressed as a condit ional value on any st at e
(
t i
y
,
, t ) as:
j
j j
j
j
T
N
t n j
j
t j T t i T
T N j
T j
j
t i N
t i
dy
t T
t T y y
y T T P
y Z
t T
y T t P
y t I
¿
} =
(
(
¸
(

¸

÷
÷ + ÷
÷
÷
=
) (
2
,
,
,
) ( 2
) (
exp
) ; , (
) (
) ( 2
1
) ; , (
) ; (
o o
t
(26)
This is a convolut ion int egral. Some fast int egrat ion algorit hms, e.g., Cubic
Spline I nt egrat ion, Fast Fourier Transform ( FFT) , et c., can be used for opt imizat ion.
We use t he Trapezoidal Rule I nt egrat ion in t his paper for ease of illust rat ion.
I ncomplete informat ion handling. Convolut ion is widely used in Elect rical
Engineering, part icularly in signal processing. The import ant part is t hat t he far left
and far right part s of t he out put are based on incomplet e informat ion. Any models
t hat t ry t o comput e t he t ransit ion values using int egrat ion will be inaccurat e if t his
problem is not solved, especially for longer mat urit ies and mult iple exercise dat es.
Our solut ion is t o ext end t he input nodes by padding t he far end values on each side
and only t ake t he original range of t he out put nodes.
Next , we det ermine t he opt ion values in each final not ificat ion node. On t he
last exercise dat e, if we have not already exercised, t he reduced opt ion value in any
st at e
M i
y
,
is given by

|
|
.
|

\
|
= 0 ,
) ; , (
) ; (
max
) ; , (
) , (
,
,
,
,
M i N
ex
M
M i
ex
M
M i N
ex
M
M i
ex
M
y T t P
y t I
y T t P
y t V
( 27)
12
Then, we conduct t he backward induct ion process t hat is performed by
it erat ively rolling back a series of long j umps from t he final exercise dat e
ex
M
t across
not ificat ion dat es and exercise opport unit ies unt il we reach t he valuat ion dat e.
Assume t hat in t he previous rollback st ep
ex
j
t , we calculat ed t he reduced opt ion
value: ) ; , ( / ) , (
, , j i N
ex
j j i
ex
j
y T t P y t V . Now, we go t o
ex
j
t
1 ÷
. The reduced opt ion value at
ex
j
t
1 ÷
is
¦
)
¦
`
¹
¦
¹
¦
´
¦
=
÷ ÷
÷ ÷
÷ ÷
÷ ÷
÷ ÷
÷ ÷
) ; , (
) , (
,
) ; , (
) , (
max
) ; , (
) , (
1 , 1
1 , 1
1 , 1
1 , 1
1 , 1
1 , 1
j i N
ex
j
j i
ex
j
c
j i N
ex
j
j i
ex
j
j i N
ex
j
j i
ex
j
y T t P
y t V
y T t P
y t I
y T t P
y t V
( 28a)
where t he reduced cont inuat ion value is given by
j ex
j
ex
j
ex
j j
ex
j j j i j
j N
ex
j
j
ex
j
ex
j
ex
j
j i N
ex
j
j i
ex
j
c
dy
t t
t t y y
y T t P
y t V
t t
y T t P
y t V
}
(
(
¸
(

¸

÷
÷ + ÷
÷
÷
=
÷
÷ ÷ ÷
÷
÷ ÷
÷ ÷
) ( 2
) (
exp
) ; , (
) , (
) ( 2
1
) ; , (
) , (
1
2
1 1 1 ,
1
1 , 1
1 , 1
o o
t
( 28b)
We repeat t he rollback procedure and event ually work our way t hrough t he
first exercise dat e. Then t he present value of t he Ber mudan opt ion is found by a final
int egrat ion given by
( )
1
1
2
1 1 1
1 1
1 1
1
2
exp
) ; , (
) , (
2
1
) , 0 ( ) 0 ( dy
t
t y
y T t P
y t V
t
T P pv
ex
ex
N
ex
ex
ex
N Bermudan
}
(
(
¸
(

¸

+
÷ =
o
t
( 29)
The present value or t he price of t he callable exot ic from t he coupon payer’s
perspect ive is:
) 0 ( ) 0 ( ) 0 (
_instrument underly Bermudan payer
pv pv pv ÷ = ( 30)
This framework can be used t o price any int erest rat e product s in t he LMM
set t ing and can be easily ext ended t o t he Swap Market Model (SMM) .

I I I . Calibrat ion
First , if we choose t he LMM as t he cent ral model, we need t o price int erest
rat e derivat ives t hat depend on eit her or bot h of cap and swapt ion market s. Second,
we will undoubt edly use various swapt ions t o hedge a callable exot ic. I t is a
13
reasonable expect at ion t hat t he calibrat ed model we int end t o use t o price our
exot ic, will at least correct ly price t he market inst rument s t hat we int end t o hedge
wit h. Therefore, in an exot ic derivat ive pricing sit uat ion, recovery of bot h cap and
swapt ion market s might be desired.
The calibrat ion of t he LMM t o caplet prices is quit e st raight forward. However,
it is very difficult , if not impossible, t o perfect ly recover bot h cap and swapt ion
market s. Fort unat ely for t he LMM, t here also exist ext remely accurat e approximat e
formulas for swapt ions implied volat ilit y, e.g., Rebonat o' s formula.
We int roduced a paramet er u and set
i i
o u o

=
where
i
o

denot es t he market
Black caplet volat ilit y. One can choose different u for different
i
o . For simplicit y we
describe one u sit uat ion here. By choosing 1 = u , we have perfect ly calibrat ed t he
LMM t o t he caplet prices in t he market . However, our goal is t o select a u t o
minimize t he sum of t he squared differences of t he volat ilit ies derived from t he
market and t he volat ilit ies implied by our model for bot h caps and swapt ions
combined.
I n t he opt imizat ion, we use Rebonat o’s formula for an efficient expression of
t he model swapt ion volat ilit ies, given by
( )
( )
2
Re
,
2
1 , 2
,
2
1 ,
0
2
,
2
,
) 0 (
) 0 ( ) 0 ( ) 0 ( ) 0 (
) ( ) (
) 0 (
) 0 ( ) 0 ( ) 0 ( ) 0 (
1
bonato
j i
j j j i j i
j i
T
j i
ij j i j i LMM
S
F F w w
dt t t
S
F F w w
T
| o
|
o
| o
|
o
| o o
| o
u u
u o o
o o
µ
u
o
= =
=
¿
¿
}
+ =
+ =
 
( 31a)
where
ij
µ = 1 under one- fact or LMM. The swap rat e ) 0 (
,| o
S is given by
¿
+ =
=
|
o
| o
1
,
) 0 ( ) 0 ( ) 0 (
i
i i
F w S
( 31b)

( )
( )
¿ [
[
+ = + =
÷
+ =
÷
+
+
=
|
o o
|
o
o o
o o
1 1
1
1
1
) 0 ( 1
) 0 ( 1
) 0 (
k
k
j
j j k
j
j j i
i
F
F
w
( 31c)
14
Assume t he calibrat ion cont aining M caplet s and G swapt ions. The error
minimizat ion is given by
( ) ( )
¿ ¿
= + + =
÷ + ÷
G
j
swn
N j
bonato
N j
M
i i i 1
2
,
Re
, 1
2
min
o o
o uu o o u
 
( 32)
where
swn
N j , + o
o denot es t he market Black swapt ion volat ilit y. The opt imizat ion can be
found at a st at ionary point where t he first derivat ive is zero; t hat is,
¿ ¿
¿ ¿
= + =
= + =
+
+
=
G
j
bonato
N j
M
i i
G
j
swn
N j
M
i i
1
Re
, 1
1 , 1
o
o
u o
o o
u


( 33)
I n t erms of forward volat ilit ies, we use t he t ime- homogeneit y assumpt ion of
t he volat ilit y st ruct ure, where a forward volat ilit y for an opt ion is t he same or close
t o t he spot volat ilit y of t he opt ion wit h t he same t ime t o expiry. The t ime-
homogeneous volat ilit y st ruct ure can avoid non-st at ionary behavior.
I n t he LMM, forward swap rat es are generally not lognormal. Such deviat ion
from t he lognormal paradigm however t urns out t o be ext remely small. Rebonat o
[ 1999] shows t hat t he pricing errors of swapt ions caused by t he lognormal
approximat ion are well wit hin t he market bid/ ask spread. For most short mat urit y
int erest rat e product s, we can use t he lat t ice model wit hout calibrat ion (33) .
However, for longer mat urit y or deeply in t he money (I TM) or out of t he money
( OTM) exot ics we may need t o use t he calibrat ion and even some specific skew/ smile
adj ust ment t echniques t o achieve high accuracy.

I V. NUMERI CAL I MPLEMENTATI ON
I n t his sect ion, we will elaborat e on more det ails of t he implement at ion. We
will st art wit h a simple callable bond for t he purpose of an easy illust rat ion and t hen
move on t o some t ypical callable exot ics, e.g., callable capped float er swap and
15
callable range accrual swap. The reader should be able t o implement and replicat e
t he model aft er reading t his sect ion.

Callable Bond
A callable bond is a bond wit h an opt ion t hat allows t he issuer t o ret ain t he
privilege of redeeming t he bond at some point s before t he bond reaches t he mat urit y
dat e. For ease of illust rat ion, we choose a very simple callable bond wit h a one-year
mat urit y, a quart erly payment frequency, a $100 principal amount (A) , and a 4%
annual coupon rat e ( t he quart erly coupon 1 = C ) . The call dat es are 6 mont hs, 9
mont hs, and 12 mont hs. The call price (H) is 100% of t he principal. The bond spread
( ç ) is 0.002. Let t he valuat ion dat e be 0. A det ailed descript ion of t he callable bond
and current (spot ) market dat a is shown in Exhibit 2.
For a short - t erm mat urit y callable bond, our lat t ice model can reach high
accuracy even wit hout calibrat ion ( 33) and incomplet e informat ion handling.
Therefore, we set 1 = u and
i i
o o

= . The valuat ion procedure for a callable bond
consist s of 4 st eps:
St ep 1: Creat e t he lat t ice. Based on t he long j ump t echnique, we posit ion
nodes only at t he det erminat ion ( payment / exercise) dat es. The number of nodes and
t he space bet ween nodes at each det erminat ion dat e may vary depending on t he
lengt h of t ime and t he accuracy requirement . To simplify t he illust rat ion, we choose
t he same set t ings across t he lat t ice, wit h a grid space ( space bet ween nodes)
2 / 1 = ¢ , and a number of nodes S= 7. I t covers 3 ) 1 ( = ÷ S ¢ st andard deviat ions for a
st andard normal dist ribut ion. The nodes are equally spaced and symmet ric, as shown
in Exhibit 3.
St ep 2: Find t he opt ion value at each final node. At t he final mat urit y dat e
4
T , t he payoff of t he callable bond in any st at e
i
y is given by
16
( ) C A H y T V V
i i
+ = = , min ) , ( :
4 4 ,
( 34)
where A denot es t he principal amount , C denot es t he bond coupon, and H denot es
t he call price. The opt ion values at t he mat urit y are equal t o t he payoffs as shown in
Exhibit 3.
St ep 3: Find t he opt ion value at earlier nodes. Let us go t o t he penult imat e
not ificat ion dat e
3
T . The opt ion value in any st at e
i
y is given by
( ) C V H y T V V
c
i i i
+ = =
3 , 3 3 ,
, min ) , ( : ( 35)
Equat ion (35) can be furt her expressed in t he form of reduced value as
|
|
.
|

\
| +
= =
) ; , (
,
) ; , (
min
) ; , (
:
~
4 3
3 ,
4 3 4 3
3 ,
3 ,
i
c
i
i i
i
i
y T T P
C V
y T T P
H
y T T P
V
V
( 36a)
where ) ; , ( /
4 3 3 , i
C
i
y T T P V denot es t he reduced cont inuat ion value in st at e
i
y at
3
T given
by
( )
( )
( )
( )
( )
( )
( )
¦
)
¦
`
¹
(
(
¸
(

¸

÷
÷ + ÷
÷ +
¦
¹
¦
´
¦
(
(
¸
(

¸

÷
÷ + ÷
÷
÷
÷ ÷
=
(
¸
(

¸

÷
÷ + ÷
÷
÷
÷ ÷
=
÷
÷
=
¿
}
3 4
2
3 3 4 4 1
1 4
7
2
3 4
2
3 3 4 4
4
3 4
3 4
3 4
2
3 3 4 4
4
3 4
3 4
4 3
3 ,
2
) (
exp ) , (
2
) (
exp ) , (
2
2
) ( exp
2
) (
exp ) , (
2
) ( exp
) ; , (
T T
T T y y
y T V
T T
T T y y
y T V
T T
T T
dY
T T
T T y Y
Y T V
T T
T T
y T T P
V
i j
j
j
i j
j
i
i
c
i
o o
o o
¢
t
ç
o o
t
ç
(36b)
where ç denot es t he bond spread. Similarly we can comput e t he reduced callable
bond values at
2
T . All int ermediat e reduced values are shown in Exhibit 3.
St ep 4: Comput e t he final int egrat ion. The final int egral at valuat ion dat e 0 is
calculat ed as
17
( )
( )
399 . 80
2
) (
exp
) ; , (
) , (
2
) (
exp
) ; , (
) , (
2
2
exp
) , 0 (
2
) (
exp
) ; , (
) , (
2
exp
) , 0 ( ) 0 (
2
2
2 2 1
1 4 2
1 2
7
2
2
2
2 2
4 2
2
2
2
4
2
2
2 2
4 2
2
2
2
4
=
¦
)
¦
`
¹
(
(
¸
(

¸
+
÷ +
¦
¹
¦
´
¦
(
(
¸
(

¸
+
÷
÷
=
(
¸
(

¸
+
÷
÷
=
÷
÷
÷
=
¿
}
T
T y
y T T P
y T V
T
T y
y T T P
y T V
T
T
T P
dY
T
T Y
Y T T P
Y T V
T
T
T P V
j
j
j
j
j
j
j
o
o
¢
t
ç
o
t
ç

( 37)
Moreover, we need t o add t he present value of t he coupon at
1
T int o t he final
price. The final callable bond value is given by
398 . 81 ) , 0 ( ) exp( ) 0 ( ) 0 (
1 1
= ÷ + = C T P T V V ç ( 38)
The pseudo- code is supplied in Appendix B for t he implement at ion program.
The convergence result s shown in Exhibit 4 indicat e what occurs for a given grid
space ¢ when we increase t he number of nodes S. The speed of convergence is very
fast , ensuring t hat a small number of grids are sufficient . All calculat ions are
converged t o 100.7518. One sanit y check is t hat t he callable bond price should be
close t o t he st raight bond price if t he call prices become very high. Bot h of t hem are
comput ed as 103.3536.

Callable capped float er swap
A callable capped float er swap has t wo legs: a regular float ing leg and a
st ruct ured coupon leg. The st ruct ured coupon rat e of t he j -t h period (
j j
T T ,
1 ÷
) is given
by
} ], ), ( max{min[
1
F
j
C
j j j j j j j j
K K T F A C
÷
+ = ì q o
( 39)
where
j
A is t he not ional amount ,
C
j
K is t he rat e cap,
F
j
K is t he rat e floor,
j
q is t he
spread and
j
ì is t he scale fact or. For
j
ì > 0, it is called a callable capped float er
swap. For
j
ì < 0, it is called a callable inverse float er swap.
18
We choose a real middle life t rade wit h more t han 10 years remaining in it s
lifet ime. The float ing leg has a quart erly payment frequency wit h st ep- down
not ionals and st ep-up spreads. The st ruct ured coupon leg has a semi- annually
payment frequency wit h varying not ionals, spreads, scales, rat e caps, and rat e
floors. The call schedule is semi - annual.

Callable range accrual swap
A callable range accrual swap has t wo legs: a regular float ing leg and a
st ruct ured coupon leg. The st ruct ured coupon rat e of t he j -t h period (
j j
T T ,
1 ÷
) is given
by
¿
+ =
÷
=
j
j i
T
T t
j
i j j
j
M
RI A
C
1
1
o
( 40a)
where

¹
´
¦ s + s
=
otherwise
K t t t F K if
I
j i i i j
i
0
) , ; ( 1
max min
ç
( 40b)
where R is t he fixed rat e,
min j
K and
max j
K are t he accrual range of t he j - t h period,
) , ; ( ç +
i i i
t t t F is t he LI BOR rat e, ç is t he range accrual index t erm,
j
M is t he t ot al
number of t he business days in t he j -t h period.
We choose a real 10 years mat urit y t rade. The float ing leg has a quart erly
payment frequency and t he st ruct ur ed coupon leg has a semi- annually payment
frequency wit h varying accrual ranges. I t st art s wit h t he first call opport unit y being
in 3 years from incept ion, and t hen every year unt il t he last possibilit y being 9 years
from incept ion. The range accrual index t erm is 6 mont hs.
The lat t ice implement at ion procedure for a callable capped float er swap or a
callable range accrual swap is quit e similar t o t he one for a callable bond except t he
valuat ion for t he underlying inst rument .
19
The convergence diagrams of pricing calculat ions are shown in Exhibit s 5 and
6. Each curve in t he diagrams represent s t he convergence behavior for a given grid
space as nodes are increased. All of t he lat t ice result s are well converged. I f t he grid
space is smaller, t he algorit hm has bet t er convergence accuracy but a slower
convergence rat e, and vice verse.
We benchmarked our model under different drift approximat ion met hods wit h
several st andard market approaches, e.g., t he regression- based Mont e Carlo in t he
full LMM and t he HJM t rinomial t ree. The model comparisons for t he accuracy and
speed are shown in Exhibit s 7 and 8. Wit h regards t o accuracy, as expect ed, t he FD
performs very badly. AAFR and GAFR do a lit t le bet t er but errors go in different
direct ions. The same conclusions can be drawn for AADT and GADT. Bot h CEFR and
CEDT are t he best . I n t erms of CPU t imes, FD, AAFR, AADT, GAFR and GADT are t he
same. But CEFR and CEDT are slower, especially in t he callable range accrual swap
case.

V. CONCLUSI ON
I n t his paper, we proposed a lat t ice model in t he LMM t o price int erest rat e
product s. Conclusions can be drawn, support ed by t he previous sect ions. First , t he
model is quit e st able. The fast convergence behavior requires fewer discret izat ion
nodes. Second, t his model has almost equivalent accuracy t o t he current pricing
models in t he market . Third, t he implement at ion of t he model is relat ively easy. The
calibrat ion is very simple and st raight forward. Finally, t he performance of t he model
is probably t he best among all known approaches at t he t ime of writ ing.
We use t he following t echniques in our model: shift ed forward measure, drift
approximat ion, probabilit y dist ribut ion st ruct ure exploit at ion, long j ump, numerical
int egrat ion, incomplet e informat ion handling, and calibrat ion. Combining t hese
20
t echniques, t he model achieves sufficient accuracy in relat ively few t ime st eps and
discret e nodes, which makes it a very efficient met hod.
For ease of illust rat ion, we present t he lat t ice model based on t he Trapezoidal
Rule int egrat ion. A bet t er but slight ly more complicat ed solut ion is t o spline t he
payoff funct ions. The cubic spline of t he opt ion payoffs can achieve higher accuracy,
especially for Greeks calculat ions, and higher speed. Alt hough cubic spline t akes
some t ime, t he lat t ice will require much fewer nodes (23 ~ 28 nodes are good
enough) and can perform a much fast er int egrat ion. I n general, t he spline met hod
can provide a speedup fact or around 3 ~ 5 t imes.
We have implement ed t he lat t ice model t o price a variet y of int erest rat e
exot ics. The algorit hm can always achieve a fast convergence rat e. The accuracy,
however, is a bit t rickier, depending on many fact ors: drift approximat ion
approaches, numerical int egrat ion schemes, volat ilit y select ions, and calibrat ion, et c.
Some work, such as calibrat ion, is more of an art t han a science.

REFERENCE
Amin, K. “ Jump diffusion opt ion valuat ion in discret e t ime.” Journal of Finance, Vol.
48, No. 5 ( 1993) , pp. 1833- 1863.

Brace, A., D. Gat arek, and M. Musiela. “ The market model of int erest rat e dynamics.”
Mat hemat ical Finance, Vol. 7, No. 4 (1997) , pp. 127- 155.

Brigo, D., and F. Mercurio. “ I nt erest Rat e Models – Theory and Pract ice wit h Smiles,
I nflat ion and Credit .” Second Edit ion, Springer Finance, 2006.

21
Das, S. “ Random lat t ices for opt ion pricing problems in finance.” Journal of
I nvest ment Management , Vol. 9, No.2 ( 2011) , pp. 134- 152.

Gandhi, S. and P. Hunt . “ Numerical opt ion pricing using condit ioned diffusions,”
Mat hemat ics of Derivat ive Securit ies, Cambridge Universit y Press, Cambridge, 1997.

Hagan, P. “ Accrual swaps and range not es.” Bloomberg Technical Report , 2005.

Hull. J., and A. Whit e. “ Forward rat e volat ilit ies, swap rat e volat ilit ies and t he
implement at ion of t he Libor Market Model.” Journal of Fixed I ncome, Vol. 10, No. 2
( 2000) , 46- 62.

Mart zoukos, H., and L. Trigeorgis. “ Real (invest ment ) opt ions wit h mult iple sources
of rare event s.” European Journal of Operat ional Research, 136 (2002) , 696-706.

Pit erbarg, V. “ A Pract it ioner’s guide t o pricing and hedging callable LI BOR exot ics in
LI BOR Market Models.” SSRN Working paper, 2003.

Rebonat o, R. “ Calibrat ing t he BGM model.” RI SK, March ( 1999) , 74-79.

APPENDI X A:
Proof of Proposit ion 1. We rewrit e ( 9) as
|
|
.
|

\
|
÷
|
|
.
|

\
|
=
2 ) 0 (
) (
ln
1
) (
2
t
F
t F
t Y
j
j
j
j
o
o
( A1)
I n t he general Brownian Bridge case when t he Wiener process ) (t Y has ) (
1
t Y = a and
) (
2
t Y = b, t he dist ribut ion of ) (t Y at t ime ) , (
2 1
t t t e is normal given by
22
|
|
.
|

\
|
÷
÷ ÷
=
÷
÷ ÷
+ =
) (
) )( (
) ( ,
) (
) )( (
) ( ~ ) (
1 2
2 1
1 2
1
t t
t t t t
t
t t
a b t t
a t N t Y
Y Y
v µ
( A2)
I n our case: 0
1
= t , t t =
2
, a= 0, b= ) (t Y , ) , 0 ( t s e , t hus ( A2) can be expressed as
|
.
|

\
| ÷
= =
t
s t s
s t Y
t
s
s N s Y
Y Y
) (
) ( ), ( ) ( ~ ) ( v µ
( A3)
Let 2 / ) ( ) (
2
s s Y s A
j j j
o o + = . According t o t he linear t ransformat ion rule, ) (s A
j
is
a normal given by
|
|
.
|

\
|
÷
= =
|
|
.
|

\
|
= + = N
t
s t s
s s
F
t F
t
s
s
s s s A
j
Y j Aj
j
j j
Y j Aj j
) (
) ( ) ( ,
) 0 (
) (
ln
2
) ( ) ( ~ ) (
2
2
2
o
v o v
o
µ o µ
( A4)
Let ( ) ) ( exp ) ( s A s B
j j
= . By definit ion, ) (s B
j
is a lognormal given by
( ) ) ( ), ( ~ ) ( s s LogN s B
Aj Aj j
v µ . According t o t he charact erizat ions of t he lognormal
dist ribut ion, t he mean and variance of ) (s B
j
are
( )
|
|
.
|

\
| ÷
|
|
.
|

\
|
=
|
|
.
|

\
|
+ = =
t
s t s
F
t F s
s B E s
j
t
s
j
j Aj
Aj j Bj
2
) (
exp
) 0 (
) (
2
) (
exp ) ( ) (
2
0
o v
µ µ
( A5a)
( ) | | ( )
|
|
.
|

\
| ÷
|
|
.
|

\
|
|
|
.
|

\
|
÷
|
|
.
|

\
| ÷
= + ÷ =
t
s t s
F
t F
t
s t s
s s s s
j
t
s
j
j j
Aj Aj Aj Bj
) (
exp
) 0 (
) (
1
) (
exp ) ( ) ( 2 exp 1 ) ( exp ) (
2
2
2
o o
v µ v v

( A5b)
We have t he condit ional expect at ion of t he forward rat e ) (s F
j
as
( ) ( )
|
|
.
|

\
| ÷
|
|
.
|

\
|
= =
t
s t s
F
t F
F s B E F s F E
j
t
s
j
j
j j j t F F j
j j
2
) (
exp
) 0 (
) (
) 0 ( ) ( ) 0 ( | ) (
2
0 ) ( ), 0 (
o
( A6)
Proof of Proposit ion 2 . Let ) ( ) 0 ( 1 ) ( 1 ) ( s B F s F s C
j j j j j j
o o + = + = where
) (s B
j
is
defined above. According t o t he linear t ransformat ion rule, ) (s C
j
is a lognormal
given by ( ) ) ( ), ( ~ ) ( s v s LogN s C
j
 
µ . The mean and variance of ) (s C
j
are
23
|
|
.
|

\
|
÷
|
|
.
|

\
|
+ = + =
t
s t s
F
t F
F s F s
j
t
s
j
j
j j Bj j j Cj
2
) (
exp
) 0 (
) (
) 0 ( 1 ) ( ) 0 ( 1 ) (
2
o
o µ o µ
(A7a)
|
|
.
|

\
| ÷
|
|
.
|

\
|
|
|
.
|

\
|
÷
|
|
.
|

\
| ÷
= =
t
s t s
F
t F
t
s t s
F s F s
j
t
s
j
j j
j j Bj j j Cj
) (
exp
) 0 (
) (
1
) (
exp ) 0 ( ) ( ) 0 ( ) (
2
2
2
2 2 2 2
o o
o v o v
( A7b)
On t he ot her hand, according t o t he charact erizat ions of t he lognormal
dist ribut ion, t he mean and variance of ) (s C
j
are
|
.
|

\
|
+ =
2
) (
) ( exp ) (
s
s s
Cj
v
µ µ


( A8a)
( ) | | ( ) ) ( ) ( 2 exp 1 ) ( exp ) ( s s s s
Cj
v µ v v
  
+ ÷ =
( A8b)
Solving t he equat ion (A8a) and ( A8b) , we get
|
|
|
.
|

\
|
+
=
) ( / ) ( 1
) (
ln ) (
2
s s
s
s
Cj Cj
Cj
µ v
µ
µ

( A9a)

|
|
.
|

\
|
+ =
) (
) (
1 ln ) (
2
s
s
s
Cj
Cj
µ
v
v

( A9b)
We know t he first negat ive moment of t he lognormal is ( ) ( ) 2 / ) ( ) ( exp ) (
1
s s s C E
j
v µ
 
+ ÷ =
÷

and have t he condit ional expect at ion of t he drift t erm as
) (
) ( / ) ( 1
1
2
) (
) ( exp 1
) (
1
1
) ( 1
1
1
) ( 1
) (
2
0 0
) ( ), 0 (
0
s
s s
s
s
s C
E
s F
E
s F
s F
E
Cj
Cj Cj
j j j
t F F
j j
j j
j j
µ
µ v
v
µ
o o
o
+
÷ = |
.
|

\
|
+ ÷ ÷ =
|
|
.
|

\
|
÷ =
|
|
.
|

\
|
+
÷ =
|
|
|
.
|

\
|
+


( A10)
where
) (s
Cj
µ
, ) (s
Cj
v are given by ( A7a) and (A7b) .

APPENDI X B:
24
The following pseudo-code ( C+ + ) demonst rat es how t o implement t he model
t o price a callable bond. For t he purpose of an easy illust rat ion, we choose t he same
set t ings (t he number of nodes and t he grid space) across t he lat t ice and use t he
Trapezoidal Rule for numerical int egrat ion.

// 2*numNodes = 2*mNumNodes = the number of nodes (S); gap = mGap = the grid space (Phi)
double priceCallableBond (BondTrade* bd, CallableBond* cb, int numNodes, double gap) {
double pv;
cb->fillLattice();

// The last exercise
CallSchedule& cs = bd->callSch[numCallSch-1];
if (cs.term == bd->cFlow[numCashFlow-1].endDate) // The last exercise is at maturity
for (int i= -numNodes; i <= numNodes; i++)
cs.reducedValue[i+numNodes] = min (cs.callPrice,
bd->cFlow[numCashFlow-1].reducedPayoff[i+numNodes]);
else { // The last exercise is before maturity
for (int i= -numNodes; i <= numNodes; i++) {
pv = 0;
for (int j = bd->numCF-1; (bd->cFlow[j].endDate >= cs.term) && (j >= 0); j--) {
CashFlow& cf = bd->cFlow[j];
(cf.endDate == cs.term) ? pv += cf.reducedPayoff[i+numNodes]
: pv += exp(-bondSpread*(cf.endDate-cs.term)) * cb->integral(i,
cs.vol, cf.vol, cf.endDate, cs.term, cf.reducedPayoff);
}
cs.reducedValue[i+numNodes] = min (cs.callPrice/cs.df[i+numNodes], pv);
}
}

if (numCallSch > 1) { // The remaining exercises
for (int i = numCallSch - 2; i>=0; i--) {
CallSchedule& cs = bd->callSch[i];
CallSchedule& preCs = bd->callSch[i+1];
for (int j = -numNodes; j <= numNodes; j++) {
pv = exp(-bondSpread * (preCs.term - cs.term))
* cb->integral (j, cs.vol, preCs.vol, preCs.term, cs.term, preCs.reducedValue);
for (int k=bd->numCF-1; k >= 0; k--) // Count intermediate coupons
if ((bd->cFlow[k].endDate < preCs.term) && (bd->cFlow[k].endDate >= cs.term))
pv += bd->cFlow[k].reducedPayoff[j+numNodes]
* exp (-bondSpread*(bd->cFlow[k].endDate - cs.term));
cs.reducedValue[j+numNodes] = min (cs.callPrice/cs.df[j+numNodes], pv);
}
}
}

// The final integral
CallSchedule& preCs = bd->callSch[0];
pv = cb->integral (0, 0, preCs.vol, preCs.term, 0, preCs.reducedValue) *exp(-bondSpread*(preCs.term));
pv *= bd->cFlow[bd->numCF-1].endDf; // endDf: discount factor from 0 to the end date
for (int k=bd->numCF-1; k >= 0; k--) // Count intermediate coupons
if ((bd->cFlow[k].endDate < preCs.term))
pv += bd->cFlow[k].coupon * bd->cFlow[k].endDf * exp(-bondSpread * bd->cFlow[k].endDate);
return pv;
}

25
void CallableBond::fillLattice() {
for (int i = mTrade->numCF-1; i>=0; i--) {
CashFlow& cf = mTrade->cFlow[i];
if (cf.endDate < mTrade->callSch[0].term) break;
for (int j = -mNumNodes; j <= mNumNodes; j++)
fillNode(i, j, cf.startDate, mDrift);
}
}

void CallableBond::fillNode(int cI, int nI, double vT, DriftAppx flag) {
int numCF = mTrade->numCF;
double avgF, expon, fwdt, drift = 0;
CashFlow& fl = mTrade->cFlow[cI];
if (cI == numCF-1) { // At maturity
fl.df[nI + mNumNodes] = 1.0;
fl.reducedPayoff[nI + mNumNodes] = fl.notional + fl.coupon;
}
else if (fl.startDate <= 0) // Starting before valuation date)
fl.reducedPayoff[nI + mNumNodes] = fl.coupon * fl.endDf / mTrade->cFlow[numCF-1].endDf;
else {
fl.df[nI + mNumNodes] = 1.0;
for (int i = numCF - 1; i > cI; i--) {
CashFlow& cf = mTrade->cFlow[i];
expon = (cf.vol * cf.vol * vT / 2) + cf.vol * nI * mGap;
fwdt = cf.fwd0 * exp(-drift + expon);
switch (flag) { // The other cases are similar to either AAFR or CEFR
case AAFR: // Arithemic Average Fwd Rate
avgF = 0.5 * (cf.fwd0 + fwdt);
drift += vT * fl.vol * cf.vol * cf.delta * avgF / (1 + cf.delta * avgF);
break;
case CEFR: // Conditional Expectation of Fwd Rate
drift += fl.vol * cf.vol * integralFwd(cf.fwd0, fwdt, 0, vT, cf.vol, cf.delta);
break;
default:
break;
}
fl.df[nI + mNumNodes] /= (1 + fwdt * cf.delta); // df: discount factor maturing at maturity
}
fl.reducedPayoff[nI + mNumNodes] = fl.coupon / fl.df[nI + mNumNodes];
}
}

// Gauss-Legendre integration for drift
const double xArray[] = {0, 0.1488743389, 0.4333953941, 0.6794095682, 0.8650633666, 0.9739065285};
const double wArray[] = {0, 0.2955242247, 0.2692667193, 0.2190863625, 0.1494513491, 0.0666713443};
double CallableBond::integralFwd(double F0, double Ft, double a, double b, double vol, double delta) {
double xm = 0.5 * (b + a);
double xr = 0.5 * (b - a);
double ss = 0, dx = 0;
for (int j = 1; j <= 5; j++) {
dx = xr * xArray[j];
ss += wArray[j] * (expectFwd(F0, Ft, (xm + dx), b, vol, delta)
+ expectFwd(F0, Ft, (xm - dx), b, vol, delta));
}
return ss * xr;
}

double CallableBond::expectFwd(double F0, double Ft, double s, double t, double vol, double delta) {
double mean = F0 * pow ((Ft / F0), (s / t)) * exp(0.5 * vol * vol * s * (t - s) / t);
return delta * mean / (1 + delta * mean);-
}

26
// Trapezoidal Rule Integration
double CallableBond::integral (int curPos, double curVol, double preVol, double preTerm,
double curTerm, double* value){
double diffPos, tmpV, sum = 0;
for (int k = -mNumNodes; k <= mNumNodes; k++) {
diffPos = k*mGap - curPos*mGap + preVol * preTerm - curVol * curTerm;
tmpV = value[k+mNumNodes] * exp (-diffPos * diffPos/(2*(preTerm - curTerm)));
((k == -mNumNodes) || (k == mNumNodes)) ? sum += 0.5 * tmpV : sum += tmpV;
}
return sum * mGap / sqrt(2 * PI * (preTerm - curTerm));
}

EXHI BI T 1. The Grid/ Rect angular Lat t ice
This exhibit defines t he st at e space for t he underlying process
t
Y over t he first t wo discret e
t ime periods. The st art ing st at e
0
y at valuat ion dat e 0 is t he single root of t he lat t ice. At each
dat e
i
t t he underlying process
i
t
Y is discret ized int o a number of vert ical nodes/ st at es indexed
by j . The value
i
t j
y
,
denot es t he underlying process in st at e j at dat e
i
t . The node
1
, 1 t
y , for
inst ance, can evolve t o any discret e st at e in
2
t wit h cert ain t ransit ion probabilit ies. For a
Brownian mot ion, t he t ransit ion probabilit y can be easily det ermined by ( 25) .


EXHI BI T 2: The Callable Bond and Associated Spot Market Dat a
The callable bond has a one- year mat urit y, a $100 principal, a quart erly payment frequency,
and a 4% annual coupon rat e. Delt a = (end dat e – st art dat e) / 365 (day count : ACT/ 365). The
discount bond ) , 0 (
i
T P mat ures at t he end dat e
i
T . The call dat es are 6, 9, and 12 mont hs.
Cash flow index 1 2 3 4
St art dat e ( days) 0 92 181 273
1
t
1
, 2 t
y
1
, 3 t
y
1
, 4 t
y
1
, 5 t
y
2
, 1 t
y
2
, 2 t
y
2
, 3 t
y
2
, 4 t
y
2
, 5 t
y
0
y
1
, 1 t
y
2
t
27
End dat e ( days)
92 (
1
T ) 181 (
2
T ) 273 (
3
T ) 365 (
4
T )
Delt a ( years) 0.252055 0.243836 0.252055 0.252055
Payoff ( $) 1 1 1 101
Call Schedule ( days) - 181 273 365
Discount bond ) , 0 (
i
T P 0.999313 0.998557 0.997293 0.995667
Black Volat ilit y
i
o

- 0.337631 0.344218 0.350878

EXHI BI T 3: The LMM Lat t ice St ructure of t he Callable Bond.
The callable bond is defined in Exhibit 2. ) , (
~
:
~
, i j j i
y T V V = denot es t he reduced value of t he
callable bond at any node ( i, j ).
1
V denot es t he coupon at
1
T . ) 0 ( V is t he value calculat ed by
t he final int egrat ion. ) 0 ( V is t he final callable bond value t hat is equal t o ) 0 ( V plus t he present
value of
1
V . The grid space is 5 . 0 = ¢ and t he number of nodes is 7 = S . This lat t ice has 3
st eps and 7 nodes.


EXHI BI T 4: The Convergence Result s for t he Callable Bond.
The callable bond is defined in Exhibit 2. 1 = u and drift approximat ion is AADT. Each curve
represent s t he convergence behavior for a given grid space ( phi) as nodes are added. All
calculat ions are converged t o 100. 7518.
0
) 6 (
2
m T ) 12 (
4
m T ) 9 (
3
m T
5 . 1
1 4 , 1 3 , 1 2 , 1
÷ = = = = y y y y
1
2 4 , 2 3 , 2 2 , 2
÷ = = = = y y y y
) 3 (
1
m T
07 . 29
~
2 , 1
= V
99 . 66
~
2 , 2
= V
398 . 81 ) 0 ( = V
5 . 0
3 4 , 3 3 , 3 2 , 3
÷ = = = = y y y y
0
4 4 , 4 3 , 4 2 , 4
= = = = y y y y
5 . 0
5 4 , 5 3 , 5 2 , 5
= = = = y y y y
100
4 , 1
= V
100
4 , 2
= V
100
4 , 3
= V
100
4 , 4
= V
100
4 , 5
= V
24 . 44
~
3 , 1
= V
05 . 78
~
3 , 2
= V
24 . 96
~
3 , 3
= V
17 . 100
~
3 , 4
= V
82 . 98
~
3 , 5
= V
41 . 86
~
2 , 3
= V
72 . 96
~
2 , 4
= V
55 . 94
~
2 , 5
= V
7
5 . 0
=
=
S
¢
1
1
= V
399 . 80 ) 0 ( = V
100
4 , 6
= V
100
4 , 7
= V
1
6 4 , 6 3 , 6 2 , 6
= = = = y y y y
5 . 1
7 4 , 7 3 , 7 2 , 7
= = = = y y y y
11 . 87
~
3 , 6
= V
72 . 57
~
3 , 7
= V
36 . 77
~
2 , 6
= V
46 . 45
~
2 , 7
= V
28
Convergence of a callable bond
70
80
90
100
110
11 15 19 23 27 31 35 39 43 47
Number of nodes N
P
r
i
c
e
s
phi=1/2
phi=1/3
phi=1/4
.

EXHI BI T 5: The Convergence Result s for t he Callable Capped Float er Swap
The callable capped float er swap has more t han 10 years remaining in it s lifet ime. The float ing
leg has a quart erly payment frequency. The st ruct ural leg has a semi- annually payment
frequency. The call schedule is semi- annual. u = 1 and drift approximat ion is CEDT. Each curve
represent s t he convergence behavior for a given grid space ( phi) as nodes ( N) are added.
Convergence of a callable capped floater swap
-9.0%
-8.0%
-7.0%
-6.0%
-5.0%
-4.0%
-3.0%
-2.0%
-1.0%
0.0%
1.0%
2.0%
140 150 160 170 180 190 200 210 220 230 240 250 260 270 280 290 300
Number of nodes N
R
e
l
a
t
i
v
e

p
r
i
c
e

e
r
r
o
r
phi=1/4
phi=1/6
phi=1/8
phi=1/10


EXHI BI T 6: The Convergence Result s for t he Callable Range Accrual Swap
29
The callable range accrual swap has 10 years mat urit y. The float ing leg has a quart erly
payment frequency. The st ruct ural leg has a semi- annually payment frequency. There are 7
call opport unit ies. u = 1 and drift approximat ion is CEDT. Each curve represent s t he
convergence behavior for a given grid space (phi) as nodes are added.
Convergence of a callable range accrual swap
-5.0%
-4.0%
-3.0%
-2.0%
-1.0%
0.0%
1.0%
2.0%
140 150 160 170 180 190 200 210 220 230 240 250 260 270 280 290 300
Number of nodes N
R
e
l
a
t
i
v
e

p
r
i
c
e

e
r
r
o
r
s
phi=1/4
phi=1/6
phi=1/8
phi=1/10


EXHI BI T 7: The Benchmark Result s for t he Callable Capped Float er Swap
This exhibit present s t he result s for model comparison. We benchmark t he lat t ice model under
different drift approximat ion met hods wit h several st andard market approaches, e. g. , t he
regression-based Mont e Carlo in t he full LMM and t he HJM t rinomial t ree, for bot h accuracy
and speed. The t rade is t he same as t he one in Exhibit 5. The grid space is ¢ = 1/ 8 and t he
number of nodes is S= 200. PC denot es Predict or-Correct or. The column ‘Dif from MC’ = 1 –
( current row price) / (price of MC in LMM). All comput at ional t imes are denot ed in seconds on
a comput er wit h a 2. 33 GHz Duo Core CPU.
Model u Drift Steps n Calls Nodes/Paths Price Err from MC Run time
MC in LMM - PC 40 20 1 million 4,546,863.3 0 290.32
HJM tri-tree - - 1979 20 2n+1 4,602,136.3 1.22% 15.01
1 FD 40 20 200 4,822,728.4 6.07% 0.32
1 AAFR 40 20 200 4,637,263.2 1.99% 0.32
1 AADT 40 20 200 4,637,718.1 2.00% 0.32
1 GAFR 40 20 200 4,698,215.6 3.33% 0.32
1 GADT 40 20 200 4,698,441.3 3.33% 0.32
Our Model

1 CEFR 40 20 200 4,665,210.3 2.60% 0.38
30
1 CEDT 40 20 200 4,665,552.4 2.61% 0.39
0.99 FD 40 20 200 4,708,768.9 3.56% 0.32
0.99 AAFR 40 20 200 4,504,989.2 -0.92% 0.32
0.99 AADT 40 20 200 4,505,426.3 -0.91% 0.32
0.99 GAFR 40 20 200 4,609,779.5 1.38% 0.32
0.99 GADT 40 20 200 4,609,996.6 1.39% 0.32
0.99 CEFR 40 20 200 4,563,689.2 0.37% 0.38
0.99 CEDT 40 20 200 4,563,730.9 0.37% 0.39


EXHI BI T 8: The Benchmark Result s for t he Callable Range Accrual Swap
This exhibit present s t he result s for model comparison. We benchmark t he lat t ice model under
different drift approximat ion met hods wit h several st andard market approaches, e. g. , t he
regression-based Mont e Carlo in t he full LMM and t he HJM t rinomial t ree, for bot h accuracy
and speed. The t rade is t he same as t he one in Exhibit 6. The grid space is ¢ = 1/ 8 and t he
number of nodes is S= 200. The column ‘Dif from MC’ = 1 – (current row price) / ( price of MC
in LMM). All comput at ional t imes are denot ed in seconds on a comput er wit h a 2. 33 GHz Duo
Core CPU.
Model u Drift Steps n Calls Nodes/Paths Price Dif from MC Run time
MC in LMM - Euler 1801 7 1 million 585793.2 0.00% 2372.21
HJM tri-tree - - 1801 7 2n+1 582167.8 -0.62% 15.62
1 FD 1801 7 200 648365.4 10.68% 0.21
1 AAFR 1801 7 200 602482.2 2.85% 0.21
1 AADT 1801 7 200 602742.1 2.89% 0.21
1 GAFR 1801 7 200 616318.6 5.21% 0.21
1 GADT 1801 7 200 616425.3 5.23% 0.21
1 CEFR 1801 7 200 598253.3 2.13% 2.21
1 CEDT 1801 7 200 598372.4 2.15% 2.35
0.99 FD 1801 7 200 609373.9 4.03% 0.21
0.99 AAFR 1801 7 200 579337.2 -1.10% 0.21
0.99 AADT 1801 7 200 579386.3 -1.09% 0.21
0.99 GAFR 1801 7 200 591981.5 1.06% 0.21
0.99 GADT 1801 7 200 591917.6 1.05% 0.21
0.99 CEFR 1801 7 200 588918.9 0.53% 2.21
Our Model
0.99 CEDT 1801 7 200 588935.7 0.54% 2.35


Sign up to vote on this title
UsefulNot useful