### Backward Induction on the RT Tree

*• After the RT tree is constructed, it can be used to price*
options by backward induction.

*• Recall that each node keeps two variances h*^{2}_{max} and
*h*^{2}_{min}.

*• We now increase that number to K equally spaced*
*variances between h*^{2}_{max} *and h*^{2}_{min} at each node.

*• Besides the minimum and maximum variances, the other*
*K* *− 2 variances in between are linearly interpolated.*^{a}

aLog-linear interpolation works better in practice (Lyuu & C. Wu (R90723065), 2005). Log-cubic interpolation works even better (C. Liu (R92922123), 2005).

### Backward Induction on the RT Tree (continued)

*• For example, if K = 3, then a variance of*
*10.5436* *× 10*^{−6}

will be added between the maximum and minimum
*variances at node (2, 0) on p. 988.*^{a}

*• In general, the kth variance at node (i, j) is*
*h*^{2}_{min}*(i, j)+k* *h*^{2}_{max}*(i, j)* *− h*^{2}_{min}*(i, j)*

*K* *− 1* *,* *k = 0, 1, . . . , K−1.*

*• Each interpolated variance’s jump parameter and*
branching probabilities can be computed as before.

aRepeated on p. 1008.

13.4809 13.4809

12.2883 12.2883

11.7170 11.7170

12.2846 10.5733

10.9645 10.9645

10.5697 10.5256

13.4644 10.1305

10.9600 10.9600

10.5215 10.5215

10.9603 10.1269

10.6042 09.7717

10.9553 10.9553

12.2700 10.5173

11.7005 10.1231

10.9511 10.9511

12.2662 10.5135

13.4438 10.9473

*y*_{t}

4.60517 4.61564 4.62611 4.63658 4.64705 4.65752

4.59470

4.58423

4.57376 0.01047

1 1

2 2

1 1

1 1

2 2

1 1

2 1

2 1

1 1

### Backward Induction on the RT Tree (concluded)

*• Suppose a variance falls between two of the K variances*
during backward induction.

*• Linear interpolation of the option prices corresponding*
to the two bracketing variances will be used as the

approximate option price.

*• The above idea is reminiscent of the one in dealing with*
Asian options.^{a}

aRecall p. 453.

### Numerical Examples

*• We next use the tree on p. 1008 to price a European call*
option with a strike price of 100 and expiring at date 3.

*• Recall that the riskless interest rate is zero.*

*• Assume K = 2; hence there are no interpolated*
variances.

*• The pricing tree is shown on p. 1011 with a call price of*
*0.66346.*

**– The branching probabilities needed in backward**
induction can be found on p. 1012.

5.37392 5.37392

3.19054 3.19054

3.19054 3.19054

2.11587 2.11587

1.20241 1.20241

1.05240 1.05240

1.05240 1.05240

0.66346 0.66346

0.52360 0.52360

0.26172 0.48366

0.00000 0.00000

0.13012 0.13012

0.14573 0.00000

0.00000 0.00000

0.00000 0.00000

0.00000 0.00000

0.00000 0.00000

*S*_{t}

100.00000 101.05240 102.11587 103.19054 104.27652 105.37392

98.95856

97.92797

96.90811

1 1

2 2

1 1

1 1

2 2

1 1

2 1

2 1

1 1

*h*^{2}*[i][j][0]*

*η[i][j][0]*

*rb[i][0]*

10.9600 10.9600

10.9553 10.9553

10.5215 10.5215

10.9645 10.9645

10.9511 10.9511

12.2700 10.5173

10.9603 10.1269

10.5697 10.5256

12.2883 12.2883

13.4438 10.9473

12.2662 10.5135

11.7005 10.1231

10.6042 09.7717

13.4644 10.1305

12.2846 10.5733

11.7170 11.7170

13.4809 13.4809

*h*^{2}[0][ ][ ]

1 1

1 1

1 1

2 2

1 1

2 1

2 1

1 1

2 2

η[0][ ][ ]

*p[0][ ][ ][ ]*
0

0

1

−1

3

−2

5

−3 rb[0][ ]

0.4974 0.4974 0.0000 0.0000 0.5026 0.5026

0.4972 0.4972 0.0004 0.0004 0.5024 0.5024 0.4775 0.4775 0.0400 0.0400 0.4825 0.4825 0.1237 0.1237 0.7499 0.7499 0.1264 0.1264

0.4970 0.4970 0.0008 0.0008 0.5022 0.5022 0.4773 0.1385 0.0404 0.7201 0.4823 0.1414 0.4596 0.1237 0.0760 0.7500 0.4644 0.1263 0.4777 0.4797 0.0396 0.0356 0.4827 0.4847 0.1387 0.1387 0.7197 0.7197 0.1416 0.1416

*h*^{2}[1][ ][ ]

*h*^{2}[2][ ][ ]

*h*^{2}[3][ ][ ]

η[1][ ][ ]

η[2][ ][ ]

*p[1][ ][ ][ ]*

*p[2][ ][ ][ ]*
*rb[i][1]*

