• 沒有找到結果。

# Numerical Examples

N/A
N/A
Protected

Share "Numerical Examples"

Copied!
98
0
0

(1)

### Numerical Examples

• Assume

– S0 = 100, y0 = ln S0 = 4.60517.

– r = 0.

– n = 1.

– h20 = 0.0001096, γ = h0 = 0.010469.

– γn = γ/√

n = 0.010469.

– β0 = 0.000006575, β1 = 0.9, β2 = 0.04, and c = 0.

(2)

### Numerical Examples (continued)

• A daily variance of 0.0001096 corresponds to an annual volatility of

365 × 0.0001096 ≈ 20%.

• Let h2(i, j) denote the variance at node (i, j).

• Initially, h2(0, 0) = h20 = 0.0001096.

(3)

### Numerical Examples (continued)

• Let h2max(i, j) denote the maximum variance at node (i, j).

• Let h2min(i, j) denote the minimum variance at node (i, j).

• Initially, h2max(0, 0) = h2min(0, 0) = h20.

• The resulting three-day tree is depicted on p. 861.

(4)

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

yt

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

(5)

• A top number inside a gray box refers to the minimum variance h2min for the node.

• A bottom number inside a gray box refers to the maximum variance h2max for the node.

• Variances are multiplied by 100,000 for readability.

• A top number inside a white box refers to the η corresponding to h2min.

• A bottom number inside a white box refers to the η corresponding to h2max.

(6)

### Numerical Examples (continued)

• Let us see how the numbers are calculated.

• Try η = 1 in Eqs. (102)–(104) on p. 845 ﬁrst to obtain pu = 0.4974,

pm = 0,

pd = 0.5026.

• As they are valid probabilities, the three branches from the root node use single jumps.

(7)

### Numerical Examples (continued)

• Move on to node (1, 1).

• It has one predecessor node—node (0, 0)—and it takes an up move to reach the current node.

• So apply updating rule (106) on p. 851 with  = 1 and h2t = h2(0, 0).

• The result is h2(1, 1) = 0.000109645.

(8)

### Numerical Examples (continued)

• Because  h(1, 1)/γ  = 2, we try η = 2 in Eqs. (102)–(104) on p. 845 ﬁrst to obtain

pu = 0.1237, pm = 0.7499, pd = 0.1264.

• As they are valid probabilities, the three branches from node (1, 1) use double jumps.

(9)

### Numerical Examples (continued)

• Carry out similar calculations for node (1, 0) with

 = 0 in updating rule (106) on p. 851.

• Carry out similar calculations for node (1, −1) with

 = −1 in updating rule (106).

• Single jump η = 1 works for both nodes.

• The resulting variances are

h2(1, 0) = 0.000105215, h2(1,−1) = 0.000109553.

(10)

### Numerical Examples (continued)

• Node (2, 0) has 2 predecessor nodes, (1, 0) and (1, −1).

• Both have to be considered in deriving the variances.

• Because it takes a middle move to reach the current

node, we apply updating rule (106) on p. 851 with  = 0 and h2t = h2(1, 0).

• The result is h2t+1 = 0.000101269.

(11)

### Numerical Examples (continued)

• Now move on to the other predecessor node (1, −1).

• Because it takes an up move to reach the current node, apply updating rule (106) on p. 851 with  = 1 and h2t = h2(1,−1).

• The result is h2t+1 = 0.000109603.

• We hence record

h2min(2, 0) = 0.000101269, h2max(2, 0) = 0.000109603.

(12)

### Numerical Examples (continued)

• Consider state h2max(2, 0) ﬁrst.

• Because  hmax(2, 0)/γ  = 2, we ﬁrst try η = 2 in Eqs. (102)–(104) on p. 845 to obtain

pu = 0.1237, pm = 0.7500, pd = 0.1263.

• As they are valid probabilities, the three branches from node (2, 0) with the maximum variance use double

jumps.

(13)

### Numerical Examples (continued)

• Now consider state h2min(2, 0).

• Because  hmin(2, 0)/γ  = 1, we ﬁrst try η = 1 in Eqs. (102)–(104) on p. 845 to obtain

pu = 0.4596, pm = 0.0760, pd = 0.4644.

• As they are valid probabilities, the three branches from node (2, 0) with the minimum variance use single jumps.

(14)

### Numerical Examples (continued)

• Node (2, −1) has 3 predecessor nodes.

• Because it takes a down move to reach the current node, we apply updating rule (106) on p. 851 with  = −1

and h2t = h2(1, 1).a

• The result is h2t+1 = 0.0001227.

aNote that it is not  = −2.

(15)

### Numerical Examples (continued)

• Now move on to predecessor node (1, 0).

• Because it also takes a down move to reach the current node, we apply updating rule (106) on p. 851 with

 = −1 and h2t = h2(1, 0).

