I implemented the one factor Hull White model for educational purposes and I calibrated the model from a given (made up!) yield curve:

Yield curve

The Zero Coupon Bond Prices from this yield curve are:

Zero curve

Taking the log of the bond prices and use cubic splines for interpolation gives:

enter image description here

Calculating the instantaneous forward rates from the curve above using

$$ f^M(t) = -\frac{\partial \operatorname{log}P(t)}{\partial t} $$

where i use the first derivative of the cubic spline at time $t$ to calculate $\frac{\partial \operatorname{log}P(t)}{\partial t}$ results in

enter image description here

(blue are the forward rates, orange is the original yield curve)

When I calculate the Bond prices from the model I get the following result:

Model yield curve

The orange line are the bond prices from the model, the blue dots are the original bond prices.

My questions:

  • The forward curve has quite a swing. Is there a problem / fault in my approach?
  • Is it plausible that the model prices (last image) differ that much from the data I used for calibration?

The whole jupyter notebook is available here: https://nbviewer.jupyter.org/gist/wpla/435437ddc5bcb1f6bdcae274117725e7


Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.