0
$\begingroup$

I have the zero rates at certain time nodes, say 3-month, 5-month, 8-month,...,2-yr,... Now I want to interpolate the curve so that the implied one-month forward rates are piecewise linear. That is, between two nodes, the forward rates are linear. I have no idea where to start. Can someone help?

$\endgroup$

1 Answer 1

2
$\begingroup$

Suppose that you interpolate your zero curve, i.e. your discount factors at time $k$, $v_k$, using a log-quadratic approach:

$$\ln(v_i) = \alpha + \beta D_i + \gamma D_i^2 $$

where $v_i$ is a discount factor between two known discount factors, $v_k$ and $v_{k+1}$, and $D_i$ is the day-count-fraction between the dates associated with $v_k$ and $v_i$.

Note that in order to derive the parameters $\alpha$ $\beta$ and $\gamma$ you need boundary conditions for your interpolation, for example endpoints alining and one initially zero derivative:

i.e. if $D_k=0$ then $\alpha = \ln(v_k)$
i.e. for $D_{k+1}$ then $\; \ln(v_{k+1}) = \ln(v_k) + \beta D_{k+1} + \gamma D_{k+1}^2$
i.e a derivative is assumed at start (e.g. zero derivative): $\implies \beta=0$

Consider the discount factor on the day following $v_i$, $v_{i(+1d)}$:

$$\ln(v_{i(+1d)}) = \alpha + \beta (D_i+\frac{1}{360}) + \gamma (D_i+ \frac{1}{360})^2 $$

Then the overnight continuously compounded rate for the date associated with $v_i$ is:

$$ r_i = 360 \ln (\frac{v_i}{v_{i(+1d)}}) = -\beta -\gamma (D_i + \frac{1}{360})$$

You can observe that this is linear in $D_i$ indicating that continuously compounded overnight rates are linearly interpolated between dates $k$ and $k+1$.

Does this mean that your implied one-month forward rates are piecewise linear. No, but its not going to be far off. If you want to derive a curve interpolated in terms of rates then you will need a configured optimiser I expect.

$\endgroup$

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.