The Question

I'm currently implementing the a finite difference method for the Hull-White model, shown below:

$$\mathrm{d}r(t)=\lambda[\theta(t) − r(t)]\mathrm{d}t + \sigma\mathrm{d}W(t)\tag{1}$$

This requires that I calculate $\theta(t)$ at each point in time, $t$.

I assume I am given a discount curve, an example of which is given below:

Time $t$ in years Discount Factor
0 1
0.003 0.9998843
0.083 0.9968031
0.167 0.9935687
... ...
0.917 0.9629143
1 0.9599047
2 0.9200919
... ...
30 0.2699292

How do I calculate $\theta$ from such a chart?

My Attempt

On page 73 of Interest Rate Models — Theory and Practice by Brigo and Mercurio, we are given a formula for $\theta(t)$, given below:

$$ \theta(t) = \frac{1}{\lambda} \frac{\partial f^{M}(0, T)}{\partial T}\bigg\rvert_{T = t} + f^{M}(0, t) + \frac{\sigma^2}{2\lambda^2}\Big(1 - e^{-2\lambda t} \Big) \text{,}\tag{2}$$

where $f^{M}(0, t)$ is the market instantaneous forward rate at time $0$ for the maturity $t$. This can be calculated by

$$f^{M}(0, T) = -\frac{\partial P^M(0, T)}{\partial T}\text{,}\tag{3}$$

where $P^M(0, T)$ is the market discount factor for the maturity $T$.

Suppose we wanted to calculate $\theta(t)$. Then we just need to calculate

$$\frac{\partial P^M(0, T)}{\partial T}\tag{4}$$ and $$\frac{\partial^2 P^M(0, T)}{\partial T^2}\tag{5}$$

at $t$ using Taylor series discretizations and plug the formulas into (2).

Choose an $\epsilon$ such as $\epsilon = .000001$. We can try to calculate (5) at $t$ using the three points, $P^M(0, t-\epsilon)$, $P^M(0, t)$, and $P^M(0, t+\epsilon)$.

Well, now our answer boils down to how we estimate $P^M(0, t \pm \epsilon)$, which we estimate using (4) and (5). If we assume that $P$ is piecewise linear, for example, then (5) will always be $0$, except at times $t$ appearing in the chart, where it will blow up.

A different question might be "How do we interpolate $P^M$ for the purpose of calculating $\theta$?"


1 Answer 1


In practical situations you will never know $P^M(0,t\pm\epsilon)$ for a continuum of $t$ and $\epsilon\,.$ In other words, $\theta$ will practically always depend on an interpolation method between the $t$-points in your chart. There is no model that will tell you what the right interpolation method should be. Many different ones can be used in practice. Interpolation methods of order higher than linear typically use not only adjacent points $t_{i-1}$ and $t_i$ to interpolate inbetween but also $t_{i-2}$ and $t_{i+1}$ and perhaps more. This will have the effect that changing, say, the input $P^M(0,t_{i+1})$ affects your $\theta$ in a 'remote' interval $[t_{i-2},t_{i-1}]\,.$ It is a matter of judgment if such spillover effects of interest rate risk are desired.

  • $\begingroup$ Using linear interpolation for $P^M(0, t\pm \epsilon)$ will give an estimate of $\theta(1) = -5288.2$ at $t = 1$. Using a second order interpolation requires making assumptions about $P''$, and I will then use the $P$ estimates to estimate $P''$. That's cyclical. I'm not convinced that naively choosing a different interpolation method will resolve these issues. $\endgroup$
    – user59093
    Sep 10, 2021 at 14:27
  • $\begingroup$ One thing to keep in mind is that the values of $\theta$ are only of theoretical interest. In Hull-White the equations can be rewritten such that only the values of $P^M(0,t)$ appear. No derivative needed. A lot more benign. $\endgroup$
    – Kurt G.
    Sep 10, 2021 at 14:37
  • 1
    $\begingroup$ "No derivative needed." What do you mean by that? It seems to me that the way to insert $P^M(0, t)$ into (1) is by substituting in equations (2) and (3). The Heston-Hull-White PDE that I'm implementing (equation 1.3 here: arxiv.org/pdf/1111.4087.pdf ) uses $\theta$ directly. Are you saying that I can calculate this $\theta$ without finding derivatives of $P$? $\endgroup$
    – user59093
    Sep 10, 2021 at 14:51
  • $\begingroup$ What I meant was that in quantities such as Libor rates, only the terms $P^M(0,t)$ and $P^M(0,T)$ and (in your notation) $\sigma$ and $\lambda$ show up. No $\theta(t)$ - as this is 'absorbed' in $P^M(0,.)\,.$ See this discussion. Of course, when you want to solve the PDE that you linked it is a different story. The function $\theta$ changes wildly when you interpolate differently. It cannot be helped. $\endgroup$
    – Kurt G.
    Sep 11, 2021 at 8:59
  • $\begingroup$ One idea: you will certainly discretise your time interval when solving the PDE numerically. The discrete time points should not fall on time points from your chart above. $\endgroup$
    – Kurt G.
    Sep 11, 2021 at 9:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.