Term Structure - Discrete Single Factor Models

Overview


Discrete factor short rate models are typically built using a tree model, which is familiar from standard derivative pricing.

Binomial Tree


The binomial tree short rate model, models the current spot rate for a given time frame. For example, it models the evolution of the 1 year rate over time. Each node of the tree represents a given 1 year rate.

The tree starts with a given rate (the current short rate) and a volatility.

{% \sigma %} = the volatility of the rate.
{% r_{up} = e^{2\sigma} \times r_{down} %}
This relationship assumes that the probability of up and down are both 0.5. (Fabozzi pg 384)

The third level of the tree has 3 rates specified, where
{% r_{2,HH} = r_{2,LL} \times e^{4\sigma} %}
{% r_{2,HL} = r_{2,LL} \times e^{2\sigma} %}
Note that the lowest rate, sometimes referred to as the base rate, is successively multiplied by {% e^{2\sigma} %} to get the rates above the base rate.

Pricing


Pricing of an interest rate derivative proceeds by using risk neutral valuation. Under the risk neutral measure, the value of one asset divided by another is a martingale. That is
{% \mathbb{E}(asset_1/asset_2) = Martingale %}
In the case of a short rate model, the asset chosen as the numeraire ({% asset_2 %} in this example) will be $1 invested in the short rate. That it, it is invested in the short rate, and every time it matures, it is re-invested as the short rate.

The value of $1 invested this way after n periods is
{% (1+r_1)(1+r_2) ... (1+r_n) %}
Once a tree has been constructed, it can be used to price fixed income payments. The fixed income payments must occur at the period of one of the levels of the tree. That is, if the period specified for the tree is 1 year, (each layer of the tree represents another year out), then only payments that occur at round numbers of years can be priced.

{% Value = \sum P(\omega) \frac{CashFlow_i}{(1+r_1)(1+r_2) ... (1+r_n)} %}

Calibration


To calibrate the tree, we need to provide the short rate today, the assumed volatility, and the base rate for each layer of the tree. Todays short rate is observable, and can be directly plugged in.

The volatility is an assumed value, typically taken to equal a measured value from past history. If the current rate is given as {% r %}, then the standard deviation of the rate is {% \sigma \times r %}. This can be used to calculate the value of {% \sigma %} from a measured standard deviation. (Note, the standard deviation of the short rate should be measured over a period that matches the period of one level of the tree. That is, if each level represents a 1 month period, then the standard deviation should be taken over a month period)
(see Fabozzi pg. 386)


The base rates of each level are then chosen so as to replicate the prices of zero coupon bonds maturing at each period. This is done iteratively. That is, starting at period 1, select the base rate that replicates the zero coupon bond price (discount) at period 1. Once period 1 nodes of the tree are filled in, then choose the base rate at period 2 to match prices at period 2. (Note, prices of period 2 bonds will need to use both period 1 and period 2 rates to calculate. But period 1 has already been established, so only the base rate in period 2 is required.)

Examples


  • Example 1
  • Example 2