How BlueGamma calculates zero-coupon rates from interest rate curves.
Zero-coupon rates (or "zero rates") represent the yield on a hypothetical bond that pays no coupons — just a single payment at maturity. They are the foundation for all other rate calculations.
What Is a Zero Rate?
A zero rate is the interest rate earned on an investment that:
Has no intermediate cashflows (no coupons)
Pays a single lump sum at maturity
Is held from today until the maturity date
Zero rates are also called spot rates because they represent the rate available "on the spot" for a given maturity.
Why Zero Rates Matter
Zero rates are fundamental because:
Discount factors are derived from them — DF = 1/(1+r)^t
Forward rates are calculated from them — Using no-arbitrage relationships
They enable apples-to-apples comparison — Unlike par rates, zero rates can be directly compared across tenors
They're used for valuation — PV calculations require zero rates, not par swap rates
Zero Rates vs Par Swap Rates
Zero Rate
Par Swap Rate
Definition
Yield on a zero-coupon bond
Fixed rate that makes swap NPV = 0
Coupons
None
Periodic payments
Directly observable?
No (derived)
Yes (quoted in market)
Use case
Discounting, PV calculations
Swap pricing, hedging
BlueGamma bootstraps zero rates from observable par swap rates.
The Formula
The zero rate for maturity t is related to the discount factor by:
rt=(DFt1)t1−1
Or equivalently:
DFt=(1+rt)t1
Where:
r = Zero rate for maturity t
DF = Discount factor for maturity t
t = Time in years
Example: SOFR Zero Curve
Here's the current SOFR zero curve (December 2024):
Maturity
Zero Rate
Discount Factor
6M (Jun 2026)
3.63%
0.9821
1.5Y (Jun 2027)
3.40%
0.9345
2.5Y (Jun 2028)
3.41%
0.9036
3.5Y (Jun 2029)
3.51%
0.8723
4.5Y (Jun 2030)
3.63%
0.8407
6.5Y (Jun 2032)
3.93%
0.7769
9.5Y (Jun 2035)
4.45%
0.6833
Observations:
The curve is slightly inverted at the short end (6M > 1.5Y)
Rates rise steadily from 2Y onwards
This shape reflects market expectations of near-term rate cuts followed by normalisation
Using Zero Rates in BlueGamma
API
Response:
Excel Add-in
Zero Curve vs Discount Curve
The zero curve and discount curve contain the same information in different forms:
Maturity
Zero Rate
Discount Factor
1Y
3.47%
0.9647
2Y
3.34%
0.9345
3Y
3.34%
0.9036
4Y
3.39%
0.8723
5Y
3.45%
0.8407
6Y
3.51%
0.8088
7Y
3.58%
0.7769
8Y
3.65%
0.7453
9Y
3.71%
0.7141
10Y
3.77%
0.6833
You can convert between them:
Zero → DF:DF = 1 / (1 + r)^t
DF → Zero:r = (1/DF)^(1/t) - 1
Compounding Conventions
BlueGamma zero rates use the following conventions:
Index Type
Day Count
Compounding
SOFR
Actual/360
Simple
SONIA
Actual/365
Simple
EURIBOR
Actual/360
Simple
Government Bonds
Actual/Actual
Semi-annual
Note: The compounding convention affects how you convert between zero rates and discount factors. Always check the convention when comparing rates from different sources.