• The result is h2t+1 = 0.000105609.

(16)

### Numerical Examples (continued)

• Finally, consider predecessor node (1, −1).

• Because it takes a middle move to reach the current

node, we apply updating rule (106) on p. 851 with  = 0 and h2t = h2(1,−1).

• The result is h2t+1 = 0.000105173.

• We hence record

h2min(2, −1) = 0.000105173, h2max(2, −1) = 0.0001227.

(17)

### Numerical Examples (continued)

• Consider state h2max(2, −1).

• Because  hmax(2,−1)/γ  = 2, we ﬁrst try η = 2 in Eqs. (102)–(104) on p. 845 to obtain

pu = 0.1385, pm = 0.7201, pd = 0.1414.

• As they are valid probabilities, the three branches from node (2,−1) with the maximum variance use double jumps.

(18)

### Numerical Examples (continued)

• Next, consider state h2min(2, −1).

• Because  hmin(2,−1)/γ  = 1, we ﬁrst try η = 1 in Eqs. (102)–(104) on p. 845 to obtain

pu = 0.4773, pm = 0.0404, pd = 0.4823.

• As they are valid probabilities, the three branches from node (2,−1) with the minimum variance use single

jumps.

(19)

### Numerical Examples (concluded)

• Other nodes at dates 2 and 3 can be handled similarly.

• In general, if a node has k predecessor nodes, then up to 2k variances will be calculated using the updating rule.

– This is because each predecessor node keeps two variance numbers.

• But only the maximum and minimum variances will be kept.

(20)

### Negative Aspects of the RT Algorithm Revisited

a

• Recall the problems mentioned on p. 857.

• In our case, combinatorial explosion occurs when n > 1 − β1

β2 = 1 − 0.9

0.04 = 2.5 (see the next plot).

• Suppose we are willing to accept the exponential running time and pick n = 100 to seek accuracy.

• But the problem of shortened maturity forces the tree to stop at date 9!

aLyuu and Wu (R90723065) (2003, 2005).

(21)

25 50 75 100 125 150 175 Date 5000

10000 15000 20000 25000

Dotted line: n = 3; dashed line: n = 4; solid line: n = 5.

(22)

### 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 h2max and h2min.

• We now increase that number to K equally spaced variances between h2max and h2min at each node.

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

aIn practice, log-linear interpolation works better (Lyuu and Wu (R90723065) (2005)). Log-cubic interpolation works even better (Liu (R92922123) (2005)).

(23)

### 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. 861.a

