# Interpolating spot rates given intermittent coupon-bond prices.

I'm trying to bootstrap spot rates given coupon-paying bond data. To simplify my problem, assume we are working with only 3 given data, the price/coupon rate on semi-annual bonds maturing in 0.5, 1, and 2 years.

I can infer the 0.5 and 1 year spot rates from the given data. How do I infer the 1.5 and 2 year spot rates? If it simplifies the problem, assume that the spot rate changes linearly from 1 to 2 years.

Is there an analytic solution to find the 1.5 and 2 year spot rates? Do I need some iterative process?

Any leads on this problem would help. Thanks!

Assume we have $r(t)$ continuously compounded spot rate for maturity $t$. The price of the 2-year bond with semi-annual coupon $C$ is known to be $P$. We already have $r(0.5)$ and $r(1)$. We need $r(2)$ and $r(1.5) = f(r(1), r(2))$. Then
$$P = C [e^{-0.5 \times r(0.5)} + e^{-r(1)}+e^{-1.5 \times r(1.5)}] + (1+C)e^{-2 \times r(2)}$$
Using linear interpolation, $r(1.5) = 0.5 [r(2) + r(1)]$. Substituting in, we get:
$$P = C [e^{-0.5 \times r(0.5)} + e^{-r(1)}+e^{-1.5 \times 0.5 [r(2) + r(1)]}] + (1+C)e^{-2 \times r(2)}$$
The best way to solve for $r(2)$ is with some optimisation technique. If you want to use an iterative approach, a simple Newton-Rhapson will be good enough.