Lattice calculation for forward LIBOR model

Tadashi Uratani^{∗}  Makoto Utsunomiya^{†}

1999.8.29

1 Introduction

We propose a new lattice calculation for Forward LIBOR model in Jamshidian[4], where he shows a difference method based on stochastic differential equation.

Modeling for term structure of interest rates has been shifted from instantenous interest rate (spot rate) model to instantaneous forward rate model such as HJM [2] in direction to utilize for practical derivative pricing. In actual market, there exist no instantaneous rate and most traders use Lognormal model. The typical short term interest rate in the market is 3 month LIBOR(London Interbank Offer Rate) which is used as underlying index for interest sensitive derivatives such as swap, cap and etc. The lognormal model for LIBOR is named ”Market Model” by Musiela [1], [5]. Characteristics of forward LIBOR model are choosing the numeraire and changing the probability measure so as to guarantee arbitrage-free and martingale. It makes simple to calculate arbitrage-free prices even for path-depending interest rate sensitive derivative such as knockout caplet.

The rest of paper is organized as follows. Section 1 reviews definitions of bond price process and the induced process of forward LIBOR. Section 2 shows martingale measure to rule out arbitrage among bonds prices. Changing measures make forward LIBOR martingales and we find the relations among those measures. In section 3, we show the lattice algorithm for forward LIBOR in the case of market model. Finally the lattice calculation is introduced for the path-dependent derivative, knockout caplet. We compare the lattice method and other simulation methods of forward and backward induction.

1.1 Discount bond prices and forward LIBOR

We define Discount bond prices and Forward LIBOR. Let L_{i}(t) be forward LIBOR at time t starting from T_{i} to T_{i+1} (0 ≤ t ≤ T_{i}). When time t equals to the starting time T_{i}, L_{i}(T_{i}) is called a Spot LIBOR. We denote the time interval between T_{i} and T_{i+1} by δ_{i} whose unit is a year. For example, when all L_{i}(t) are 3 month LIBOR, δ_{i} is 3/12.

In our model, time span is starting from T_{0} and ending at T_{N+1}. At T_{i}, there exists a discount bond which comes maturity date. Let B_{i}(t) be a discount bond price at time t with maturity date T_{i}, i = 1, ⋯, N + 1. Discount bonds are assumed to be default free. The price process is assumed to follow the stochastic differential equation under some regularity assumptions,

\frac{dB_{i}(t)}{B_{i}(t)} = μ_{i}(t)dt + σ_{i}(t)dw(t),  (1)

∗Hosei University,Tokyo

†Bank of Tokyo Mitsubishi

where w(t) is a Wiener process on the probability space (Ω, F, P). The forward LIBOR is defined by two bond prices,

L_{i}(t) = δ_{i}^{−1}(\frac{B_{i}(t)}{B_{i+1}(t)} − 1).  (2)

From definition of bond processes (1) and Ito’s lemma, The forward LIBOR process is also Ito’s process as,

dL_{i}(t) = α_{i}(t)dt + β_{i}(t)dw(t),  (3a)
β_{i}(t) = δ_{i}^{−1} \frac{B_{i}(t)}{B_{i+1}(t)}(σ_{i}(t) − σ_{i+1}(t)),  (3b)
α_{i}(t) = δ_{i}^{−1} \frac{B_{i}(t)}{B_{i+1}(t)}(μ_{i}(t) − μ_{i+1}(t))) − β_{i}(t)σ_{i+1}(t)  (3c)

On the other hand, a bond price at time t maturing by T_{n+1} is represented by forward LIBORs,

B_{n+1}(t) = B_{i(t)}(t) ∏_{i=i(t)}^{n} \frac{1}{1 + δ_{i}L_{i}(t)}

where, i(t) is a truncate function matched with time intervals.

2 Forward LIBOR model and arbitrage-free condition

Definitions and theorems necessary for the lattice calculation are outlined according to Jamshidian [3]. The arbitrage-free condition is that there exists a martingale probability measure for relative price process as in theorems. The relative price is defined by the ratio of derivative price divided by a bond price which is called ”numeraire”.