*h*^{2}*[i][j][1]*

*η[i][j][1]*

* p[i][j][0][1] p[i][j][1][1]*

* p[i][j][0][0] p[i][j][1][0]*

* p[i][j][0][**−1] p[i][j][1][−1]*

rb[1][ ] rb[2][ ] rb[3][ ]

*j*

3 2 1 0

−1

−2

3 2 1 0

−1

−2
*j*

5 4 3 2

0

*j*

−3

−2

−1 1

### Numerical Examples (continued)

*• Let us derive some of the numbers on p. 1011.*

*• A gray line means the updated variance falls strictly*
*between h*^{2}_{max} *and h*^{2}_{min}.

*• The option price for a terminal node at date 3 equals*
*max(S*_{3} *− 100, 0), independent of the variance level.*

*• Now move on to nodes at date 2.*

*• The option price at node (2, 3) depends on those at*
*nodes (3, 5), (3, 3), and (3, 1).*

*• It therefore equals*

*0.1387 × 5.37392 + 0.7197 × 3.19054 + 0.1416 × 1.05240 = 3.19054.*

### Numerical Examples (continued)

*• Option prices for other nodes at date 2 can be computed*
similarly.

*• For node (1, 1), the option price for both variances is*

*0.1237 × 3.19054 + 0.7499 × 1.05240 + 0.1264 × 0.14573 = 1.20241.*

*• Node (1, 0) is most interesting.*

*• We knew that a down move from it gives a variance of*
*0.000105609.*

*• This number falls between the minimum variance*

*0.000105173 and the maximum variance 0.0001227 at*
*node (2,−1) on p. 1008.*

### Numerical Examples (continued)

*• The option price corresponding to the minimum*
variance is 0 (p. 1011).

*• The option price corresponding to the maximum*
*variance is 0.14573.*

*• The equation*

*x* *× 0.000105173 + (1 − x) × 0.0001227 = 0.000105609*
*is satisﬁed by x = 0.9751.*

*• So the option for the down state is approximated by*
*x* *× 0 + (1 − x) × 0.14573 = 0.00362.*

### Numerical Examples (continued)

*• The up move leads to the state with option price*
*1.05240.*

*• The middle move leads to the state with option price*
*0.48366.*

*• The option price at node (1, 0) is ﬁnally calculated as*

*0.4775 × 1.05240 + 0.0400 × 0.48366 + 0.4825 × 0.00362 = 0.52360.*

### Numerical Examples (continued)

*• A variance following an interpolated variance may*
exceed the maximum variance or be lower than the
minimum variance.

*• When this happens, the option price corresponding to*
the maximum or minimum variance will be used during
backward induction.^{a}

*• This act tends to reduce the dynamic range of the*
variance, however.

aCakici & Topyan (2000).

### Numerical Examples (concluded)

*• Worse, an interpolated variance may choose a branch*
*that goes into a node that is not reached in forward*
induction.^{a}

*• In this case, the algorithm fails.*

*• The RT algorithm does not have this problem.*

**– This is because all interpolated variances are involved**
in the forward-induction phase.

*• It may be hard to calculate the implied β*_{1} *and β*_{2} from
option prices.^{b}

aLyuu & C. Wu (R90723065) (2005).

bY. Chang (B89704039, R93922034) (2006).

### Complexities of GARCH Models

^{a}

*• The RT algorithm explodes exponentially even for*
*moderate n.*^{b}

*• The mean-tracking tree of Lyuu and Wu (2005)*

*guarantees explosion not to happen for n not too large.*

**– That tree is similar to, but earlier than, the**
binomial-trinomial tree.^{c}

**– In fact, we can use the binomial-trinomial tree here,**
and everything goes through.^{d}

aLyuu & C. Wu (R90723065) (2003, 2005).

bRecall p. 984.

cRecall pp. 763ﬀ.

dContributed by Mr. Lu, Zheng-Liang (D00922011) on August 12, 2021.

### Complexities of GARCH Models (continued)

*• The next page summarizes the situations for many*
GARCH option pricing models other than NGARCH.

### Complexities of GARCH Models (concluded)

^{a}

Model Explosion Non-explosion

NGARCH *β*1 + *β*2*n > 1* *β*1 + *β*2(*√*

*n + λ + c)*^{2} *≤ 1*
LGARCH *β*1 + *β*2*n > 1* *β*1 + *β*2(*√*

*n + λ)*^{2} *≤ 1*
AGARCH *β*1 + *β*2*n > 1* *β*1 + *β*2(*√*

*n + λ)*^{2} *≤ 1*
GJR-GARCH *β*1 + *β*2*n > 1* *β*1 + (*β*2 + *β*3)(*√*

*n + λ)*^{2} *≤ 1*
TS-GARCH *β*1 + *β*2*√*

*n > 1* *β*1 + *β*2(*λ +**√*

*n) ≤ 1*
TGARCH *β*1 + *β*2*√*

