The author wishes to thank Robert A. Jarrow for his encouragement and advice on this series of worked examples of the HJM approach. What follows is based heavily on Prof. Jarrow’s Modeling Fixed Income Securities and Interest Rate Options (second edition, 2002), particularly chapters 4, 6, 8, 9 and 15.
The first blog in this series implemented the work of Heath Jarrow and Morton (1990, 1990, and 1992) with the assumption that forward rate volatility varied by the maturity of the forward rate.
van Deventer, Donald R. “Heath Jarrow and Morton Example One:
Modeling Interest Rates with One Factor and MaturityDependent Volatility,” Kamakura blog, www.kamakuraco.com, March 2, 2012.
This is a much more general assumption that that used by Ho and Lee [1986] (constant volatility) or by Vasicek [1977] and Hull and White [1990] (declining volatility).
In this blog series, we use data from the Federal Reserve statistical release H15 published on April 1, 2011. U.S. Treasury yield curve data was smoothed using Kamakura Risk Manager version 7.3 to create zero coupon bonds via the maximum smoothness forward rate technique of Adams and van Deventer as documented in these two recent blog issues:
van Deventer, Donald R. “Basic Building Blocks of Yield Curve Smoothing, Part 10: Maximum Smoothness Forward Rates and Related Yields versus NelsonSiegel,” Kamakura blog, www.kamakuraco.com, January 5, 2010. Redistributed on www.riskcenter.com on January 7, 2010.
van Deventer, Donald R. “Basic Building Blocks of Yield Curve Smoothing, Part 12: Smoothing with Bond Prices as Inputs,” Kamakura blog, www.kamakuraco.com, January 20, 2010. Redistributed on www.riskcenter.com
The smoothed U.S. Treasury yield curve and the implied forward yield curves monthly for ten years looks like this:
The continuous forward rate curve and zero coupon bond yield curve that prevailed as of the close of business on March 31, 2011 were as follows:
Objectives of the Example and Key Input Data
Following Jarrow (2002), we make the same modeling assumptions for our worked example as in the first blog in this series:
 Zero coupon bond prices for the U.S. Treasury curve on March 31, 2011 are the basic inputs.
 Interest rate volatility assumptions are based on the Dickler, Jarrow and van Deventer blog series on daily U.S. Treasury yields and forward rates from 1962 to 2011. In this blog, we make the volatility assumptions more accurate than in the initial blog.
 The modeling period is 4 equal length periods of one year each.
 The HJM implementation is that of a “bushy tree” which we describe below