2.1 Numeraire and the change of probability measure

We choose a numeraire denoting X(t) satisfying positive Ito process

\frac{dX(t)}{X(t)} = μ_{X}(t)dt + σ_{X}(t)dw(t).

X(t) is one of bond prices B_{i}(t) (i = 1, ⋯, N + 1). Let P^{X} be the probability measure for the numeraire X(t). If there exists an adapted process ψ(t) such that

E_{P} [exp(∫_{0}^{T_{i+1}} ψ(s)dw(s) − \frac{1}{2} ∫_{0}^{T_{i+1}} ψ(s)^{2}ds)] = 1.

By Girsanov’s theorem, we can define a new Wiener process under the equivalent measure P^{X} with P such as

\frac{dP^{X}}{dP} = exp(∫_{0}^{T_{i+1}} ψ(s)dw(s) − \frac{1}{2} ∫_{0}^{T_{i+1}} ψ(s)^{2}ds)

The new Wiener process is

w_{X}(t) = w(t) + ∫_{0}^{t}(ϕ(s) − σ_{X}(s))ds  (4)

Where ψ(t) = σ_{X}(t) − ϕ(t) satisfies regularity condition.

Theorem １ [Martingale] Let C(t) be a derivative price process satisfying

\frac{dC(t)}{C(t)} = μ_{C}(t)dt + σ_{C}(t)dw(t).

Then, C(t)/X(t) is a martingale under the measure P^{X} if and only if

μ_{C}(t) = μ_{X}(t) + (σ_{C}(t) − σ_{X}(t))ϕ(t).  (5)

Moreover, the derivative price C(t) can be evaluated by the expectation of the measure P^{X} ,

C(t) = X(t)E^{X}[\frac{C(T)}{X(T)}] (t ≤ T)  (6)

The process ϕ(t) is called the market price of risk for the random process w(t) according to the following Arbitrage-Free condition.

Theorem ２ [Local Arbitrage Free] Positive process X(t) andC(t) are arbitrage-free if and only if There exists a process ϕ(t) satisfying

μ_{X}(t) − μ_{C}(t) = (σ_{X}(t) − σ_{C}(t))ϕ(t)  (7)

In the case of σ_{X}(t) = 0 there exists a process ϕ(t) such as,

μ_{C}(t) = r(t) + σ_{C}(t)ϕ(t).

The condition is well known as local arbitrage-free for one factor model. (7) is a generalized condition for multi-factors.

2.2 Probability measures for forward LIBOR

Substituting (7) of the arbitrage-free condition in theorem 2 to the forward LIBOR process of (3b),

dL_{n}(t) = β_{n}(t)[dw(t) + (ϕ(t) − σ_{n+1}(t))dt]

Under the probability measure for maturity time T_{n+1}, a Wiener process as (4)

dw_{n+1} = dw(t) + (ϕ(t) − σ_{n+1}(t))dt

can be defined.Thus,

dL_{n}(t) = β_{n}(t)dw_{n+1}(t).

Consequently, forward LIBOR L_{n}(t) is a martingale under P^{n+1}. Similarly, forward LIBOR L_{k} for k = n, ⋯, N are satisfying the following stochastic differential equation with initial values at t = 0,

dL_{k}(t) = β_{k}(t)dw_{k+1}(t),  (8)

under probability measure P^{k+1} and forward LIBORs are martingale. We call simply P^{k+1} forward LIBOR measure.

2.3 Relations between forward LIBOR measures

Let q^{k}(t, L_{i}(t); T, L_{i}(T)) be the transition probability from L_{i}(t) at t to L_{i}(T) at T under P^{k} . It can be easily shown the proposition. Proposition 1 The transition probabilities between the measures P^{k} and P^{k+1} are satisfying ,

q^{k}(t, L_{i}(t); T, L_{i}(T)) = \frac{1 + δ_{i}L_{k}(T)}{1 + δ_{i}L_{k}(t)}q^{k+1}(t, L_{i}(t); T, L_{i}(T)).  (9)