*n > 1* *β*1 + (*β*2 + *β*3)(*λ +* *√*

*n) ≤ 1*
Heston-Nandi *β*1 + *β*2(*c −* ^{1}_{2})^{2} *> 1* *β*1 + *β*2*c*^{2} *≤ 1*

& *c ≤* ^{1}_{2}

VGARCH *β*1 + (*β*2*/4) > 1* *β*1 *≤ 1*

aY. C. Chen (R95723051) (2008); Y. C. Chen (R95723051), Lyuu, &

Wen (D94922003) (2012).

### Obtaining Proﬁt and Loss of Delta Hedge

*• Proﬁt and loss of any hedging strategy should be*

calculated under the real-world probability measure.^{a}

*• But hedging parameters such as delta should be*
computed under the risk-neutral measure.

*• Say we want the distribution of proﬁt and loss for the*
delta hedge under the GARCH model.

*• If a tree is built for each sampled stock price to obtain*
the delta, the complexity will be astronomical.^{b}

*• How to do it eﬃciently?*^{c}

aRecall p. 712.

bAugustyniak, Badescu, & Guo (2021).

cLu (D00922011), Lyuu, & Yang (D09922005) (2021).

*Introduction to Term Structure Modeling*

The fox often ran to the hole by which they had come in, to ﬁnd out if his body was still thin enough to slip through it.

*— Grimm’s Fairy Tales*

And the worst thing you can have is models and spreadsheets.

— Warren Buﬀet (2008, May 3)
Renaissance is 100% model driven.^{a}
James Simons (2015, May 13, 37:09)

ahttps://www.youtube.com/watch?v=QNznD9hMEh0

### Outline

*• Use the binomial interest rate tree to model stochastic*
term structure.

**– Illustrates the basic ideas underlying future models.**

**– Applications are generic in that pricing and hedging**
methodologies can be easily adapted to other models.

*• Although the idea is similar to the earlier one used in*
option pricing, the current task is more complicated.

**– The evolution of an entire term structure, not just a**
single stock price, is to be modeled.

**– Interest rates of various maturities cannot evolve**
arbitrarily, or arbitrage proﬁts may occur.

### Goals

*• A stochastic interest rate model performs two tasks.*

**– Provides a stochastic process that deﬁnes future term**
structures without arbitrage proﬁts.

**– “Consistent” with the observed term structures.**

### History

*• The methodology was founded by Merton (1970).*

*• Modern interest rate modeling is often traced to 1977*
when Vasicek and Cox, Ingersoll, and Ross developed
simultaneously their inﬂuential models.

*• Early models have ﬁtting problems because they may*
not price today’s benchmark bonds correctly.

*• An alternative approach pioneered by Ho and Lee (1986)*
makes ﬁtting the market yield curve mandatory.

*• Models based on such a paradigm are called*
arbitrage-free or no-arbitrage models.^{a}

aSomewhat misleadingly.

### Binomial Interest Rate Tree

*• Goal is to construct a no-arbitrage interest rate tree*
consistent with the yields and/or yield volatilities of
zero-coupon bonds of all maturities.

**– This procedure is called calibration.**^{a}

*• Pick a binomial tree model in which the logarithm of the*
future short rate obeys the binomial distribution.

**– Like the CRR tree for pricing options.**

*• The limiting distribution of the short rate at any future*
time is hence lognormal.

aDerman (2004), “complexity without calibration is pointless.”

### Binomial Interest Rate Tree (continued)

*• A binomial tree of future short rates is constructed.*

*• Every short rate is followed by two short rates in the*
following period.

*• In the ﬁgure on p. 1031, node A coincides with the start*
*of period j during which the short rate r is in eﬀect.*

*• At the conclusion of period j, a new short rate goes into*
*eﬀect for period j + 1.*

*r*

***** ^{r}^{}

*0.5*

**j** _{r}_{h}

*0.5*
A

B

C

*period j − 1* *period j* *period j + 1*
*time j − 1* *time j*

### Binomial Interest Rate Tree (continued)

*• This may take one of two possible values:*

**– r*** _{}*: the “low” short-rate outcome at node B.

**– r**_{h}: the “high” short-rate outcome at node C.

*• Each branch has a 50% chance of occurring in a*
risk-neutral economy.

*• We require that the paths combine as the binomial*
process unfolds.

*• Tuckman (2002) attributes this model to Salomon*
Brothers.

### Binomial Interest Rate Tree (continued)

*• The short rate r can go to r*_{h} *and r** _{}* with equal

*risk-neutral probability 1/2 in a period of length Δt.*

*• Hence the volatility of ln r after Δt time is*^{a}
*σ =* 1

2

*√*1

*Δt* ln

*r*_{h}
*r*_{}

*.* (138)

*• Above, σ is annualized, whereas r*_{}*and r*_{h} are period
based.

aSee Exercise 23.2.3 in text.

### Binomial Interest Rate Tree (continued)

*• Note that*

*r*_{h}

*r*_{}*= e*^{2σ}

*√**Δt**.*

*• Thus greater volatility, hence uncertainty, leads to larger*
*r*_{h}*/r** _{}* and wider ranges of possible short rates.

