Title: Models of Yield Curve and Yield Curve Dynamics
1Models of Yield Curve andYield Curve Dynamics
2Outline
- We are going to focus on just on a few of the
models - Random walk model of interest rates
- Mean reverting interest rates
- The Cox Ingersoll Ross Model
- The BDT Model
-
3Binomial Model of Bond Prices
- It is tempting and commonly done to
extrapolate the binomial stock price model to
bond prices. This can create some problems,
because it ignores certain aspects of bond
prices, namely - Bonds are not infinite lived
- Bonds must converge to par (100) at their
maturity - Bonds can go to 0
4- If we work with a typical Cox, Ross, Rubinstein
model - Where u e s ((T-t)/N)1/2 e s (dt)1/2 1/d
- and the up jump probability is q 0.5 0.5
u/s (dt)1/2 - This results in bond price has a distribution
dP/P u dt d2 - which means that bond prices are lognormally
distributed, even at maturity. - As a result, the CRR type of model is not widely
used
5Binomial Model of Interest Rates
- Another approach, of course, would be to simply
model the underlying interest rate as a binomial
model. This, in fact, is one of the basic
techniques used in term structure modeling today.
6Binomial Model of Interest Rates
- Let q be the probability of an up jump and (1-q)
the probability of a down jump - In reality you would like for the probability to
adjust depending on the level of rates, but for
starters we will ignore that possibility. - Consider how a two discount bond will evolve
7Binomial Model of Interest Rates
- We now invoke the notion of the local
expectations Hypothesis. - This says, essentially, that the expected return
over one period on any (default free) bond should
be the same as the one-period rate prevailing at
that time. - Under LEH, therefore, at time t1, this must
hold - 1 / bu (1,2) 1 ur (t) and 1 / bd (1,2) 1
dr (t) - Recall that ur(t) and dr(t) are rates, not
products necessarily
8Binomial Model of Interest Rates
- We can rearrange these to get a pricing method
-
- We can now work backwards to get a price at time
0
9Binomial Model of Interest Rates
- We begin with the LEH condition
- This is really nothing more than a variant of how
we have been pricing options all along - This whole business of the LEH is really just to
justify the following if you are at a node in
lattice where the rate is r, then all bonds
should be discounted at that rate
q . bu (1,2) (1-q) bd (1,2)
or
10Example 17 - 1
- The initial one-period rate is 10, the up factor
(u) is 1.25 and d0.80. We define the probability
of an up (or down) move as 0.50. Based on this,
rates evolve as
11Binomial Model of Interest Rates
- Given this structure we can really start to
calculate some interesting values - What is a one-period zero-coupon bond worth?
- To answer this we can examine just the first two
levels of the lattice. The bond pays 1 with
certainty at the end of the period
Now the first thing to notice is that the only
relevant rate is the one at the central node,
since it is the correct discount rate for the
time period 0-1. In essence r 1,112.5 and r 1,0
8.0 become effective at the start of period 1,
while the 1 cash flows at paid at the end of
period 0.
12Binomial Model of Interest Rates
- Within the lattice we tend to draw the end of 0
and the beginning of 1 as occurring at the same
point, but they are actually different. In fact,
some people draw these as
13Binomial Model of Interest Rates
- So to get the 1 period bond price you do the
following - We can easily extend this to a two period example
1/1.10
b (0,1)
0.9091
1
0.8889
1
0.9259
1.08
1(0.88) 1(0.92)
0,2
b 0,0
0.8249
1.10
1
14Binomial Model of Interest Rates
- So the overall lattice looks like
- Frankly the superscript is frequently suppressed
people assume you know which bond you are
using. - Notice that we now know the price of a zero
coupon bond for periods 1 and 2, i.e 90.91 and
82.49.
15Binomial Model of Interest Rates
- From this we can determine the yields for one and
two period zero coupon bonds
1/0.9091 1 y1
y1 10
16Binomial Model of Interest Rates
- We can now show the evolution of the two period
bond prices - We can now apply the same basic methodology to a
three period bond
17Binomial Model of Interest Rates
18Binomial Model of Interest Rates
Notice a few things here. First, we can solve for
the three period yield
Y3 (1/0.7475)1/3 1 10.1888
Y1 10 Y2 10.10 Y3 10.188
Thus we now know the three period zero coupon
yield curve
19Binomial Model of Interest Rates
- We can also talk about the evolution of the
two-period zero coupon yield over time. We know
that at time 0 the two period zero coupon bond
was worth 0.8249, and has a yield of 10.10. - Based on our results we know that a two year bond
at node (1,0) is worth 0.8560 and a two year bond
at node (1,1) is worth 0.7884. - From this we got the evolution of two year,
constant maturity bond prices
20Binomial Model of Interest Rates
- Now the two-year zero coupon rate at node 1,0 is
given by - y (2)1,0 (1/0.8560)1/2 1 0.80844
- And at 1,1
- y (2)1,1 (1/0.8560)1/2 1 0.80844
- So the two year constant maturity zero coupon
yield evolves as
21Binomial Model of Interest Rates
- Thus you can see that the two year
constant-maturity rate evolves, just as the one
period rate evolves - The yield curve is, therefore, evolving over
time, but the only factor driving this yield
curve is the evolution at the one period interest
rate.
Notice that the yield curve is not moving in
parallel, however. It is steeper at node 1,1 than
at 0,0 and it is flatter at 1,0 then at 0,0
22Binomial Model of Interest Rates
- If we extend our model out more periods we can
observe the evolution if more distant points on
the yield curve for example we could see how
the three year constant maturity rate evolved. - In fact, if we wanted to we could describe the
evolution of the entire yield curve as being
driven by this single factor. - Note that you have to pay attention to some
issues here. You can discuss (as the book largely
does) how a single bond evolves its price through
time. For example you could see how a 4 period
zero coupon starts at a given price and then in
period 1 has a new price (or set of prices) and
then get another set of prices in times 2 3.
23Binomial Model of Interest Rates
- But you are observing a 4 year bond in time 0, a
3 year bond in time 1, etc. You also want to pay
attention to how the four year (or 3 year, etc)
rate varies from period to period and from node
to node. To do that you have to look at different
bonds through time. - I can also extract implied forward rates and see
how they evolve over time, based on how the yield
curve evolves which again is based on the
evolution of the one period spot rate (i.e. one
period yield). - To see this, lets return to our lattice
describing how the yield curve evolves over the
first two periods
24Binomial Model of Interest Rates
- Recall that the forward rate is the rate to which
you can contract today to borrow in a future
period. So at any point the one period forward
rate is given by - f(1,2) ((1y2)2 / (1y)) 1
- So at node 0,0 f(1,2)0,0 ((1.1010)2 / (1.10))
110.2 - Note that this is not the expected spot rate in
one period
25Binomial Model of Interest Rates
- At node 1,0 that forward rate is given by
- f(2,3)1,0 ((1.080844)2 / (1.08)) 18.1688
- And at node 1,1 it is given by
- f(2,3)1,1 ((1.12662)2 / (1.125)) 112.824
- So we get an evolution of the one period forward
curve as
So the one period spot rate evolution drives not
only the yield curve evolution, but also the
evolution of the forward rate. In fact the
forward rate and spot rates roles are sometimes
reversed. In the HJM model it is the forward rate
which is allowed to evolve and the spot rate
evolution is implied by that evolution.
26Binomial Model of Interest Rates
- Now there are a couple of points we can make here
about using this lattice structure. It is very
good for pricing options, interest rates and
other contingent claims, and you discount
everything at the one period rate. - Lets look at a couple of examples
27Basic Bond Option
- Lets say that you hold a call option which gives
you the right, at the beginning of period 3 (so
the option expires at the end of period 2) to
purchase a one period bond at price 90. What is
this option worth today? - Lets begin by recalling what our evolution of
rates and prices looks like
28Basic Bond Option
- So at nodes (2,0), (2,1), and (2,2) we get one
period zero coupon bond prices of 0.9398, 0.9091
and 0.8649 respectively. Since our strike is
0.90, our payoffs to the option are given by - C2,0 max (0, 0.9398 0.90) 0.0398
- C2,1 max (0, 0.9091 0.90) 0.0091
- C2,2 max (0, 0.8649 0.90) 0
- We can now move backwards through the lattice to
determine the price of the option
C 2,20
C 1,1 0.0040
0.125
C 0,0
0.10
C 2,1 0.0091
C 1,0 0.0226
0.08
C 2,0 0.0398
29Basic Bond Option
Or 1.212 on a 100 bond
30Interest Rate Cap
- Lets say that you are a bank. Your average
depositor puts money into 2 year CDs. - So you have significant exposure to the two year
zero coupon bond rate (realize that in any year ½
of your depositors roll into new CDs at the rate
for that year). - Since you wish to manage your exposure you elect
to use an interest rate cap on the two year zero
coupon bond rate. - Lets say that we have 100 million in total
deposits, so you hedge 100 million notional.
Your payoff is equal to two years interest on the
notional amount.
31Interest Rate Cap
- Recall that today the two year zero coupon bond
rate is 10.10, and lets assume that this is the
strike rate. The payoff to the cap would be - Cap t 100 . Max (0, zero 2,t cap-rate)
- Recall earlier that we noted that the yield curve
was evolving according to
32Interest Rate Cap
- I have extended this another period using the
rates found on page 601. - P(1)3,3 1/1.19531 0.8366
- P(1)3,2 1/1.125 0.8888
- P(1)2,1 1/1.108 0.9259
- P(1)2,0 1/1.10512 0.95129
y(2)2,2((1/0.7461)1/2) -115.7706
y(2)2,1((1/0.82486)1/2) -110.10
y(2)2,0((1/0.88213)1/2) -16.471
33Interest Rate Cap
- So I can now convert this into cash flows. Recall
that the cap pays off annually based on the 100
million notional. I am simplifying by assuming
the cap pays immediately. It normally would not.
34Interest Rate Cap
- CF 2,2 100 . Max(0,y2 cap-rate)
- 100 . Max(0, 0.157706-0.1010) 100m X 0.0567
- 5.67 million
- CF 2,1 0
- CF 2,0 0
- CF 1,1 100 . Max(0, 0.12662-0.1010) 2.562 m
- CF 0, 0 0
35Interest Rate Cap
- Lets say that the initial futures price is 100,
and it can raise or fall by 10, farther, the
risk fee rate is 5, and the strike is 100. - Assume we construct a portfolio consisting of
- 1 short call
- ? futures contracts
36Interest Rate Cap
- And we select ? such that the portfolio has the
same value in all states of the world at time 4 - - 10 ?10 -9.09 ?
- 19.09 ? 10
- ? 10/19.09 5.238
- Thus the portfolio value is
Thus the portfolio will be worth 4.762/1.05
-4.534 today
The time 0 futures contract is worth 0, so the
portfolio value is given by -4.534 0 (1)4.534
So the call value is 4.534
37Interest Rate Cap
- We can generalize this
- ? (Cu Cd) / (Hu Hd) Cu Cd / (u- d) H
- The value at the end of the time period, the is
always - (Hu H) ? - Cu Since this is by
construction the top part if the lattice / you
could do this with the bottom as well) - Which has present value
- (Hu H) ? - Cu e rT
- And we know that the value of the futures
contract today must be zero, so the portfolio
value at time 0 only comes from the time 0 option
value - - c (Hu H) ? - Cu e rT
38Interest Rate Cap
- Substituting for ? and simplifying will result
in - Note It may be optimal to exercise an American
call on a bond futures contract early, although
it generally is not optimal to do so on a call on
the bond itself - To see this lets consider the following
39Interest Rate Cap
- Assume that the call will be in the money
regardless of the final state, i.e. both Cu and
Cd gt 0. So Cu Hu k and Cd Hd k. - Consider the time 0 price for the option
- Substitute (1-d)/(u-d) for p
C max H k, (h k)/(1r), so early
exercise is indeed optimal
40Properties of Rates
- Now, so far, we have ignored the question of how
we develop the interest rate lattice. - Clearly we want to build it in a way that is
consistent with basic interest rate processes
that we have observed over time. - Before we can begin with a specific lattice
model, therefore, we want to fully understand
what we want in an interest rate model. - We want the interest rate model to be stochastic.
- We want the model to exhibit mean-reversion.
- Why? Because in reality rate exhibit this
property!
41Property of Rates
42A Simple Model with Mean Reversion
- Sundaresan presents a simple model that
incorporates mean reversion. - This model is not really that great for pricing
assets, but it is good for illustrating a few
properties of mean reversion. - The model works as follows.
- The one-period interest rate is assumed to be
bound by an upper limit of 2µ and a lower limit
of 0. - Over one step in the binomial lattice, rates can
rise of fall by an amount d, which is selected
based on the time-step of the lattice. - The probability of an up-jump from a given node
in the lattice (t,j), is given by - This generates a model that looks like this
43A Simple Model with Mean Reversion
Upper limit r2µ
Lower limit r0
44A Simple Model with Mean Reversion
- Notice that for any node (t,j), the rate can be
represented as - rt,j r0,0jd-(t-j)d
- Thus, r1,1 r0,0 (1) d-(1-1) d r00 d
- Similarly, r3,2 r0,0(2) d-(3-2) d r0,02 d-1
d r0,0 d - And r3,0r0,0 (0) d (3-0) d r0,0-3 d
- Example
- Assume r0,010, d1, and µ12. What would the
lattice and the transition probabilities look
like?
45A Simple Model with Mean Reversion
Upper limit r2µ2(12)24
Lower limit r0
46A Simple Model with Mean Reversion
- Notice that as the lattice grows toward 2µ or 0,
that the probabilities force you to move back to
the center of the lattice. - At the two boundaries, you get the following
probabilities of up and down jumps - If r2µ, then q0, so (1-q)1, meaning that a
down jump is guaranteed. - If r0, then q1, and (1-q)0, meaning that an
up jump is guaranteed. - You can then price bonds, options, swaps, etc.
backwards through the lattice as we did earlier
in the model.
47More Advanced Models
- Now, one has to be a little bit careful when
talking about term structure models as to what is
being meant. - Sometimes people refer to a specific incarnation
of a lattice as being the model. What they mean
is both the underlying distribution of interest
rates and the numerical method (the lattice) that
insures they price bonds using that distribution. - In other contexts people are referring only to
the underlying distribution of rates. - This is really the more general way of thinking
of the term structure model, since there may be
more than one numerical procedure that can
determine prices under that distribution. - We are going to first examine a model known as
the Vasicek model and one of its variants known
as the Cox, Ingersoll, and Ross (CIR) model.
48More Advanced Models
- Theorists really like the Vasicek and CIR models
because they are General Equilibrium models. - This means that they are consistent within an
entire economy that is defined by just a few
parameters. - They are also well-liked because you can get
closed-formed solutions for zero coupon bonds. - The difficulty with these models is that they are
notoriously difficult to calibrate. - This means that the input parameters they require
are very difficult to estimate econometrically to
within the level of accuracy needed for pricing
real-world assets. - There are many numerical models that people use
that are consistent with Vasicek and CIR, but we
will primarily focus on their use within Monte
Carlo.
49Vasicek Model
- The Vasicek class of models assume that only one
fact, the one-period interest rate (r),
determines the entire term structure. The process
that r follow is - (note this differs from Sundaresan) where
- r the spot rate
- ? a speed of adjustment factor
- µ the long-run mean of the interest rate
process - s the volatility of the short-run rate
- dz a white noise process.
50Vasicek Model
- The model admits closed form solutions for a zero
coupon bond
51Vasicek Model
- The model does not, however, admit closed form
solutions for a lot of other assets, including
path-dependent assets. - As a result, many times people either have to
break down more complex assets such as
coupon-bearing bonds into constituent zero
coupon bonds, or they use Monte Carlo to model
the evolution of the interest rate through time. - Lets price some assets both ways to see how this
process works. - One issue you do have to be careful with is the
you have to make your time-step small enough so
that you dont inadvertently draw negative rates.
52Vasicek Model
- Lets begin with pricing two bonds, one a zero
coupon bond and one a coupon-bearing bond. - The zero coupon bond matures in 5 years, and the
coupon bearing bond matures in 5 years as well.
Assume that the coupon bearing bond pays 12 but
with semi-annual payments. - The parameters for the model are
- r .10
- ? .10
- µ .12
- s 0.02
- So we have an upward sloping term structure.
- Lets price the zero coupon bond first.
53Vasicek Model
- The model admits closed form solutions for a zero
coupon bond
54Vasicek Model
- From the five year zero coupon bond price we can
also determine the five year yield - A nice feature of the Vasicek model is that you
can use it to determine the entire yield curve at
a point in time. For example, using the
parameters in this example, the yield curve is
given by
55Vasicek Model
56Vasicek Model
- But what about the 12 coupon-bearing bond?
- We price it as a collection of zeros. That
is - Or, in this case 105.50.
- Notice that this is a Bond-Equivalent Yield of
10.556, which is equivalent to a
continously-compounded yield of 10.2869. - Recall that the 5 year zero coupon yield was
10.03096
57Vasicek Model
- So this is fine if you want to analyze a bond at
a specific point in time t. - What if you want to model the evolution of the
rate r over time. - First, realize that this is equivalent to
modeling the entire yield curve over time! - There are many ways people do this some lattice
methods, more frequently finite difference
methods, and, of course, Monte Carlo. We will
focus on Monte Carlo. - Our goal is to develop a model that we can
evaluate a bond, option, etc., over time, and to
do this we can directly model the evolution of r - To do this, we just have to use standard Monte
Carlo methods.
58Monte Carlo Methods
- A Monte Carlo model works by simulating the
random process to generate potential interest
rate paths, prices the mortgage (or other asset)
under each of those paths, and then treats the
average price found for all of the paths as the
true price of the mortgage. - This is a valid procedure (assuming that you have
correctly modeled the interest rate process)
because of the statistical laws known as the
Central Limit Theorem and the Law of Large
Numbers. - Basically these laws state that if you draw from
a random distribution (in this case from the
simulated interest rates and the resultant
mortgage prices), then you can be certain that
the average of your sample population will
approach the true average at a rate that is
proportional to the square root of the number of
simulations you are using.
59Monte Carlo Simulation
- What this means is that as you increase the
number of interest rate paths the average price
that you get will become a better and better
approximation of the real price. - Operationally, a Monte-Carlo process is
relatively easy to implement. - Let N denote the number of interest rate paths
that you are going to use, and let Pave be the
average price you calculate from the simulation. - The following flow chart demonstrates the general
process
60Monte Carlo Simulation
Set N to number of Iterations
Simulate the ith interest rate path
Add the Credit Spread to each rate along the
interest rate path
Determine the asset cash flowsgiven the ith rate
path
Increment i
Discount the cash flows to determine Pi
Update Pave Pave Pi/N
No
iN?
Yes
Report Pave as price of asset
61Monte Carlo Simulation
- In reality what Monte Carlo returns is an
estimate of the real price of the asset, and the
Central Limit Theorem basically tells you the
rate at which that estimate will become well
behaved in a statistical sense. - Since we are working with a estimate, we would
like a measure of how good the estimate is. One
such measure is the estimated standard deviation,
of the distribution.
62Monte Carlo Simulation
- Really, however, the sample standard deviation is
only an estimate of the standard deviation for
the population. What we want is a measure of how
much deviation there is in our estimate of the
mean. For this we want to use the standard error.
(If you are having trouble recalling the
differences between a standard error and a
standard deviation check out the online
statistics text hyperstat (http//davidmlane.com/h
yperstat/) it has a very nice review of this
stuff)
63Monte Carlo Simulation
- Once we have Standard Errors, we can construct
confidence intervals. What they do is tell us the
upper and lower bounds within which the real
price of the asset will fall (1-p) times, where p
is the level of confidence we want. That is if
p1, the upper and lower confidence interval
will tell us the range in which the real price of
the asset will fall into 99 of the time. - The confidence interval narrows as the number of
iterations increases.
64Vasicek Model
- The Vasicek model assumes that the one-period
interest rate evolves according to - Lets assume that once again we have the same
base parameters as before - r0.10, µ0.12, ?0.10, s0.02
- The key, of course is to be able to simulate the
randomness from a standard normal (i.e. from dz).
This is relatively easy to do using a computer.
Its a three step process - Draw a value from the uniform distribution over
the range 0-1, inclusive. - Assume this draw represents the value of the
cumulative density function (i.e. area under the
curve to the left) at our point x. - Invert the cumulative density function to
determine the point x, treat x as our draw from
dz!
65Vasicek Model
- Lets say we did this
- Let x be the draw from the cumulative uniform,
and say that value came out to be .20, so x0.20. - First, assume that our draw will correspond to
that value that has 20 of the area to the left
in the cumulative density function.
66Vasicek Model
- Lets say we did this
- We can now use the inverse of the normal density
to determine what number has exactly 20 of the
area of a standard normal to its left. We can use
the Excel function norminv(x,mean,stdev) to do
this. - norminv(0.20,0,1)
- The value is -0.8416, and we assume that dz is
(for this draw), - -0.8416
- So what does this mean for our simulation? Well,
since we know r0, we can use it to determine r1 - dr .10(.12-.10)(1).02(-0.8416)
- that is, dr 0.001667-0.016832 -0.016665
- r1r0dr 0.10 0.01665 0.083333
- Of course we have to scale by the time step if dt
is not 1. - So what does a simulation look like?
67Vasicek Model
68Vasicek Model
- Remember, however, that in the Vasicek model, rt
determines the entire yield curve for time t. - This means that as t evolves over time, the yield
curve evolves over time. - Thus, when we observe a line chart like the one
we just created, we are really only looking at
half of the story. - We also want to get a sense for how the yield
curve itself is evolving over time. - This will be easiest to do by examining a surface
area plot.
69Vasicek Model
70Vasicek Model
- It may be easier to see the evolution of the
yield curve by examining the curve at specific
points in time. - Lets look at the curve at times 0, 12 months, 2
years, 5 years, and 10 years
71Vasicek Model
72Vasicek Model
73Vasicek Model
74Vasicek Model
75Vasicek Model
76Vasicek Model
- So we have demonstrated how to generate the
interest rates needed for the Vasicek model, but
how would we use it to price a specific asset? - Well, it is relatively straightforward. Once we
have laid out the evolution of the spot rate, rt
using the model, we then determine the cash flows
given each specific interest rate path and
discount them back along that path. - We then take the average price over all N
interest rate paths, and that is value of our
asset.
77Vasicek Model
- As an illustration, lets begin with a really
simple, the value of a 5 year zero coupon bond. - Now, we know that the Vasicek has a closed-form
solution for the value of a zero coupon bond, but
we are going to use Monte Carlo anyway, just to
illustrate the process. We will then move on
toward a swap to see how a more complex
instrument would be valued. - Using the same parameters as before (r0.10,
µ0.12, ?0.10, s0.02), the value of a five year
zero is 59.72, and is yielding 10.3096. - So, lets examine how we would price it under
Monte Carlo.
78Vasicek Model
- We first have to decide how many iterations to
use. - Why? Because we are relying on the Central Limit
Theorem and the Law of Large numbers to give us
the correct solution, on average. - Although each individual iteration is unbiased,
they are draws from a sample distribution, and
will only converge to the actual distribution
over several trials. - Lets go through a couple of cycles to illustrate
this point. - Recall the basic process
79Monte Carlo Simulation
Set N to number of Iterations
Simulate the ith interest rate path
Add the Credit Spread to each rate along the
interest rate path
Determine the asset cash flowsgiven the ith rate
path
Increment i
Discount the cash flows to determine Pi
Update Pave Pave Pi/N
No
iN?
Yes
Report Pave as price of asset
80Vasicek Model
- For the current sample, let us set N2 (we will
quickly up this.) - First, we begin with r0 and create r1 through r59
using the formula - The chart on the following page illustrates this
sample path. - Obviously the cash flows are straightforward in
this case since they do not depend upon r. - CF00, CF10, CF20,,CF580, CF59100
- Notice that I am using base 0 notation.
- We can then discount the cash flows back, on a
monthly basis to get a time zero value
81Vasicek Model
82Vasicek Model
- In this case that turns out to generate a value
of 54.5396. - We then repeat the process for a second
iteration. - We again start with r0 (which is always the
same!), and then generate 60 new interest rates
using - This is illustrated in the figure on the next
page. - We then apply the same basic valuation formula
- Which in this case yields a value of 77.83.
- So our average value is (54.5477.83)/2 66.18.
Which is pretty far afield from our true value of
59.72.
83Vasicek Model
84Vasicek Model
- Obviously we want to increase the number of
iterations that we use to value this asset. - How close to the correct value we get is a
function of how many iterations we use.
85Vasicek Model
- First, we should probably be struck by how
inefficient Monte Carlo is. This is why generally
we prefer to have closed-form solutions. Monte
Carlo is nice because it will work for most types
of assets. - One issue to pay attention to is the way in which
the confidence interval evolves.
86Vasicek Model
87Vasicek Model
- Keep in mind, of course, that the zero coupon
bond is just about the easiest thing we could
ever want to price. - Lets price something more difficult, a type of
swap. - Lets assume that you have a 5 year swap with
annual payments. The swap payments are made at
the end of the year. This means that there will
be cash flows occurring at the end of months 11,
23, 35, 47, and 59, with the swap payments
determined by the rate environments at times 0,
11, 23, 35, and 47. - Assume that the swap is the 1 year risk-free rate
on the floating side and 10 on the fixed side.
Assume you are paying fixed. - Note that we still discount based on r following
-
- but have to determine the 1 year zero coupon
rate for the payments.
88Vasicek Model
- Keep in mind, of course, that the zero coupon
bond is just about the easiest thing we could
ever want to price. - Lets price something more difficult, a swap.
- Lets assume that you have a 5 year swap with
annual payments. The swap payments are made at
the end of the year. This means that there will
be cash flows occurring at the end of months 11,
23, 35, 47, and 59, with the swap payments
determined by the rate environments at times 0,
11, 23, 35, and 47. - Assume that the swap is the 1 year risk-free rate
on the floating side and 10 on the fixed side.
Assume you are paying fixed. - Note that we still discount based on r following
-
- but have to determine the 1 year zero coupon
rate for the payments.
89Vasicek Model
- We will solve for the one-year zero coupon yields
using the closed form solution that the Vasicek
model generates. - Lets go through a sample iteration to see what
this looks like. - Using the same sample path that we used earlier
(next screen), the value of r and the one-year
yield at times 0, 11, 23, 35 and 47 months are
90Vasicek Model
- Assuming a million dollar notional amount, and
that you are paying fixed, your cash flows will
beWe can then discount the bonds back
using the closed-form value of a zero coupon
bond. We wind up with a value of 53,576 for the
swap.
91Vasicek Model
92Vasicek Model
- Of course, that is just for one path. We again
have to replicate this many times to get a real
value for the swap. - I should point out that there are closed-form
solutions for swaps. What is more important here
is seeing how the Monte Carlo works as opposed to
the actual pricing of the swap. - If we price the swap using Monte Carlo, however,
we can once again generate prices and confidence
intervals, as the next page demonstrates.
93Vasicek Model
- The following chart demonstrates what happens as
we increase the number of iterations.
94Vasicek Model
- Again, we can examine the confidence interval and
what happens to it as we increase the number of
iterations.
95Vasicek Model
- It is also interesting to see what happens to a
histogram of the swap prices as you increase the
iterations. - Watch how we build the distribution.
96Vasicek Model
97Vasicek Model
98Vasicek Model
99The CIR Model
- Cox, Ingersoll, and Ross proposed a term
structure model that is very similar to Vasiceks
model, but with one very important difference
they scale the stochastic component of the short
rate process to be proportional to the square
root of the interest rate process. - The process they specify, therefore is
- The effect of including the square root of r is
relatively straightforward to see as r
approaches zero, the mean-reverting portion of
the process becomes much more important.
100The CIR Model
- We can see the effects of this easily enough with
a few examples. - First, let us set r0.10, ?.10, ?.10, and
s.02, and then set up an example where dz is
forced to be -1 for 20 straight times. - Second, let us use the same parameters as above,
but with randomly drawn dz values, and with
comparisons of the Vasicek and CIR models. - Third, it is frequently the case that when
comparing Vasicek and CIR, that researchers will
set the variance of the CIR model such that at
time 0 the following relationship holdsIn the
example above, this means that sCIR would be set
to 0.6324.
101The CIR Model
102The CIR Model
103The CIR Model
- Like Vasicek, the CIR model does admit closed for
solutions for bonds, but with some modifications
to the formulas for A and B.
104Partial Equilibrium Models
- Both Vasicek and CIR work as full-equilibrium
models, which means that all yield curve
dynamics, including the time 0 yield curve, are
endogenous to the model. - Researchers have not had a lot of success in
selecting parameters of these models such that
they will correctly price time 0 bonds. - A second approach to term structure modeling has
been to develop so-called partial equilibrium
models. - These are models that take the time 0 term
structure as an input and then build a
self-consistent model given that term structure. - Examples include the models of Ho and Lee, Hull
and White, Black and Karasinski, and Black,
Derman and Toy.
105Partial Equilibrium Models
- General idea
- The general idea behind a partial equilibrium
model is this you have an asset, x, which you
wish to price or just wish to model as evolving
through time. - You want to insure that the pricing model you are
using is correct given todays market. - To insure this, you take a basket of other
instruments that are in the market and you search
for the parameters of the model that will cause
the model to generate the correct prices for
those other instruments. Denote the other
instruments as y. - You can then price the asset x with the same
lattice and feel reasonably confident that you
are getting prices that are consistent with y.
106Partial Equilibrium Models
- Now, keep in mind several things
- First, we may not be as interested in the price
of x as we are in its future evolution, for
example, we may want to use the model to
calculate hedge parameters such as delta. - Second, the basket of other instruments that we
have to use may vary from model to model and
potentially from instrument to instrument. - Frequently firms will maintain separate Treasure
and LIBOR based models. - Third, you will normally need at least two assets
at each time step one to determine the level
of rates at that time step, and one to determine
the volatility (dispersion) or rates at that time
step. Typically you will use zero coupon bond
prices for the first asset, and something (such
as caps) that is sensitive to volatility as the
second.
107Black, Derman, and Toy
- The Black, Derman, and Toy model (BDT), we first
proposed in 1990. It was the first of these
models to gain widespread acceptance in the
industry. - The model is somewhat dated now, but is still the
standard starting point for students interested
in learning about these types of models. - Its also nice to use because it is a binomial
model. - In this binomial model, we are modeling the
evolution of the spot (one-period) interest rate,
rt,j. - The probability of an up or a down jump (p and
1-p) are defined to be 50.
108Black, Derman, and Toy
- The Black, Derman, and Toy model (BDT), we first
proposed in 1990. It was the first of these
models to gain widespread acceptance in the
industry. - Lets begin with a discussion of how to construct
the lattice, and then we will work through an
example of pricing an asset. - Unlike the binomial models that we have built
before, there is not a simple construction
method. You have to build the lattice via a
search algorithm. - We begin with market data on yields and
volatilities
109BDT
- We can convert the yields to prices
- So, working with a 1 year time step, we know that
the initial one year rate must be 10, since
90.91 100/1.1 - Thus, we say that r0,0.10.
- So we can start to set up our binomial lattice
110BDT
r1,1
r0,0.10
r1,0
- So our next step is to figure out r1,1 and r1,0.
- We need to select value for r1,0 and r1,1 that
will get P281.16 and s219. - As show by equation (17.4) in Sundaresan, the
volatility is defined as
111BDT
- We know from the table, that s20.19, so this
means that - So as soon as we determine r1,0, we can calculate
r1,1. So in one sense this now becomes a guessing
game. We literally begin we a guessed value for
r1,0. To see how this would work, lets say we
start with an initial r1,0 guess of 9. This
would make r1,1 13.16
112BDT
- We then plug this back into the lattice we have
already created and then calculate bond prices.
113BDT
- Well, clearly 81.86 is more than the 81.16 that
we expect to find. - If we want to decrease the price, we have to
increase r, so we raise it to a new level, say to
9.792.
114BDT
- Now, at this point we need to think very
carefully about what we mean by volatility. - There are really two potential ways we can define
volatility - The spread in the spot rate along a given time
step, - The spread in the yields over one period.
- It turns out that what we really want to focus on
in this context is the yield volatility. - The yield volatility of an N period bond is
defined to be half of the natural log of the
ratio of the yields of the bond at node (1,0) and
(1,1). - For the bond in the previous time step, that was
easy to find since r1,1 and r1,0 are the yields
for the bond at time 1. - In our table, we see that the yield volatility of
a bond that matures at time 2 is 18.
115BDT
- This means that we have to build a three-step
lattice
116BDT
- We know that the price of a bond maturing at the
end of period 2 will be 71.17. - We also know that the yield volatility should be
18. - Denote the yield of a bond at node t,j that
matures at the end of period I as yt,j(i). - The one-period yield volatility of that bond is
given by - In contrast, the short-rate volatility at time
step 2 would be denoted as s2r and is given by
117BDT
- Since we know that the yield volatility is 18,
we also know that - So we have to once again search for the values of
r2,0, r2,1, and r2,2 that will generate the
correct P2 and s2 values. - The book demonstrates that the values are 9.76,
13.7669, and 19.4187, respectively. - The next slide demonstrates the calculations
118BDT
119BDT
- So we get the right price, but what about the
yield volatility? - First, we want to calculate the yields on the
zero coupon bonds that mature at the end of step
2 at nodes 1,0 and 1,1. - We can then calculate the yield volatility
120BDT
- So we have verified that this is the yield
volatility, but what about the short-rate
volatility? - Well, we can calculate it in two ways, using
either r2,0 and r2,1, or using r2,1 and r2,2. - Just to be clear, lets denote the period 2 rate
volatility as s2r. - This raises an interesting point about the BDT
lattice by construction, at any time step t, the
difference between the log of any two adjacent
nodes is equal to two times the rate volatility
for that time step. That is,
121BDT
- Indeed, a lot of people find it easier to specify
the evolution of the rate volatility instead of
the yield volatility when working with the BDT
model. - Once you specify one, however, you have really
specified the other. - The BDT model does not really allow you to
control simultaneously the yield and rate
volatility. - If you specify a flat rate volatility (say
constant at 10), then this will eventually force
the yield volatility toward zero. - What process does the spot rate follow in the BDT
model? - Its is a log-normal process specified as follows
122BDT
- In this specification, ?(t) is a time-varying
long-run average yield, s(t) is the time-varying
spot rate volatility, and s(t) is the derivative
of that volatility, and dz has it normal meaning. - In practice you almost never see it written out
like this, instead, you solve for the parameters
implicitly by solving for the prices and either
yield or spot rate volatility. - A closely related model to the Black, Derman, and
Toy model is the Black, Karasinksi model. In that
model you have a specification that is given by - By relaxing the specification of a(t), they allow
you to specify both a yield and spot rate
volatility.
123BDT
- Of course in reality we do not simply guess at
the values of rt,j that will cause the model to
generate the appropriate yields and yield/spot
rate volatilities. - What you normally do is to solve for those rates
using a two-dimensional Newtons method. That is
you simultaneously solve for the price and the
volatility.