Let g(t, L_{i}(t)) a derivative price of LIBOR depending at time t. By theorem 1,

E_{t}^{k}[g(T, L_{i}(T))] = \frac{B_{k+1}(t)}{B_{k}(t)}E_{t}^{k+1}[g(T, L_{i}(T))\frac{B_{k+1}(T)}{B_{k}(T)}]
= E_{t}^{k+1}[g(T, L_{i}(T))\frac{1 + δ_{k}L_{k}(T)}{1 + δ_{k}L_{k}(t)}].

Thus,the transition probability functions are satisfying

q^{N+1}(t, L_{i}(t); T, L_{i}(T)) = ∏_{k=n+1}^{N} \frac{1 + δ_{i}L_{k}(T)}{1 + δ_{i}L_{k}(t)}q^{n+1}(t, L_{i}(t); T, L_{i}(T)).

3 Lattice algorithm

In LIBOR model, forward LIBOR L_{n}(t) is function of t which starts from 0 to T_{n}. When t = T_{n}, L_{n}(T_{n}) is called Spot LIBOR which is directly observable in the market. Interest sensitive derivatives depend on the Spot LIBOR. In traditional analysis, Spot LIBOR L_{n}(T_{n}) is assumed as a continuous function of T_{n} (0 ≤ T_{n} ≤ ∞). When we price a path dependent derivative, it requires to formulate stopping time modeling. In forward LIBOR model, however we can treat each L_{n}(t) separately under P^{n+1} and also as a martingale. Binomial trees for Forward LIBOR L_{n}(t),…, L_{N}(t) under P^{n+1},…, P^{N+1} are seen in Figure 1 which is seen how to construct in next sections. The binomial tree of Spot LIBOR L_{n}(T_{n}) is shown in the top side of tree triangle of the lattices.

3.1 Lattice calculation for forward LIBOR in Market Model

In Market Model of the volatility β_{n}(t) = λL_{n}(t) (λ =constant), forward LIBOR process follows geometric Brownian motion. As we have seen in (8), forward LIBOR L_{k}(t) is a martingale under P^{k+1}. The solution of SDE of(8) is,

L_{k}(t) = L_{k}(0) exp (−\frac{1}{2} ∫_{0}^{t} λ^{2}ds + ∫_{0}^{t} λdw_{k+1}(s))
= L_{k}(0) exp (−\frac{1}{2}λ^{2}t + λw_{k+1}(t))

We use a simple binomial tree for generating forward LIBOR process. Let 0, t_{1} = Δt, t_{2} = 2Δt,…, t_{m} = mΔt,…, t be the partition from time 0 to time t.

In the time interval Δt , forward LIBOR L_{k}(t_{m}) is moved to upside node L_{k}^{u}(t_{m+1}) or downside node L_{k}^{d}(t_{m+1}),

L_{k}^{u}(t_{m+1}) = L_{k}(t_{m}) exp (−\frac{1}{2}λ^{2}Δt + λ\sqrt{Δt})
L_{k}^{d}(t_{m+1}) = L_{k}(t_{m}) exp (−\frac{1}{2}λ^{2}Δt − λ\sqrt{Δt})

(10)

\overline{}T_{N+1} tO  [figure] [figure] [figure] L_{l}(T_{l}) g  [figure] [figure] [figure] L_{m}(T_{m}) [figure] [figure] [figure] L_{n}(T_{n})

Figure 1: Lattice for forward LIBOR

Let p_{u} and p_{d}(= 1 − p_{u}) be respectively the transition probability to upside node and downside node.

p_{u} = \frac{exp (\frac{1}{2}λ^{2}Δt + λ\sqrt{Δt}) − 1}{exp (2λ\sqrt{Δ}) − 1}

In lattice tree, let L_{kj}(t_{m}) be the j-th forward LIBOR node at time t_{m}. The transition probability from 0 to time t_{m} is from binomial probability