*• The ratio r*_{h}*/r** _{}* may depend on time if the volatility is a
function of time.

*• Note that r*_{h}*/r** _{}* has nothing to do with the current

*short rate r if σ is independent of r.*

### Binomial Interest Rate Tree (continued)

*• In general there are j possible rates for period j,*^{a}
*r*_{j}*, r*_{j}*v*_{j}*, r*_{j}*v*_{j}^{2}*, . . . , r*_{j}*v*_{j}^{j−1}*,*

where

*v*_{j}*= e*^{Δ} ^{2σ}^{j}

*√**Δt* (139)

*is the multiplicative ratio for the rates in period j (see*
ﬁgure on next page).

*• We shall call r** _{j}* the baseline rates.

*• The subscript j in σ** _{j}* above is meant to emphasize that
the short rate volatility may be time dependent.

aNot *j + 1.*

Baseline rates

A C

B B

C

C

D

D
D
H_{2} D

H L_{2 2}

H L_{3 3}

H L_{3 3}^{2}
H_{1}

H_{3}

### Binomial Interest Rate Tree (concluded)

*• In the limit, the short rate follows*

*r(t) = μ(t) e*^{σ(t) W (t)}*.* (140)
**– The (percent) short rate volatility σ(t) is a**

deterministic function of time.

*• The expected value of r(t) equals μ(t) e*^{σ(t)}^{2}* ^{(t/2)}*.

*• Hence a declining short rate volatility is usually imposed*
to preclude the short rate from assuming implausibly
high values.

*• Incidentally, this is how the binomial interest rate tree*
achieves mean reversion to some long-term mean.

### Memory Issues

*• Path independency: The term structure at any node is*
independent of the path taken to reach it.

*• So only the baseline rates r** _{i}* and the multiplicative

*ratios v*

*need to be stored in computer memory.*

_{i}*• This takes up only O(n) space.*^{a}

*• Storing the whole tree would take up O(n*^{2}) space.

**– Daily interest rate movements for 30 years require**
roughly (30 *× 365)*^{2}*/2* *≈ 6 × 10*^{7} double-precision
ﬂoating-point numbers (half a gigabyte!).

aThroughout, *n denotes the depth of the tree.*

### Set Things in Motion

*• The abstract process is now in place.*

*• We need the yields to maturities of the riskless bonds*
that make up the benchmark yield curve and their
volatilities.

*• In the U.S., for example, the on-the-run yield curve*

obtained by the most recently issued Treasury securities may be used as the benchmark curve.

### Set Things in Motion (concluded)

*• The term structure of (yield) volatilities*^{a} can be
estimated from:

**– Historical data (historical volatility).**

**– Or interest rate option prices such as cap prices**
(implied volatility).

*• The binomial tree should be found that is consistent*
with both term structures.

*• Here we focus on the term structure of interest rates.*

aOr simply the volatility (term) structure.

### Model Term Structures

*• The model price is computed by backward induction.*

*• Refer back to the ﬁgure on p. 1031.*

*• Given that the values at nodes B and C are P*_{B} *and P*_{C},
respectively, the value at node A is then

*P*_{B} *+ P*_{C}

*2(1 + r)* *+ cash flow at node A.*

*• We compute the values column by column (see next*
page).

*• This takes O(n*^{2}*) time and O(n) space.*

HL

A C

B

Cash flows:

B

C

C

D

D

D D

+

+ 2 2 H

1 2

2 1

## = B

+ 2 2

HL

2 3

2 1

## = B

H

HL^{2}

+ 2 2

HL

3 4

2 1

## ?

2## D

2_{1}

2_{2}

2_{3}

2_{4}

### Term Structure Dynamics

*• An n-period zero-coupon bond’s price can be computed*
*by assigning $1 to every node at time n and then*

applying backward induction.

*• Repeat this step for n = 1, 2, . . . to obtain the market*
discount function implied by the tree.

*• The tree therefore determines a term structure.*

*• It also contains a term structure dynamics.*

**– Taking any node in the tree as the new root induces**
a binomial interest rate tree and a term structure.

### Sample Term Structure

*• We shall construct interest rate trees consistent with the*
sample term structure in the table below.

**– This is calibration (the reverse of pricing).**

*• Assume the short rate volatility is such that*
*v* =^{Δ} *r*_{h}

*r*_{}*= 1.5,*
independent of time.

Period 1 2 3

Spot rate (%) 4 4*.2* 4*.3*

One-period forward rate (%) 4 4*.4* 4*.5*

Discount factor 0*.96154* 0*.92101* 0*.88135*

### An Approximate Calibration Scheme

*• Start with the implied one-period forward rates.*

*• Equate the expected short rate with the forward rate.*^{a}

*• For the ﬁrst period, the forward rate is today’s*
one-period spot rate.

*• In general, let f**j* *denote the forward rate in period j.*

*• This forward rate can be derived from the market*
discount function via^{b}

*f** _{j}* =

*d(j)*

*d(j + 1)* *− 1.*

aSee Exercise 5.6.6 in text for the motivation.

