Calibrating Ho-Lee to Match Discount Bond Prices
Summary
The document explains why a basic Ho-Lee short-rate model with an initial rate and constant volatility cannot generally match discount bond prices across maturities. It illustrates the issue with a two-step binomial lattice: setting the initial rate to fit a one-year zero-coupon bond and choosing volatility still leaves the model’s two-year price different from the observed price.
To fit the term structure, the model adds a time-dependent shift at each step. These shifts, often represented as theta parameters, can be chosen to match observed zero-coupon prices at successive maturities. The answer recommends solving for them with a numerical solver and notes that analytical expressions are also possible. The example demonstrates the mismatch and the purpose of the added parameter, but it is deliberately simplified: it assumes discrete annual steps and fixed up/down probabilities. It does not provide a full calibration procedure for market data or discuss extensions and implementation choices.
Key ideas
- A basic Ho-Lee model with only an initial rate and constant volatility has too few degrees of freedom to fit a full set of bond prices.
- A binomial lattice makes the mismatch visible when fitting bonds at more than one maturity.
- A time-dependent shift can be selected at each step to match observed zero-coupon bond prices.
- Numerical solvers are a practical way to calibrate the shifts, while analytical solutions may also be available.
Tags
Full text
# Fitting the Term structure of Discount Bonds with Ho-Lee
# Fitting the Term structure of Discount Bonds with Ho-Lee
I was now reading a book on interest rate modelling, and I am having trouble picturing the practical issues of model calibration with the Ho-Lee model.
Apparently, one of the drawbacks of this model is the following:
> The Ho-Lee model effectively has two parameters $-$ $r(0)$ and $\sigma_r$ $-$ with which one can attempt to fit the initial yield curve. It should be clear that this is insufficient to properly match observable discount bond prices, which effectively disqualifies the model from practical pricing applications
Right after that, the book states the following
> Fortunately, a remedy is quite straightforward: simply introduce a deterministic function $a(t)$ and alter the model to be $r(t) = r(0) + a(t) + \sigma_rW(t)$ with $a(0) = 0$
Two questions:
- On calibrating this model, how should I go about it? Any particular method that is most popular?
- Why, according to the first quote, can't we fit term structures with Ho-Lee at all? Is this always the case? And specifically how exactly does a time-dependent parameter improve things so much?
## Answer by rbm (score 3, accepted)
https://quant.stackexchange.com/a/33517
What they are referring to is a very simplified version of the Ho-Lee model, i.e. on that assumes $$r(t)=r(0)+{\sigma}W(t)$$ where ${\sigma}$ is a constant (annualized StDev).
For the sake of simplicity, imagine we are in discrete time and want to fit the model to observed (market) prices of bonds. We assume that $p=0.50$, i.e. the probability of interest rate going up/down is constant and the interest rate is modelled as $$r_{i+1,j}=r_{i,j}+{\sigma}\times\sqrt{\Delta}$$ (the rate going up) and $$r_{i+1,j}=r_{i,j}-{\sigma}\times\sqrt{\Delta}$$ (the rate going down).
It is clear that we are in binomial lattice model and that the ${\Delta}$ is the time step. Again, for the sake of simplicity assume ${\Delta}=1.0$ (years). (BTW - these equations are consistent with Veronesi's explanations in his book on Fixed Income)
Let's assume that ${\sigma}=0.02$ and let's have a ZCB with 1y maturity with market price of 97.5310 and 2y ZCB with price of 94.12.
Hence $r(0)=0.025$ (that is $97.5310{\times}e^{0.0250}=100$) and you now can build the entire lattice, i.e. in the next period the up rate is $0.045$ and the down rate is $0.005$. If you price the 2y ZCB (assuming face of $100$) you get $e^{-0.0250}{\times}0.50{\times}(e^{-0.045}*100+e^{-0.005}*100)=95.142$ which does not correspond to the market price of 94.12.
By introducing another term into the equation, i.e.
$$r_{i+1,j}=r_{i,j}+ {\color{red}{\theta_i}} + {\sigma}\times\sqrt{\Delta}$$
you use the observed price of the 2y bond to exactly fit the lattice, i.e. the market prices will match the model prices. The ${\theta_{i}}$s are called free parameters and you really choose them to exactly fix the given ZCB prices (why: you want your model to be good enough to match market prices).
In terms of model calibration, you can use numerical solver and iteratively solve for ${\theta}_1$, ${\theta_2}$ etc. You can get an exact (analytical) expression for each if needed (unlike in BDT model), but the numerical solvers are fast, easy and have good enough accuracy.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.