q_{j}^{k+1}(0, L_{k}(0), t_{m}, L_{kj}(t_{m})) = \frac{t_{m}!}{j!(t_{m} − j)!}p_{u}^{j}p_{d}^{t_{m}−j}.

Firstly we construct all nodes of binomial tree from Forward LIBOR L_{k}(0) up to time L_{k}(T_{k}) under P^{k+1}. In the same way, binomial trees for Forward LIBOR L_{k+1}(t),…, L_{N}(t) are calculated respectively under P^{k+2},…, P^{N+1}. The problem is, however, that each tree has different probability measure. In order to use the same probability measure, we take P^{N+1}. It is known from (9)

q_{j}^{N+1}(0, L_{k}(0), t_{m}, L_{kj}(t_{m})) = \frac{t_{m}!}{j!(t_{m} − j)!}p_{u}^{j}p_{d}^{t_{m}−j} ∏_{i=k+1}^{N} \frac{1 + δ_{i}L_{i}(0)}{1 + δ_{i}L_{ij}(t_{m})} (11)

Let g(t_{m}, L_{k}(t_{m})) be the payoff at t_{m} in European derivative of Forward LIBOR L_{k}(t_{m}). The price of derivative is given from (6)

g(0, L_{k}(0)) = B_{N+1}(0)E_{t}^{N+1} [\frac{g(t_{m}, L_{k}(t_{m}))}{B_{N+1}(t_{m})}] .

using the probability of (11)

g(0, L_{k}(0)) = B_{N+1}(0) ∑_{j}^{A_{tm}} [\frac{g(t_{m}, L_{kj}(t_{m}))\frac{t_{m}!}{j!(t_{m}−j)!}p_{u}^{j}p_{d}^{t_{m}−j}}{B_{N+1}(t_{m})} × ∏_{i=k+1}^{N} \frac{1 + δ_{i}L_{i}(0)}{1 + δ_{i}L_{ij}(t_{m})}]

where let A_{t_{m}}be the number of nodes at time t_{m}.

4 Valuation of Knockout Caplet

Caplet is an option contract where option holders receive at time T_{n+1} the difference of rates only if spot LIBOR at T_{n} exceeds the strike rate K. Let C(T_{n}) be the value of payoff at time T_{n}

C(T_{n}) = δ_{n}B_{n+1}(T_{n}) max(L_{n}(T_{n}) − K, 0).

Knockout caplet is a caplet where the contract becomes worthless once the spot LIBOR gets below the knockout rate K_{o} before maturity date. Let Kpl(T_{n}) be the value of Knockout caplet at time T_{n} as

Kpl(T_{n}) = B_{n+1}(T_{n})δ_{n} max(L_{n}(T_{n}) − K, 0) × I_{min(L_{1}(T_{1}),...,L_{n−1}(T_{n−1}))>K_{o}}. (12)

Let us compare calculation methods for knockdown caplet. Firstly, the price Kpl(t) can get in expectation form under P^{n+1} by,

Kpl(t) = B_{n+1}(t)E_{t}^{n+1} [δ_{n} max(L_{n}(T_{n}) − K, 0)
×I_{min(L_{1}(T_{1}),...,L_{n−1}(T_{n−1}))>K_{o}}]  (13)

Forward LIBOR process under measure P^{n+1}is

dL_{m}(t) = − ∑_{i=m+1}^{n} \frac{δ_{i}β_{i}(t)β_{m}(t)^{⊤}}{1 + δ_{i}L_{i}(t)} dt + β_{m}(t)dw_{n+1}(t). (t ≤ T_{m} ≤ T_{n})

From simulation of this SDE we generate all nodes of LIBOR values backwardly and then calculate the option price. This method is called Backward Induction in Jamshidian [4].

Secondly, under spot LIBOR measure P^{B} which set numeraire as rolling spot LIBOR price B(t) , the option price is