bSee Exercise 5.6.3 in text.

### An Approximate Calibration Scheme (continued)

*• As the ith short rate r*_{j}*v*_{j}* ^{i−1}*, 1

*≤ i ≤ j, occurs with*probability 2

^{−(j−1)}

_{j−1}*i−1*

, we set up

*j*
*i=1*

2^{−(j−1)}

*j* *− 1*
*i* *− 1*

*r*_{j}*v*_{j}^{i−1}*= f*_{j}*.*

*• Thus*

*r** _{j}* =

2

*1 + v*_{j}

_{j−1}

*f*_{j}*.* (141)

*• This binomial interest rate tree is trivial to set up*
*(implicitly), in O(n) time.*

### An Approximate Calibration Scheme (continued)

*• The ensuing tree for the sample term structure appears*
in ﬁgure on the next page.

*• For example, the price of the zero-coupon bond paying*

$1 at the end of the third period is

1

4 *×* 1
*1.04* *×*

1

*1.0352* *×*

1

*1.0288* + 1
*1.0432*

+ 1

*1.0528* *×*

1

*1.0432* + 1
*1.0648*

or 0.88155, which exceeds discount factor 0.88135.

*• The tree is not calibrated.*

4.0%

3.52%

2.88%

5.28%

4.32%

6.48%

Baseline rates

A C

B B

C

C

D

D

D

D

period 2 period 3 period 1

4.0% 4.4% 4.5%

Implied forward rates:

### An Approximate Calibration Scheme (concluded)

*• This bias is inherent: The tree overprices the bonds.*^{a}

*• Suppose we replace the baseline rates r**j* *by r*_{j}*v** _{j}*.

*• Then the resulting tree underprices the bonds.*^{b}

*• The true baseline rates are thus bounded between r**j*

*and r*_{j}*v** _{j}*.

aSee Exercise 23.2.4 in text.

bLyuu & C. Wang (F95922018) (2009, 2011).

### Issues in Calibration

*• The model prices generated by the binomial interest rate*
tree should match the observed market prices.

*• Perhaps the most crucial aspect of model building.*

*• Treat the backward induction for the model price of the*
*m-period zero-coupon bond as computing some function*
*f (r*_{m}*) of the unknown baseline rate r*_{m}*for period m.*

*• A root-ﬁnding method is applied to solve f(r**m**) = P for*
*r*_{m}*given the zero’s price P and r*_{1}*, r*_{2}*, . . . , r** _{m−1}*.

*• This procedure is carried out for m = 1, 2, . . . , n.*

*• It runs in O(n*^{3}) time.

### Binomial Interest Rate Tree Calibration

*• Calibration can be accomplished in O(n*^{2}) time by the
use of forward induction.^{a}

*• The scheme records how much $1 at a node contributes*
to the model price.

*• This number is called the state price.*^{b}

**– It is the price of a state contingent claim that pays**

$1 at that particular node (state) and 0 elsewhere.

*• The column of state prices will be established by moving*
*forward from time 0 to time n.*

aJamshidian (1991).

bRecall p. 212. Alternative names are the Arrow-Debreu price and Green’s function.

### Binomial Interest Rate Tree Calibration (continued)

*• Suppose we are at time j and there are j + 1 nodes.*

**– P**_{1}*, P*_{2}*, . . . , P** _{j}* are the known state prices at the

*earlier time j*

*− 1.*

**– The unknown baseline rate for period j is r***= r*^{Δ} * _{j}*.

**– The known multiplicative ratio is v***= v*

^{Δ}

*.*

_{j}**– The rates for period j are thus r, rv, . . . , rv*** ^{j−1}*.

^{a}

*• By deﬁnition,* _{j}

*i=1* *P*_{i}*is the price of the (j* *− 1)-period*
zero-coupon bond.

*• We want to ﬁnd r based on P*_{1}*, P*_{2}*, . . . , P** _{j}* and the price

*of the j-period zero-coupon bond.*

aRecall p. 1036, repeated on next page with *j = 3.*

### Binomial Interest Rate Tree Calibration (continued)

Baseline rates

A C

B B

C

C

D

D
D
H_{2} D

H L_{2 2}

H L_{3 3}

H L_{3 3}^{2}
H_{1}

H_{3}

### Binomial Interest Rate Tree Calibration (continued)

*• One dollar at time j has a known market value of*
*1/[ 1 + S(j) ]*^{j}*, where S(j) is the j-period spot rate.*

*• Alternatively, this dollar has a present value of*
*g(r)* =^{Δ} *P*_{1}

*(1 + r)* + *P*_{2}

*(1 + rv)* + *P*_{3}

*(1 + rv*^{2}) +*· · · +* *P*_{j}

*(1 + rv** ^{j−1}*)
(see the next plot).

*• So we solve*

*g(r) =* 1

*[ 1 + S(j) ]** ^{j}* (142)

*for r.*

1

1

*P*

_{i}*rv*

^{i}^{−}

^{1}

### Binomial Interest Rate Tree Calibration (continued)

