Skip to content
All library documents

Converting Deposit Rates to Continuously Compounded Zero Rates

Article Quant Q&A · Author: Michelle

Summary

The document explains why a short deposit quote and a curve’s zero rate can differ even when they refer to the same maturity. A deposit rate is simply compounded: principal grows by the rate multiplied by the accrual fraction. The curve in the example stores continuously compounded zero rates, so the equivalent rate is found by equating the two accumulation conventions over the same period.

The conversion depends on the time fraction and market conventions. For a Euribor deposit, relevant inputs include the day count basis, holiday calendar, business-day adjustment, quotation date, and settlement lag. A nonzero settlement lag means the quoted deposit rate represents a forward period rather than a rate beginning on the curve’s evaluation date. The discussion notes that curve construction becomes more involved for swaps, where node rates generally require root-finding. It offers a conceptual explanation of the reported curve output, rather than a complete numerical reconstruction.

Key ideas

  • Deposit quotes commonly use simple compounding, while a zero curve may report continuous compounding.
  • Equivalent rates can be related by matching the accumulation of principal over the same accrual period.
  • The accrual fraction depends on day count and calendar conventions.
  • Settlement lag can make a deposit quote a forward rate rather than a spot zero rate.
  • Swap instruments generally require solving for curve nodes iteratively.

Tags

Full text
# How to calculate zero rate for deposits in an interest rate curve in PiecewiseLinearZero method


# How to calculate zero rate for deposits in an interest rate curve in PiecewiseLinearZero method












I am trying to duplicate zero rates and discount factors from ql.PiecewiseLinearZero method. To simplify calculation, I only use one deposite rate: 3M Euribor 0.03822.

I set evaluationDate as ql.Date(11, 9, 2023) and I have only 2 nodes in the curve: ((Date(11,9,2023), 0.038036555682711436), (Date(13,12,2023), 0.038036555682711436)) which 0.038036555682711436 is the zero rates of the dates.

My question is: how to derieve the zero rate 0.038036555682711436 from Euribor 3M deposit rate 0.03822? I would be very grateful if anyone can help.

## Answer by Luigi Ballabio (score 1, accepted)

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

To expand a bit on @Attack68's comment: your input rate $r_s$ = 0.03822 is simply compounded, i.e., the notional plus interest after 3 months is $1 + r_s T$, with $T$ being 3 months. The curve you build, instead, happens to store the zero rates as continuously compounded rates, i.e., notional plus interest equals $e^{r_c T}$, hence the equivalence.

The exact value you'll get from solving the equation depends on calculating $T$ correctly. This involves a number of conventions such as the day count convention (probably act/360 since your deposit is based on Euribor), the calendar used for determining holidays (probably TARGET) and the convention to use to adjust holidays (Modified Following). It also depends, through the above, on the quotation date of the deposit and on the number of settlement days: if it's different from 0, the quoted rate is no longer a zero rate but a forward rate starting at a future settlement date.

Things get even more complex when you input swap rates into the curve. In general, calculating the nodes requires a root-finding process.

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.