The HJM framework is usually implemented using Monte Carlo simulation or a “bushy tree” approach where a lattice of interest rates and forward rates is constructed. This lattice, in the general case, does not “recombine” like the popular “binomial” or “trinomial” trees used to replicate BlackScholes options valuation or simple 1 factor term structure models. In general, the bushy tree does not recombine because the interest rate volatility assumptions imply a pathdependent interest rate model, not one that is path independent like the simplest one factor term structure model implementations. Instead the bushy tree looks like this:
At each of the points in time on the lattice (time 0, 1, 2, 3 and 4) there are sets of zero coupon bond prices and forward rates. At time 0, there is one set of data. At time one, there are two sets of data, the “up set” and the “down set.” At time two, there are four sets of data (up up, up down, down up, and down down), and at time three there are 8=2^{3} sets of data.
In order to build a bushy tree like this, we need to specify how many factors we are modeling and what the interest volatility assumptions are. The number of ending nodes on a bushy tree for n periods is 2^{n} for a 1 factor model, 3^{n} for a 2 factor model, and 4^{n} for a 3 factor model. For this example, we will build a one factor bushy tree.
In the first blog in this series, we calculated the standard deviation of the daily changes in three 1 year forward rates (the 1 year U.S. Treasury rates maturing at time T=2, 3, and 4) over the period from 19622011. We then adjusted for the fact that we have measured volatility over a time period of 1 day (which we assume is 1/250th of a year based on 250 business days per year) and we need a volatility for which the length of the period Δ is 1, not 1/250. We know that the variance changes as the length of the time period changes:
and therefore
We used the annual volatilities from this chart in our first HJM implementation:
The resulting yield curve shifts implied by the Heath Jarrow and Martin approach resulted in negative interest rates in three of the scenarios. In today’s blog, we reexamine our volatility assumptions to see whether volatility is dependent on the level of interest rates as well as maturity. We hypothesize that interest rate volatility is dependent on the starting level of the spot 1 year U.S. Treasury yield (continuously compounded) and the maturity of the forward rate (the first 1 year forward rate matures at time t+2, the second 1 year forward rate matures at time t+3, and so on). We categorize the data by interest rate levels, grouping data for spot 1 year rates under 0.09%, between 0.09% and 0.25%, between 0.25% and 0.50%, between 0.50% and 0.75%, between 0.75% and 1.00%, and then in one percent intervals to 10%. The final group of data includes all of those observations in which the starting spot 1 year U.S. Treasury yield was over 10%.
The graph below shows the need for incorporating the level of interest rates in our selection of forward rate volatility. We plot the actual daily volatility of 1 year forward rates maturing in years 2, 3 and 4 by interest rate groups, which are determined by the highest level of starting 1 year U.S. Treasury yields in that group:
The graph makes it obvious that interest rate volatility depends in a complex but smooth way on both forward rate maturity and the starting level of the 1 year U.S. Treasury yield.
As suggested by Kamakura Senior Research Fellow Dr. Sean Patrick Klein, we then annualized these daily volatilities as we did in the first blog and compared them to volatilities of the same forward rates calculated based on 1 year changes (not annualized daily changes) in the forward rate from 1963 to 2011. The results will surprise many. We start by plotting the forward rate volatilities using annual time intervals and find a striking difference in how volatilities change as rates rise:
Forward rate volatility rises in a smooth but complex way as the level of interest rates rises. When we plot the volatilities calculated based on annual time intervals against the annualized volatilities derived from daily time intervals, the results are very surprising:
We used a very standard financial methodology for annualizing the daily volatilities, but the result substantially overestimated the actual forward rate annual volatilities for forward rates when the 1 year U.S. Treasury was 3.00% or below. We conclude that this contributed strongly to the fact that our first worked example produced negative interest rates.
The results also confirm that the level of interest rates does impact the level of forward rate volatility but in a more complex way than the lognormal interest rate movements assumed by Fischer Black with coauthors Derman and Toy (1990), and Karasinski (1991).
In this blog, we use the exact volatilities for the 1 year changes in continuously compounded forward rates as shown in this table. There were no observations at the time this data was compiled for starting 1 year U.S. Treasury yields below 0.002499%, so we have set those volatilities by assumption. With the passage of time, these assumptions can be replaced with facts or with data from other low rate counties like Japan.
The volatilities used were selected in lookup table fashion based on U.S. Treasury spot rate levels at that node on the bushy tree from this table:
We also report the volatilities for longer maturities although they are not used in what follows:
We will use the zero coupon bond prices prevailing on March 31, 2011 as our other inputs:
Our final assumption is that there is one random factor driving the forward rate curve. This implies (since all of our volatilities are positive) that all forward rates move up or down together. We relax this assumption when we move to 2 and 3 factor examples.
Key Implications and Notation of the HJM Approach
The Heath Jarrow and Morton conclusions are very complex to derive but their implications are very straightforward. Once the zero coupon bond prices and volatility assumptions are made, the mean of the distribution of forward rates (in a Monte Carlo simulation) and the structure of a bushy tree are completely determined by the constraints that there be no arbitrage in the economy. Modelers who are unaware of this insight would choose means of the distributions for forward rates such that valuation would provide different prices for the zero coupon bonds on March 31, 2011 than those used as input. This would create the appearance of an arbitrage opportunity, but it is in fact a big error that calls into question the validity of the calculation, as it should.
We show in this example that the zero coupon bond valuations are 100% consistent with the inputs. We now introduce the same notation used in the first blog in this series:
Δ

Length of time period, which is 1 in this example

r(t,s_{t})

The simple 1 period risk free interest rate as of current time t in state s_{t}

R(t,s_{t})

1+r(t,s_{t}), the total return, the value of $1 dollar invested at the risk free rate for 1 period

σ (t,T,s_{t})

