Skip to content
All library documents

Extrapolating Discount Curves Before the First Swap Pillar

Article Quant Q&A · Author: Dejan

Summary

The document addresses how to set discount factors between a valuation date and the effective date of the earliest available swap. It presents two approaches: extrapolate the curve using the same method used between known pillars, such as linear zero-rate extrapolation, or use a short-period rate derived consistently from the first quoted annual rate. The latter converts the annual rate to the stub accrual period through compounding, then annualizes that short-period rate before discounting.

The example shows that applying the quoted annual rate directly with simple accrual does not reproduce the existing curve’s first discount factor, while the compounded conversion yields a closer match. The discussion also explains that bootstrapping depends on interpolation assumptions for intermediate cash flows and can be solved instrument by instrument when each earlier segment depends only on earlier pillars. Results depend on day-count and curve conventions, and the answers describe practical choices rather than a uniquely mandated extrapolation rule.

Key ideas

  • The period before the first market instrument requires an explicit curve extrapolation or short-rate convention.
  • A first-instrument annual rate can be converted to a stub-period rate using compounding over the accrual fraction.
  • Using a consistent interpolation and extrapolation method helps align the front end with the rest of the curve.
  • Local interpolation permits sequential bootstrapping because later pillars do not affect earlier curve segments.
  • Short-dated instruments can provide additional information where swaps alone leave the curve poorly constrained.

Tags

Full text
# In curve building: How to calculate interest rate (discount factor) for period before first known effective date


# In curve building: How to calculate interest rate (discount factor) for period before first known effective date












I am building a curve using par swaps rates. For example, I have the following two semi-annual swaps for input

```

Duration   start          end            rate   
1year      14-Nov-2011    14-Nov-2012    0.58%
2year      14-Nov-2011    14-Nov-2013    0.60%
```

and I want to build a curve for `10-Nov-2011`. I don't know how to calculate discount factor for `14-Nov-2011`, since I don't know how to choose a rate for period from `10-Nov-2011` until `14-Nov-2011`.

Does anyone know how to find discount factor for `14-Nov-2011`?

Additional info: For previous input the curve looks like

```

Date     , Discount factor
10-Nov-11, 1                  
14-Nov-11, 0.999935743789455  ???
14-May-12, 0.997012282219702  
14-Nov-12, 0.99406543047691   
15-Nov-12, 0.993981821851122  
15-May-13, 0.990959091324625  
15-Nov-13, 0.987828512874748
```

generated with parameters:



- Interpolation to use durring bootstrapping: Linear from spot rates.

- Swap bootstrapping method: Linear spot rates.

In my calculation, if we choose rate `0.58%` than the discount factor for `14-Nov-11` would be: $$\textrm{discount factor} = \frac{1}{1+rate\times accrual} = \frac{1}{1+\frac{0.58}{100} \times \frac{4}{360}} = 0.99993555970837$$

which is not the correct value.

Additionally, when I try to reproduce the rate which is used to build the curve I already have, I get: $$ rate = \frac{1-discount factor}{discount factor \times accrual} = \frac{1-0.999935743789455}{0.999935743789455 \times \frac{4}{360}}= 0.57834\%$$ but it is unclear to me how can I get this rate from input data.

## Answer by Dejan (score 0, accepted)

https://quant.stackexchange.com/a/37005

If we want to find the rate before the first known swap (or cash, future,etc) we need to do the following:

- Sort inputs by termination dates and choose the rate from the first one. In my case it is `0.58%`. So, let us denote $\textrm{firstIntervalRate}=0.58\%$.

- Rate for the period from the valuation date until the first start (effective) date should be calculated using the following formula $$\begin{align} r &= \left ( (1+\textrm{firstIntervalRate})^{accrual}-1\right ) \times \frac{1}{accrual}\\ &=\left ( \left (1+ \frac{0.58}{100}\right )^{\frac{4}{360}}-1 \right ) \times \frac{360}{4}= 0.57834\%.\end{align} $$

Derivation:

If we have $N$ payments with the given annual rate (in my case it is $\textrm{firstIntervalRate}$) than the rate for every period $r_p$ would satisfy

$$\textrm{firstIntervalRate} = \prod_{n=1}^{N}(1+r_p)-1= (1+r_p)^N -1, $$ so the rate for the period of $1/N$ of one year would be $$ r_p=(1+\textrm{firstIntervalRate})^{1/N}-1.$$ If we want a rate for an arbitrary number of days, we need to change $1/N$ in previous formula with the actual $accrual$ factor. Now, we have rate $r_p$ for some number of days (in my case it is 4 days) and next step is to make it annualized by multiplying with the number of payments per year (or in arbitrary case with the value of $1/accrual$).

## Answer by Antoine Conze (score 1)

https://quant.stackexchange.com/a/36938

Your valuation date is $t=$ Thu 10-Nov-11. The swaps start on the spot date which is $t + 2$ business days = Mon 14-Nov-11. The usual approach is to extrapolate between $t$ and the first curve pillar, in a manner consistent with the interpolation method that you are using for representing your discount curve. For instance if you use linear interpolation of zero coupon rates then you might want to use linear extrapolation of zero coupon rates. Alternatively some systems use flat extrapolation, it won't make much of a difference for the short end of the curve.

Note that to get a richer curve you probably want to add short term instruments, such as weekly and monthly maturities swaps for the OIS discount curve, or FRAs or futures for the Libor projection curves.

A quick note on bootstrapping: when bootstrapping you are making some interpolation assumptions (because you need discount factors for the swaps semi-annual cash flows).

The common approach is:

- sort your N instruments by increasing maturity.

- transform the instruments maturities into N time pillars.

- choose a curve interpolation/extrapolation method, so that you can view you curve as depending on N parameters (e.g. N zero coupon rates if you choose to interpolate zero coupon rates).

- View your bootstrapping problem as finding N parameters to match N prices.

This looks like an N dimensional problem, but as long as your interpolation is such that the curve up to maturity T does not depend on pillars > T (i.e. linear interpolation which is local is fine, but splines which are global are not fine) then the N dimensional problem reduces to a sequence of N one dimensional problems which are easily solved.

The advantage of this approach is that you can use any mix of instruments into your bootstrapping.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.