*• Given a decreasing market discount function, a unique*
*positive solution for r is guaranteed.*

*• The state prices at time j can now be calculated (see*
*panel (a) of the next page with j = 2).*

*• We call a tree with these state prices a binomial state*
price tree (see panel (b) of the next page).

*• The calibrated tree is depicted on p. 1058.*

A C B

B

C

C

D

D D

D 4.00%

3.526%

2.895%

0.480769

0.460505

0.228308 A

C B

C

C

D

D D D

B

period 2 period 3 period 1

4.0% 4.4% 4.5%

Implied forward rates:

0.480769 1

0.112832

(b)

0.333501

0.327842

0.107173 0.232197

(a) 1

H

HL

2 HL

2

2 1

### = B

2 H

2 HL

1 2

2 1

### = B = B

2 1 2H

1

2 1

### = B

21

2_{2}

4.00%

3.526%

2.895%

5.289%

4.343%

6.514%

A

C B

C

C

D

D D D

B

period 2 period 3 period 1

4.0% 4.4% 4.5%

Implied forward rates:

### Binomial Interest Rate Tree Calibration (concluded)

*• Use the Newton-Raphson method to solve for the r in*
*Eq. (142) on p. 1054 as g*^{}*(r) is easy to evaluate.*

*• The monotonicity and the convexity of g(r) also*
facilitate root ﬁnding.

*• The total running time is O(n*^{2}), as each root-ﬁnding
*routine consumes O(j) time.*

*• With a good initial guess,*^{a} the Newton-Raphson method
converges in only a few steps.^{b}

aSuch as *r**j* = ( ^{2}

*1+v** _{j}* )

^{j−1}*f*

*j*on p. 1046.

bLyuu (1999).

### A Numerical Example

*• One dollar at the end of the second period should have a*
present value of 0.92101 by the sample term structure.

*• The baseline rate for the second period, r*_{2}, satisﬁes
*0.480769*

*1 + r*_{2} + *0.480769*

*1 + 1.5* *× r*_{2} *= 0.92101.*

*• The result is r*_{2} *= 3.526%.*

*• This is used to derive the next column of state prices*
*shown in panel (b) on p. 1057 as 0.232197, 0.460505,*
*and 0.228308.*

*• Their sum matches the market discount factor 0.92101.*

### A Numerical Example (concluded)

*• The baseline rate for the third period, r*_{3}, satisﬁes
*0.232197*

*1 + r*_{3} + *0.460505*

*1 + 1.5* *× r*_{3} + *0.228308*

*1 + (1.5)*^{2} *× r*_{3} *= 0.88135.*

*• The result is r*3 *= 2.895%.*

*• Now, redo the calculation on p. 1047 using the new rates:*

1
4*×* 1

*1.04**×*

1

*1.03526* *×*

1

*1.02895* + 1
*1.04343*

+ 1

*1.05289* *×*

1

*1.04343* + 1
*1.06514*

*,*

which equals 0.88135, an exact match.

*• The tree on p. 1058 prices without bias the benchmark*
securities.

### Spread of Nonbenchmark Bonds

*• Model prices by the calibrated tree seldom match the*
market prices of nonbenchmark bonds.

*• The incremental return over the benchmark bonds is*
called spread.

*• If we add the spread uniformly over the short rates in*
the tree, the model price will equal the market price.

*• We will apply the spread concept to option-free bonds*
next.

### Spread of Nonbenchmark Bonds (continued)

*• We illustrate the idea with an example.*

*• Start with the tree on p. 1064.*

*• Consider a security with cash ﬂow C**i* *at time i for*
*i = 1, 2, 3.*

*• Its model price is p(s), which is equal to*

1

*1.04 + s* *×*

*C1 +* 1

2 *×* 1

*1.03526 + s* *×*

*C2 +* 1
2

*C3*

*1.02895 + s* + *C3*
*1.04343 + s*

+

1

2 *×* 1

*1.05289 + s* *×*

*C2 +* 1
2

*C3*

*1.04343 + s* + *C3*
*1.06514 + s*

*.*

*• Given a market price of P , the spread is the s that*
*solves P = p(s).*

4.00%+I

3.526%+I

2.895%+I

5.289%+I

4.343%+I

6.514%+I

A C

B

period 2 period 3 period 1

4.0% 4.4% 4.5%

Implied forward rates:

B

C

C

D

D D D

### Spread of Nonbenchmark Bonds (continued)

*• The model price p(s) is a monotonically decreasing,*
*convex function of s.*

*• Employ any root-ﬁnding method to solve*
*p(s)* *− P = 0*

*for s.*

*• But a quick look at the equation for p(s) reveals that*
*evaluating p*^{}*(s) directly is infeasible.*

*• Fortunately, the tree can be used to evaluate both p(s)*
*and p*^{}*(s) during backward induction.*

### Spread of Nonbenchmark Bonds (continued)

*• Consider an arbitrary node A in the tree associated with*
*the short rate r.*

*• While computing the model price p(s), a price p*A*(s) is*
computed at A.