Forward rate volatility at time t for the one period forward rate maturing at T in state s_{t }(a sequence of ups and downs). Because σ is now dependent on the spot U.S. Treasury rate, the state s_{t} is very important in determining its level.

P(t,T,s_{t})

Zero coupon bond price at time t maturing at time T in state s_{t }(i.e. up or down)

Index

= 1 if the state is “up” and = 1 if the state is “down”

U(t,T,s_{t})

= the total return that leads to bond price P(t+Δ,T,s_{t}=up) on a T maturity bond in an upshift state

D(t,T,s_{t})

= the total return that leads to bond price P(t+Δ, T, s_{t}=down) on a T maturity bond in a downshift state

K(t,T,s_{t})

is the sum of the forward volatilities as of time t for the 1 period forward rates from t+Δ to TΔ, as shown here:

We will also see the rare appearance of a trigonometric function in finance, one found in common spreadsheet software:
Note that the current times that will be relevant in building a bushy tree of zero coupon bond prices are current times t=0, 1, 2, and 3. We’ll be interested in maturity dates T=2, 3, and 4. We know that at time zero, there are 4 zero coupon bonds outstanding. At time 1, only the bonds maturing at T = 2, 3, and 4 will remain outstanding. At time 2, only the bonds maturing at times T = 3 and 4 will remain, and at time 3 only the bond maturing at time 4 will remain. For each of the boxes below, we need to fill in the relevant bushy tree (one for each of the four zero coupon bonds) with each up shift and down shift of the zero coupon bond price as we step forward one more period (by Δ = 1) on the tree:
In the interests of saving space, we’ll again arrange the tree to look like a table by stretching the bushy tree as follows:
A completely populated zero coupon bond price tree would then be summarized like this where the final shift in price is color coded for up (green) or down (red):
The mapping of the sequence of up and down states is shown here, consistent with the stretched tree above:
In order to populate the trees with zero coupon bond prices and forward rates, there is one more piece of information which we need to supply.
Pseudo Probabilities
In Chapter 7 of Jarrow (2002), Prof. Jarrow shows that a necessary and sufficient condition for no arbitrage is that, at every node in the tree, the one period return on a zero coupon bond neither dominates nor is dominated by a one period investment in the risk free rate. Written as the total return on a $1 investment,
U(t,T,s_{t}) > R(t,s_{t})>D(t,T,s_{t}) for all points in time t and states s_{t}.
Prof. Jarrow adds “This condition is equivalent to the following statement: there exists a unique number π(t,s_{t}) strictly between 0 and 1 such that
R(t,s_{t})= π(t,s_{t})U(t,T,s_{t}) + (1 π(t,s_{t}))D(t,T,s_{t})”
Solving for π(t,s_{t}) gives us the relationship
If the computed π(t,s_{t}) values are between 0 and 1 everywhere on the bushy tree, then the tree is arbitrage free.
Professor Jarrow continues as follows:
“Note that each π(t,s_{t}) can be interpreted as a pseudo probability of the up state occurring over the time interval (t, t+Δ)…We call these π(t,s_{t})s pseudo probabilities because they are ‘false’ probabilities. They are not the actual probabilities generating the evolution of the money market account and the [T] period zero coupon bond prices. Nonetheless, these pseudo probabilities have an important use…” in valuation.
Prof. Jarrow goes on to explain on page 129 that “risk neutral valuation” is computed by “taking the expected cash flow, using the pseudo probabilities, and discounting at the spot rate of interest.” He adds “this is called risk neutral valuation because it is the value that the random cash flow ‘x’ would have in an economy populated by riskneutral investors, having the pseudo probabilities as their beliefs.”
We now demonstrate how to construct the bushy tree and use it for riskneutral valuation.
The Formula for Zero Coupon Bond Price Shifts
Prof. Jarrow demonstrates that the values for the risk neutral probability of an upshift π(t,s_{t}) are determined by a set of limit conditions for an assumed evolution of forward rates. Since these limit conditions allow multiple solutions, without loss of generality, one can always construct a tree whose limit is the assumed forward rate evolution with π(t,s_{t}) =1/2 for all points in current time t and all up and down states s_{t}. Using our notation above and remembering that the variable Index is 1 in an upstate and 1 in a downstate, then the shifts in zero coupon bond prices can be written as follows:
(1)
where for notational convenience cosh[K(t,T,s_{t})Δ]≡1 when TΔ. This is equation 15.17 in Jarrow (2002, page 286). We now put this formula to use.
Building the Bushy Tree for Zero Coupon Bonds Maturing at Time T=2
We now populate the bushy tree for the 2 year zero coupon bond. We calculate each element of equation (1). When t=0 and T=2, we know Δ=1 and
P(0,2,s_{t}) = 0.98411015.
The one period risk free rate is again
R(0,s_{t})=1/P(0,1,s_{t})=1/0.997005786=1.003003206
The 1 period spot rate for U.S. Treasuries is r(0, s_{t}) =R(0,s_{t})1=0.3003206%. At this level of the spot rate for U.S. Treasuries, volatilities are selected from data group 3 in the look up table above. The volatilities for the 1 year forward rates maturing in years 2, 3 and 4 are 0.003841907, 0.006701747, and 0.008638509.
The scaled sum of sigmas K(t,T,s_{t}) for t=0 and T=2 becomes
and therefore K(0,T,s_{t}) =(√1)( 0.003841907) = 0.003841907.
Using formula 1 with these inputs and the fact that the variable Index=1 for an upshift gives
P(1,2,s_{t} = up) = 0.990858
For a downshift we set Index = 1 and recalculate formula 1 to get
P(1,2,s_{t} = down) = 0.983273
We have fully populated the bushy tree for the zero coupon bond maturing at T=2 (note values have been rounded to six decimal places for display only), since all of the up and down states at time t=2 result in a riskless payoff of the zero coupon bond at its face value of 1. Note also that, as a result of our volatility assumptions, the price of the bond maturing at time T=2 after an upshift to time t=1 no longer results in a value higher than the par value of 1. The change in our volatility assumptions has eliminated the negative rates found in example one.
Building the Bushy Tree for Zero Coupon Bonds Maturing at Time T = 4
We now populate the bushy tree for the 4 year zero coupon bond. We calculate each element of equation (1). When t=0 and T=4, we know Δ=1 and
P(0,4,s_{t}) =0.930855099
The one period risk free rate is
R(0,s_{t})=1/P(0,1,s_{t})=1/0.997005786=1.003003206
The spot U.S. Treasury rate r(0,s_{t}) is still 0.003003206 and the same volatilities from data group 3 are relevant. The scaled sum of sigmas K(t,T,s_{t}) for t=0 and T=4 becomes
and therefore K(0,T,s_{t}) =(√1)( 0.003841907+0.006701747+0.008638509)= 0.019182164.
Using formula 1 with these inputs and the fact that the variable Index=1 for an upshift gives
P(1,4,s_{t} = up) =0.951558.
For a downshift we set Index = 1 and recalculate formula 1 to get
P(1,4,s_{t} = down) = 0.915743.
We have correctly populated the first two columns of the bushy tree for the zero coupon bond maturing at T=4 (note values have been rounded to six decimal places for display only).
Now we move to the third column, which displays the outcome of the T=4 zero coupon bond price after 4 scenarios: upup, updown, downup, and downdown. We calculate P(2,4,s_{t} = up) and P(2,4,s_{t} = down) after the initial “down” state as follows. When t=1, T=4, and Δ=1 then the one period risk free rate is
R(1,s_{t} = down)=1/P(1,2,s_{t} = down)=1/ 0.983273 =1.017011098.
The U.S. Treasury spot rate is r(1,s_{t} = down)=R(1,s_{t} = down) 1 = 1.7011098%, which is in data group 6. The volatilities for the two remaining 1 period forward rates that are relevant are taken from the lookup table for data group 6: 0.008454972 and 0.006312739.
The scaled sum of sigmas K(t,T,s_{t}) for t=1 and T=4 becomes
and therefore K(1,4,s_{t}) =(√1)( 0.008454972+0.006312739)= 0.014767711.
Using formula 1 with these inputs and the fact that the variable Index=1 for an upshift gives
P(2,4,s_{t} = up) = 0.945074.
For a downshift we set Index = 1 and recalculate formula 1 to get
P(2,4,s_{t} = down) = 0.917569.
We have correctly populated the third and fourth rows of column 3 (t=2) of the bushy tree for the zero coupon bond maturing at T=4 (note values have been rounded to six decimal places for display only). The remaining calculations are left to the reader.
In a similar way, the bushy tree for the price of the zero coupon bond maturing at time T=3 can be calculated as follows:
If we combine all of these tables, we can create a table of the term structure of zero coupon bond prices in each scenario as in example one:
At any point in time t, the continuously compounded yield to maturity at time T can be calculated as y(Tt)=ln[P(t,T)]/(Tt). Unlike example one, no negative rates appear in the bushy tree for example two because of the revised approach to interest rate volatility.
We can graph yield curve movements as shown below. Note that at time T=3, only the bond maturing in time T=4 remains so there is only one data point observable on the yield curve.
Finally, we can display the 1 year U.S. Treasury spot rates and the associated term structure of 1 year forward rates in each scenario.
Valuation in the Heath Jarrow and Morton Framework
Prof. Jarrow in a quote above described valuation as the expected value of cash flows using the risk neutral probabilities. Note that column 1 denotes the riskless 1 period interest rate in each scenario. For the scenario number 14 (three consecutive downshifts in zero coupon bond prices), cash flows at time T=4 would be discounted by the one year spot rates at time t=0, by the one year spot rate at time t=1 in scenario 2 (“down”), by the one year spot rate in scenario 6 (“down down”) at time t=2, and by the one year spot rate at time t=3 in scenario 14 (“down down down”). The discount factor is
Discount Factor (0,4, down down down) =1/(1.003003)(1.017011)(1.038810)(1.060934)
These discount factors are displayed here for each potential cash flow date:
When taking expected values, we can calculate the probability of each scenario coming about since the probability of an upshift is ½:
It is convenient to calculate the “probability weighted discount factors” for use in calculating the expected present value of cash flows:
We now use the HJM bushy trees we have generated to value representative securities.
Valuation of a Zero Coupon Bond Maturing at Time T=4
A riskless zero coupon bond pays $1 in each of the 8 nodes of the bushy tree that prevail at time T=4:
When we multiply this vector of 1s times the probability weighted discount factors in the time T=4 column in the previous table and add them, we get a zero coupon bond price of 0.93085510, which is the value we should get in a noarbitrage economy, the value observable in the market and used as an input to create the tree.
Valuation of a CouponBearing Bond Paying Annual Interest
Next we value a bond with no credit risk that pays $3 in interest at every scenario at times T=1, 2, 3, and 4 plus principal of 100 at time T=4. The valuation is calculated by multiplying each cash flow by the matching probability weighted discount factor, to get a value of 104.70709974. It will surprise many that this is the same value that we arrived at in example one, even though the volatilities used are different. The values are the same because, by construction, our valuations for the zero coupon bond prices at time zero for maturities at T = 1, 2, 3, and 4 continue to match the inputs. Multiplying these zero coupon bond prices times 3, 3, 3, and 103 also leads to a value of 104.70709974 as it should.
Valuation of a Digital Option on the 1 Year U.S. Treasury Rate
Now we value a digital option that pays $1 at time T=3 if (at that time) the one year U.S. Treasury rate (for maturity at T=4) is over 4%. If we look at the table of the term structure of one year spot and forward rates above, this happens in three scenarios, scenarios 10 (up down down), 12 (down up down), and 14 (down down down). The cash flow can be input in the table below and multiplied by the probability weighted discount factors to find that this option has a value of 0.35812611:
Conclusion
The Dickler, Jarrow and van Deventer studies of movements in U.S. Treasury yields and forward rates from 1962 to 2011 confirm that 510 factors are needed to accurately model interest rate movements. Popular one factor models (Ho and Lee, Vasicek, Hull and White, Black Derman and Toy) cannot replicate the actual movements in yields that have occurred. The interest rate volatility assumptions in these models (constant, constant proportion, declining, etc.) are also inconsistent with observed volatility.
In order to handle a large number of driving factors and complex interest rate volatility structures, the Heath Jarrow and Morton framework is necessary. This blog, the second in a series, shows how to simulate zero coupon bond prices, forward rates and zero coupon bond yields in an HJM framework with ratedependent and maturitydependent interest rate volatility. Monte Carlo simulation, an alternative to the bushy tree framework, can be done in a fully consistent way.
In the next blog in this series, we enrich the realism of the simulation by recognizing one very important flaw in the current example 2. In the current example, because all of the sigmas are positive, when the single risk factor shocks forward rates, they will all move up together, move down together, or remain unchanged together. This means that rates are 100% correlated with each other. If one examines the actual correlation of one year changes in forward rates, however, correlations fall well below 100%:
In the next two blogs, we introduce a second and third risk factor in order to match both observed volatilities and correlations.
Other References
Dicker, Daniel T., Robert A. Jarrow and Donald R. van Deventer, “Inside the Kamakura Book of Yields: A Pictorial History of 50 Years of U.S. Treasury Forward Rates,” Kamakura Corporation memorandum, September 13, 2011.
Dickler, Daniel T. and Donald R. van Deventer, “Inside the Kamakura Book of Yields: An Analysis of 50 Years of Daily U.S. Treasury Forward Rates,” Kamakura blog, www.kamakuraco.com, September 14, 2011.
Dicker, Daniel T., Robert A. Jarrow and Donald R. van Deventer, “Inside the Kamakura Book of Yields: A Pictorial History of 50 Years of U.S. Treasury Zero Coupon Bond Yields,” Kamakura Corporation memorandum, September 26, 2011.
Dickler, Daniel T. and Donald R. van Deventer, “Inside the Kamakura Book of Yields: An Analysis of 50 Years of Daily U.S. Treasury Zero Coupon Bond Yields,” Kamakura blog, www.kamakuraco.com, September 26, 2011.
Dicker, Daniel T., Robert A. Jarrow and Donald R. van Deventer, “Inside the Kamakura Book of Yields: A Pictorial History of 50 Years of U.S. Treasury Par Coupon Bond Yields,” Kamakura Corporation memorandum, October 5, 2011.
Dickler, Daniel T. and Donald R. van Deventer, “Inside the Kamakura Book of Yields: An Analysis of 50 Years of Daily U.S. Par Coupon Bond Yields,” Kamakura blog, www.kamakuraco.com, October 6, 2011.
Heath, David, Robert A. Jarrow and Andrew Morton, "Contingent Claims Valuation with a Random Evolution of Interest Rates," The Review of Futures Markets, 9 (1), 1990.
Heath, David, Robert A. Jarrow and Andrew Morton, "Bond Pricing and the Term Structure of Interest Rates: A Discrete Time Approximation," Journal of Financial and Quantitative Analysis, December 1990.
Heath, David, Robert A. Jarrow and Andrew Morton, "Bond Pricing and the Term Structure of Interest Rates: A New Methodology for Contingent Claims Valuation," Econometrica, 60(1), January 1992.
Jarrow, Robert A. Modeling Fixed Income Securities and Interest Rate Options, second edition, Stanford Economics and Finance, Stanford University Press, Stanford, California, 2002.
Jarrow, Robert A. and Stuart Turnbull. Derivative Securities, 1996, Southwestern Publishing Co., second edition, fall 2000.
van Deventer, Donald R. “Pitfalls in Asset and Liability Management: One Factor Term Structure Models,” Kamakura blog, www.kamakuraco.com, November 7, 2011. Reprinted in Bank Asset and Liability Management Newsletter, January, 2012.
van Deventer, Donald R. “Pitfalls in Asset and Liability Management: One Factor Term Structure Models and the LiborSwap Curve,” Kamakura blog, www.kamakuraco.com, November 23, 2011. Reprinted in Bank Asset and Liability Management Newsletter, February, 2012.
Slattery, Mark and Donald R. van Deventer, “Model Risk in Mortgage Servicing Rights,” Kamakura blog, www.kamakuraco.com, December 5, 2011.
van Deventer, Donald R., Kenji Imai, and Mark Mesler, Advanced Financial Risk Management, John Wiley & Sons, 2004. Translated into modern Chinese and published by China Renmin University Press, Beijing, 2007. Second edition forthcoming in 2012.
Donald R. van Deventer
Kamakura Corporation
Honolulu, March 6, 2012
© Copyright 2012 by Donald R. van Deventer. All rights reserved.