Kpl(t) = B_{n(t)}(t)E_{t}^{B} [\frac{δ_{n} max(L_{n}(T_{n}) − K, 0)}{∏_{j=n(t)}^{n}(1 + δ_{j}L_{j}(T_{j}))} × I_{min(L_{1}(T_{1}),...,L_{n−1}(T_{n−1}))>K_{o}} ]

Forward LIBOR process under the measure P^{B} are satisfying the following SDE and the calculation of price is called forward Induction.

dL_{n}(t) = ∑_{i=n(t)}^{n} \frac{δ_{i}β_{i}(t)β_{n}(t)^{⊤}}{1 + δ_{i}L_{i}(t)} dt + β_{n}(t)dw_{B}(t)

Thirdly, we propose a lattice algorithm for knockout caplet; (i)generate binomial trees for each forward LIBOR L_{i}(t) under the martingale measure P^{i+1} by (10) and at time T_{i} calculating Spot LIBOR L_{i}(T_{i})(i = 1,…, n − 1). (ii) assign the transition probabilities of same measure P^{n+1} by (11) to all nodes of all trees. (iii)calculate the probability

P^{n+1}[min(L_{1}(T_{1}), ⋯, L_{m}(T_{m})) > K_{o}]

that is all Spot LIBOR L_{i}(T_{i}) are larger than knockout rate K_{o} in the measure P^{N+1}. (iv) calculate the expectation of max(L_{n}(T_{n} − K, 0)) from (12). We show the comparison of three methods for knockout caplet in the our assumption;

B(t) ≡ \frac{B_{n(t)}(t)}{B_{1}(0)} ∏_{i=1}^{n(t)−1}(1 + δ_{i}L_{i}(T_{i}))

0Rolling spot LIBOR price

Knockout Caplet Assumption

• Knockout Caplet:3 monthLIBOR:price at time 0 for maturity 3 year

• knockout strike rate:K_{o} = 0.005, 0.01, 0.015, 0.02

• caplet strike rate:K = 0.02, 0.03

• log volatility:λ = 0.2, 0.3, 0.4, 0.5

• LIBOR period:10equal span

• Terminal measure:P^{16+1}

• initial yield:0.03(constant)

• average of simulation times(number of run:10000)

• random number:rnorm function(Splus Version3.2J Release 1 for Sun SPARC)

The comparison of three methods is give in the Table 1. Forward and backward inductions are methods originated in Jamshidian [3]. Lattice is our method in which the high knockout rate gives low caplet price due to proper evaluation knockout probability. The lattice method takes computing time only for generating lattice. however induction methods are simulation to require so many runs to have higher precision.

Table 1: Knockout Caplet K = 0.02 Simulation number:10000

K_{o}=0.005 0.01 0.015
Backward 0.002412289 0.002399882 0.002399109
λ =0.2 Forward 0.002433752 0.002434543 0.002419707
Lattice 0.002406534 0.002402772 0.002234430
Backward 0.002638880 0.002621019 0.002651906
0.3  Forward 0.002657684 0.002621897 0.002641743
Lattice 0.002642767 0.002457840 0.001513274
Backward 0.002953369 0.002959331 0.002875769
0.4  Forward 0.003013726 0.002955638 0.002843283
Lattice 0.002877610 0.002015249 0.000690205
Backward 0.003318795 0.003321196 0.003095759
0.5  Forward 0.003142553 0.003214522 0.003163378
lattice 0.002883561 0.001252366 0.000304366

References

[1] Brace,A.,Gatarek,D.,Musiela,M.(1997) The market model of interst rate dynamics. Math.Finance 7,127-154.

[2] Heath,D.,Jarrow,R.,Morton,A.(1992) Bond pricing and the term structure of interest rates:a new methodology for contingent claim valuation. Econometrica 60,77-105.

[3] Jamshidian,F.(1996) Libor and swap market models and measures Ι. Working paper,Sakura Global Capital.

[4] Jamshidian,F.(1997) Libor and swap market models and measures. Finance Stochastics 1,293-330.

[5] Musiela,M.,Rutkowski,M.(1997) Martingale methods in financial modeling. Berlin,Heidelberg,New York,Springer.