*• Prices computed at A’s two successor nodes B and C are*
*discounted by r + s to obtain p*_{A}*(s) as follows,*

*p*_{A}*(s) = c +* *p*_{B}*(s) + p*_{C}*(s)*
*2(1 + r + s)* *,*
*where c denotes the cash ﬂow at A.*

### Spread of Nonbenchmark Bonds (continued)

*• To compute p*^{}_{A}*(s) as well, node A calculates*
*p*^{}_{A}*(s) =* *p*^{}_{B}*(s) + p*^{}_{C}*(s)*

*2(1 + r + s)* *−* *p*_{B}*(s) + p*_{C}*(s)*
*2(1 + r + s)*^{2} *.*

(143)

*• This is easy if p*^{}_{B}*(s) and p*^{}_{C}*(s) are also computed at*
nodes B and C.

*• When A is a terminal node, simply use the payoﬀ*
*function for p*_{A}*(s).*^{a}

aContributed by Mr. Chou, Ming-Hsin (R02723073) on May 28, 2014.

1 1 ? I

### = B

1 1 ?L I

### = B

1 1? ?L^{2} ID

1 1 = I

### = B

1 1 >L I

### = B

1 1 > I

### = B

^{1 1}

^{=}

^{> I}

^{B}

^{2}

1 1= ? IB^{2}

1 1= ?L IB^{2}

1 1

### ?

?L^{2}I

### D

^{2}

1 1= >L IB^{2}

1 1= = IB^{2}

A C

B B

C

C

D

D D D

A C

B B

C

C

D

D D D

(a) (b)

A

C (c)

F I*= B

B F I ? F I F I

)= B *^{2 1}=^{( )} H I+^{( )}B

F I F I F I H I

F I F I

)= B = B = B*^{2 1}^{( )} +^{( )} ^{2 1}*^{( )}H I+^{( )}^{2}

F I+= B

F I+= B

F I*= B

=

>

?

=

>

?

H

### Spread of Nonbenchmark Bonds (continued)

*• Apply the above procedure inductively to yield p(s) and*
*p*^{}*(s) at the root (p. 1068).*

*• This is called the diﬀerential tree method.*^{a}
**– Similar ideas can be found in automatic**

diﬀerentiation^{b} (AD) and backpropagation^{c} in
artiﬁcial neural networks.

*• The total running time is O(n*^{2}).

*• The memory requirement is O(n).*

aLyuu (1999).

bRall (1981).

cWerbos (1974); Rumelhart, Hinton, & Williams (1986).

### Spread of Nonbenchmark Bonds (continued)

Number of Running Number of Number of Running Number of
*partitions n* time (s) iterations partitions time (s) iterations

500 7.850 5 10500 3503.410 5

1500 71.650 5 11500 4169.570 5

2500 198.770 5 12500 4912.680 5

3500 387.460 5 13500 5714.440 5

4500 641.400 5 14500 6589.360 5

5500 951.800 5 15500 7548.760 5

6500 1327.900 5 16500 8502.950 5

7500 1761.110 5 17500 9523.900 5

8500 2269.750 5 18500 10617.370 5

9500 2834.170 5 . . . . . . . . . . . .

75MHz Sun SPARCstation 20.

### Spread of Nonbenchmark Bonds (concluded)

*• Consider a three-year, 5% bond with a market price of*
100.569.

*• Assume the bond pays annual interest.*

*• The spread is 50 basis points over the tree.*^{a}

*• Note that the idea of spread does not assume parallel*
shifts in the term structure.

*• It also diﬀers from the yield spread (p. 133) and static*
spread (p. 134) of the nonbenchmark bond over an
otherwise identical benchmark bond.

aSee plot on the next page.

4.50%

100.569 A

C B

5 5 105

Cash flows:

B

C

C

D

D D 4.026% D

3.395%

5.789%

4.843%

7.014%

105

105

105

105 106.552

105.150

103.118 106.754

103.436

### More Applications of the Diﬀerential Tree: Calculating Implied Volatility (in seconds)

^{a}

**American call** **American put**

Number of Running Number of Number of Running Number of partitions time iterations partitions time iterations

100 0.008210 2 100 0.013845 3

200 0.033310 2 200 0.036335 3

300 0.072940 2 300 0.120455 3

400 0.129180 2 400 0.214100 3

500 0.201850 2 500 0.333950 3

600 0.290480 2 600 0.323260 2

700 0.394090 2 700 0.435720 2

800 0.522040 2 800 0.569605 2

Intel 166MHz Pentium, running on Microsoft Windows 95.

aLyuu (1999).

### Fixed-Income Options

*• Consider a 2-year 99 European call on the 3-year, 5%*

Treasury.

*• Assume the Treasury pays annual interest.*

*• From p. 1075 the 3-year Treasury’s price minus the $5*
interest at year 2 are $102.046, $100.630, and $98.579.

* – The accrued interest is not included as it belongs to*
the bond seller.

*• Now compare the strike price against the bond prices.*

*• The call is in the money in the ﬁrst two scenarios out of*
the money in the third.

