I am trying to bootstrap a 6m Euribor curve using the same instruments as the default Bloomberg curve:

6m Euribor rate, 12 FRAs starting at 1x7 finishing at 12X18, Swap rates 2yrs each year out to 10yrs (no need to go any further out).

How do I do the first iteration of the bootstrapping to get the spot rate and spot discount factor for the 1x7 FRA?

I have the spot rate and discount factor for the 6m Euribor rate and the FWD discount factor for for the 1x7 FRA - what else do I need and what is the next calculation step please?

I can bootstrap a curve from just the swap rates but I don't know how I add in the FRAs Sorry if this is obvious!



  • $F(t,t+\tau)$ be the forward rate from time t to t + $\tau$
  • $D(t)$ the discount factor for time t

The forward rate will be given by:

$$ 1 + F(t, t + \tau) \tau = \frac{D(t)}{D(t + \tau)}$$

So in your case you have (more or less):

$$1 + FRA_{1x7} \times 182/360 = \frac{D_{1M}}{D_{7M}}$$

and in your process of bootstrapping the yield curve you are expecting to solve for the $D_{7M}$. However, you have a problem because you also don't know the $D_{1M}$

You could, in a very naive way, interpolate between $D_{0}=1$ and $D_{6M}$ which you already know to get a 1M pseudo discount factor, and use that to solve for the $D_{7M}$.

This is an outdated approach and will lead to unsmooth forwards but it will allow you to start with simpler procedures and go from there. For a more correct and advanced approach I suggest this presentation The abcd of Forward Rate Bootstrapping

Notice that on Bloomberg you can choose several interpolation methods (Smooth forward, Piecewise Linear, etc) that will give slighly different results. By default I believe you would have "Smooth Forward (Cont)", where, according to Bloomberg documentation:

"Continuously compounded forward rate. The forward rate rcf defined by the formula is piecewise quadratic. The neighboring points of the forward curve are connected in such a way that the first derivative of the forward rate is continuous, which is reflected in the term "smooth." The building of the curve requires the global pricing method."

On this, I would suggest the paper Methods for Constructing a Yield Curve by Hagan and West.


Here, I am assuming that your FRA is not settled in arrears, i.e. the (forward) LIBOR rate is settled at $t>t_0$ and paid at $t+\tau$.

The present value formula for this FRA is:

\begin{align} PV&=N\tau D_{OIS}(t+\tau)\left[R(t_0,t,t+\tau)-F(t,t+\tau)\right]\\ &=N\tau D_{OIS}(t+\tau)\left[R(t_0,t,t+\tau)-\frac{1}{\tau}\left(\frac{D_{6M}(t)}{D_{6M}(t+\tau)}-1\right)\right] \end{align}

and hence your FRA-implied theoretical discount factor for (any) tenor should equal

$$ D_{6M}(t+\tau)=D_{6M}(t)\frac{1}{1+\tau R(t_0,t,t+\tau)} $$

Again, this implies knowledge of or an interpolation assumption for the first tenor(s).

  • $\begingroup$ Thanks for the answer but I’m still in the dark here.. Is there a resource that details the notation you are using? Sorry if it is standard - i'm new to this. $\endgroup$ – batkins Oct 2 '20 at 14:41
  • $\begingroup$ Today is Fri 2nd Oct I have the 6m EURIBOR rate (-0.481% today) so the discount factor is 1.00243765 (calc: 1/(1-0.481%*182/360)) the 1x7 FRA resets on 4th Nov, Settles on 6th Nov and matures on 6th May 2021 (181 days after settle dt). How would I match your notation to get the spot discount factor and Zero rate for 6th May 2021? $\endgroup$ – batkins Oct 2 '20 at 15:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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