• In general, the kth variance at node (i, j) is h2min(i, j)+k h2max(i, j) − h2min(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. 881.

(24)

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

yt

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

(25)

### 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 ideas are reminiscent of the ones on p. 391, where we dealt with Asian options.

(26)

### Numerical Examples

• We next use the numerical example on p. 881 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. 884 with a call price of 0.66346.

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

(27)

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

St

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

(28)

h2[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

h2[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

h2[1][ ][ ]

h2[2][ ][ ]

h2[3][ ][ ]

η[1][ ][ ]

η[2][ ][ ]

p[1][ ][ ][ ]

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

h2[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

(29)

### Numerical Examples (continued)

• Let us derive some of the numbers on p. 884.

• A gray line means the updated variance falls strictly between h2max and h2min.

• The option price for a terminal node at date 3 equals max(S3 − 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.

(30)

### 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. 881.

(31)

### Numerical Examples (continued)

• The option price corresponding to the minimum variance is 0.

• 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.

(32)

### 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.

(33)

### Numerical Examples (continued)

• A variance following an interpolated variance may exceed the maximum variance or be exceeded by the minimum variance.

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

aCakici and Topyan (2000).

(34)

### Numerical Examples (concluded)

• But 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 Ritchken-Trevor algorithm does not have this

problem as 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 and Wu (R90723065) (2005).

bChang (R93922034) (2006).

(35)

### Complexities of GARCH Models

a

• The Ritchken-Trevor algorithm explodes exponentially if n is big enough (p. 857).

• The mean-tracking tree of Lyuu and Wu (2005) makes sure explosion does not happen if n is not too large.b

• The next page summarizes the situations for many GARCH option pricing models.

– Our earlier treatment is for NGARCH only.

aLyuu and Wu (R90723065) (2003, 2005).

bSimilar to, but earlier than, the binomial-trinomial tree on pp. 667ﬀ.

(36)

### Complexities of GARCH Models (concluded)

a

Model Explosion Non-explosion

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

n + λ + c)2 ≤ 1 LGARCH β1 + β2n > 1 β1 + β2(

n + λ)2 ≤ 1 AGARCH β1 + β2n > 1 β1 + β2(

n + λ)2 ≤ 1 GJR-GARCH β1 + β2n > 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 − 12)2 > 1 β1 + β2c2 ≤ 1

& c ≤ 12

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

aChen (R95723051) (2008); Chen (R95723051), Lyuu, and Wen (D94922003) (2012).

(37)

### Introduction to Term Structure Modeling

(38)

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

(39)

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

— Warren Buﬀet, May 3, 2008

(40)

### 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.

(41)

### Issues

• 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.

(42)

### History

• Methodology 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 (somewhat misleadingly) arbitrage-free or no-arbitrage models.

(43)

### 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.

– Exactly like the CRR tree.

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

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

(44)

### 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 (p. 902).

• In the ﬁgure on p. 902, 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.

(45)

r

* r

0.5

j rh

0.5 A

B

C

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

(46)

### Binomial Interest Rate Tree (continued)

• This may take one of two possible values:

– r: the “low” short-rate outcome at node B.

– rh: 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.

• This model can be traced to Salomon Brothers.a

aTuckman (2002).

(47)

### Binomial Interest Rate Tree (continued)

• The short rate r can go to rh 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 σ = 1

2

1

Δt ln

rh r



(107) (see Exercise 23.2.3 in text).

• Above, σ is annualized, whereas r and rh are period based.

(48)

### Binomial Interest Rate Tree (continued)

• Note that

rh

r = e

Δt.

• Thus greater volatility, hence uncertainty, leads to larger rh/r and wider ranges of possible short rates.

• The ratio rh/r may depend on time if the volatility is a function of time.

• Note that rh/r has nothing to do with the current short rate r if σ is independent of r.

(49)

### Binomial Interest Rate Tree (continued)

• In general there are j possible ratesa in period j, rj, rjvj, rjvj2, . . . , rjvjj−1,

where

vj ≡ ejΔt (108) is the multiplicative ratio for the rates in period j (see ﬁgure on next page).

• We shall call rj the baseline rates.

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

aNot j + 1.

(50)

Baseline rates

A C

B B

C

C

D

D D H2 D

H L2 2

H L3 3

H L3 32 H1

H3

(51)

### Binomial Interest Rate Tree (concluded)

• In the limit, the short rate follows the following process, r(t) = μ(t) eσ(t) W (t), (109) in which 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.

(52)

### Memory Issues

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

• So only the baseline rates ri and the multiplicative ratios vi need to be stored in computer memory.

• This takes up only O(n) space.a

• Storing the whole tree would take up O(n2) space.

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

aThroughout, n denotes the depth of the tree.

(53)

### Set Things in Motion

• The abstract process is now in place.

• We need the annualized rates of return 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.

(54)

### Set Things in Motion (concluded)

• The term structure of (yield) volatilitiesa 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.

(55)

### Model Term Structures

• The model price is computed by backward induction.

• Refer back to the ﬁgure on p. 902.

• Given that the values at nodes B and C are PB and PC, respectively, the value at node A is then

PB + PC

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

• We compute the values column by column without

explicitly expanding the binomial interest rate tree (see next page).

• This takes O(n2) time and O(n) space.

(56)

HL

A C

B

Cash flows:

B

C

C

D

D

D D

+

+ 2 2 H

1 2

2 1

+ 2 2

HL

2 3

2 1

H

HL2

+ 2 2

HL

3 4

2 1

2

## D

21

22

23

24

(57)

### Term Structure Dynamics

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

applying backward induction.

• Repeating this step for n = 1, 2, . . . , one obtains 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 current state induces a binomial interest rate tree and, again, a term structure.

(58)

### Sample Term Structure

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

– This was called calibration (the reverse of pricing).

• Assume the short rate volatility is such that v rh

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

(59)

### An Approximate Calibration Scheme

• Start with the implied one-period forward rates and then equate the expected short rate with the forward rate (see Exercise 5.6.6 in text).

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

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

• This forward rate can be derived from the market discount function via

fj = d(j)

d(j + 1) − 1 (see Exercise 5.6.3 in text).

(60)

### An Approximate Calibration Scheme (continued)

• Since the ith short rate rjvji−1, 1 ≤ i ≤ j, occurs with probability 2−(j−1) j−1

i−1

, this means

j i=1

2−(j−1)

j − 1 i − 1



rjvji−1 = fj.

• Thus

rj =

 2

1 + vj

j−1

fj. (110)

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

(61)

### An Approximate Calibration Scheme (continued)

• The ensuing tree for the sample term structure appears in ﬁgure 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 thus not calibrated.

(62)

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:

(63)

### An Approximate Calibration Scheme (concluded)

• Indeed, this bias is inherent: The tree overprices the bonds (see Exercise 23.2.4 in text).

• Suppose we replace the baseline rates rj by rjvj.

• Then the resulting tree underprices the bonds.a

• The true baseline rates are thus bounded between rj and rjvj.

aLyuu and Wang (F95922018) (2009, 2011).

(64)

### 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 (rm) of the unknown baseline rate rm for period m.

• A root-ﬁnding method is applied to solve f(rm) = P for rm given the zero’s price P and r1, r2, . . . , rm−1.

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

• It runs in O(n3) time.

(65)

### Binomial Interest Rate Tree Calibration

• Calibration can be accomplished in O(n2) 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, the Arrow-Debreu price, or Green’s function.

– 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).

(66)

### Binomial Interest Rate Tree Calibration (continued)

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

– The unknown baseline rate for period j is r ≡ rj. – The multiplicative ratio is v ≡ vj.

– P1, P2, . . . , Pj are the known state prices at earlier time j − 1, corresponding to rates r, rv, . . . , rvj−1 for period j.

• By deﬁnition, j

i=1 Pi is the price of the (j − 1)-period zero-coupon bond.

• We want to ﬁnd r based on P1, P2, . . . , Pj and the price of the j-period zero-coupon bond.

(67)

### 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) P1

(1 + r) + P2

(1 + rv) + P3

(1 + rv2) +· · · + Pj

(1 + rvj−1) (see next plot).

• So we solve

g(r) = 1

[ 1 + S(j) ]j (111) for r.

(68)

1

1

i

i1

(69)

### 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) next page).

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

• The calibrated tree is depicted on p. 928.

(70)

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

2 H

2 HL

1 2

2 1

2 1 2

H

1

2 1

### = B

21

22

(71)

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:

(72)

### Binomial Interest Rate Tree Calibration (concluded)

• The Newton-Raphson method can be used to solve for the r in Eq. (111) on p. 924 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(n2), 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 the rj = (1+v2

j )j−1 fj on p. 917.

bLyuu (1999).

(73)

### 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, r2, satisﬁes 0.480769

1 + r2 + 0.480769

1 + 1.5 × r2 = 0.92101.

• The result is r2 = 3.526%.

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

• Their sum gives the correct market discount factor 0.92101.

(74)

### A Numerical Example (concluded)

• The baseline rate for the third period, r3, satisﬁes 0.232197

1 + r3 + 0.460505

1 + 1.5 × r3 + 0.228308

1 + (1.5)2 × r3 = 0.88135.

• The result is r3 = 2.895%.

• Now, redo the calculation on p. 918 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. 928 prices without bias the benchmark securities.

(75)

• Model prices calculated by the calibrated tree as a rule do not match 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.

(76)

### Spread of Nonbenchmark Bonds (continued)

• We illustrate the idea with an example.

• Consider a security with cash ﬂow Ci 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).

(77)

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

(78)

### Spread of Nonbenchmark Bonds (continued)

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

• We will employ the Newton-Raphson 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.

(79)

### Spread of Nonbenchmark Bonds (continued)

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

• In the process of computing the model price p(s), a price pA(s) is computed at A.

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

pA(s) = c + pB(s) + pC(s) 2(1 + r + s) , where c denotes the cash ﬂow at A.

(80)

### 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) pB(s) + pC(s) 2(1 + r + s)2 .

(112)

• 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 pA(s).a

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

(81)

1 1 ? I

1 1 ?L I

1 1? ?L2 ID

1 1 = I

1 1 >L I

1 1 > I

1 1= > IB2

1 1= ? IB2

1 1= ?L IB2

1 1

?L2 I

### D

2

1 1= >L IB2

1 1= = IB2

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

(82)

### Spread of Nonbenchmark Bonds (continued)

• Apply the above procedure inductively to yield p(s) and p(s) at the root (p. 938).

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

diﬀerentiation (AD)b and backpropagationc in artiﬁcial neural networks.

• The total running time is O(n2).

• The memory requirement is O(n).

aLyuu (1999).

bRall (1981).

cRumelhart, Hinton, and Williams (1986).

(83)

### 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.

(84)

### 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 can be shown to be 50 basis points over the tree (p. 942).

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

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

(85)

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

– Taking any node in the tree as the current state induces a binomial interest rate tree and, again, a term structure.... An Approximate

– Taking any node in the tree as the current state induces a binomial interest rate tree and, again, a term structure.... An Approximate Calibration

• 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

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

– at a premium (above its par value) when its coupon rate c is above the market interest rate r;. – at par (at its par value) when its coupon rate is equal to the market

– at a premium (above its par value) when its coupon rate c is above the market interest rate r;. – at par (at its par value) when its coupon rate is equal to the market

• Definition: A max tree is a tree in which the key v alue in each node is no smaller (larger) than the k ey values in its children (if any). • Definition: A max heap is a

Establish the start node of the state graph as the root of the search tree and record its heuristic value.. while (the goal node has not