A

C B

B

C

C

D

D D D

105

105

105

105 4.00%

101.955 1.458

3.526%

102.716 2.258

2.895%

102.046 3.046

5.289%

99.350 0.774

4.343%

100.630 1.630 6.514%

98.579 0.000 (a)

A

C B

B

C

C

D

D D D

105

105

105

105 4.00%

101.955 0.096

3.526%

102.716 0.000

2.895%

102.046 0.000

5.289%

99.350 0.200

4.343%

100.630 0.000 6.514%

98.579 0.421 (b)

### Fixed-Income Options (continued)

*• The option value is calculated to be $1.458 on*
p. 1075(a).

*• European interest rate puts can be valued similarly.*

*• Consider a two-year 99 European put on the same*
security.

*• At expiration, the put is in the money only when the*
Treasury is worth $98.579.

*• The option value is computed to be $0.096 on p. 1075(b).*

### Fixed-Income Options (concluded)

*• The present value of the strike price is*
*PV(X) = 99* *× 0.92101 = 91.18.*

*• The Treasury is worth B = 101.955.*

*• The present value of the interest payments during the*
life of the options is^{a}

*PV(I) = 5* *× 0.96154 + 5 × 0.92101 = 9.41275.*

*• The call and the put are worth C = 1.458 and*
*P = 0.096, respectively.*

*• The put-call parity is preserved:*

*C = P + B* *− PV(I) − PV(X).*

### Delta or Hedge Ratio

*• How much does the option price change in response to*
*changes in the price of the underlying bond?*

*• This relation is called delta (or hedge ratio), deﬁned as*
*O*_{h} *− O*_{}

*P*_{h} *− P*_{}*.*

*• In the above P*h *and P** _{}* denote the bond prices if the
short rate moves up and down, respectively.

*• Similarly, O*h *and O** _{}* denote the option values if the
short rate moves up and down, respectively.

### Delta or Hedge Ratio (concluded)

*• Delta measures the sensitivity of the option value to*
changes in the underlying bond price.

*• So it shows how to hedge one with the other.*

*• Take the call and put on p. 1075 as examples.*

*• Their deltas are*

*0.774* *− 2.258*

*99.350* *− 102.716* = *0.441,*
*0.200* *− 0.000*

*99.350* *− 102.716* = *−0.059,*

respectively.

### Volatility Term Structures

*• The binomial interest rate tree can be used to calculate*
the yield volatility of zero-coupon bonds.

*• Consider an n-period zero-coupon bond.*

*• First ﬁnd its yield to maturity y*_{h} *(y** _{}*, respectively) at
the end of the initial period if the short rate rises

(declines, respectively).

*• The yield volatility for our model is deﬁned as*
1

2 ln

*y*_{h}
*y*_{}

*.* (144)

### Volatility Term Structures (continued)

*• For example, take the tree on p. 1058 (repeated on next*
page).

*• The two-year zero’s yield at the end of the ﬁrst period is*
5.289% if the rate rises and 3.526% if the rate declines.

*• Its yield volatility is therefore*
1

2 ln

*0.05289*
*0.03526*

*= 20.273%.*

### Volatility Term Structures (continued)

4.00%

3.526%

2.895%

5.289%

4.343%

6.514%

A

C B

C

C

D

D D D

B

period 2 period 3 period 1

4.0% 4.4% 4.5%

Implied forward rates:

### Volatility Term Structures (continued)

*• Consider the three-year zero-coupon bond.*

*• If the short rate rises, the price of the zero one year from*
now will be

1

2 *×* 1

*1.05289* *×*

1

*1.04343* + 1
*1.06514*

*= 0.90096.*

*• Thus its yield is*

1

*0.90096* *− 1 = 0.053531.*

*• If the short rate declines, the price of the zero one year*
from now will be

1

2 *×* 1

*1.03526* *×*

1

*1.02895* + 1
*1.04343*

*= 0.93225.*

### Volatility Term Structures (continued)

*• Thus its yield is*

1

*0.93225* *− 1 = 0.0357.*

*• The yield volatility is hence*
1

2 ln

*0.053531*
*0.0357*

*= 20.256%,*
slightly less than the one-year yield volatility.

*• This is consistent with the reality that longer-term*
bonds typically have lower yield volatilities than
shorter-term bonds.^{a}

*• The procedure can be repeated for longer-term zeros to*
obtain their yield volatilities.

aThe relation is reversed for *price volatilities (duration).*

0 100 200 300 400 500 Time period

0.1 0.101 0.102 0.103 0.104

Spot rate volatility

(Short rate volatility is ﬂat at %10.)

### Volatility Term Structures (concluded)

*• We started with v**i* and then derived the volatility term
structure.

*• In practice, the steps are reversed.*

*• The volatility term structure is supplied by the user*
along with the term structure.

*• The v** _{i}*—hence the short rate volatilities via Eq. (139)

*on p. 1035—and the r*

*are then simultaneously*

_{i}determined.

*• The result is the Black-Derman-Toy (1990) model of*
Goldman Sachs.