For the complete documentation index, see llms.txt. This page is also available as Markdown.

💠Zero-Coupon Bonds

The instrument behind every fixed rate — price, discount factor, and APR in one page

A Zero-Coupon (ZC) bond pays no periodic interest. It trades at a discount and is redeemed at its full face value at maturity — the discount is the interest. On Secured Finance, every ZC bond has a face value (par) of 100, so a bond's price directly expresses its market-implied rate.

The ZC structure was chosen deliberately: only two cash flows (entry and maturity) means minimal gas, no coupon tracking or reinvestment, and transparent yield math.

Price, discount factor, and value

The bond price is the discount factor, scaled by 100:

ZC Bond Price=Discount Factor×100\text{ZC Bond Price} = \text{Discount Factor} \times 100

From any position you can compute present and future value:

FV=PV×100Bond PriceFV = PV \times \frac{100}{\text{Bond Price}}

Example: Bob buys 1,000 FIL notional of a ZC bond at 96.90. He pays 969 FIL today (PV) and holds a claim worth 1,000 FIL at maturity (FV) — a 3.2% return over the term, fixed at execution.

Converting price to APR

Trades execute on price; the app displays the implied APR as a reference, using the Act/365 day-count convention.

Maturities under 1 year (linear):

APR=(100Bond Price1)×seconds per yearseconds to maturityAPR = \left(\frac{100}{\text{Bond Price}} - 1\right)\times\frac{\text{seconds per year}}{\text{seconds to maturity}}

Example: a 3-month bond at 98.50 → (100/98.50 − 1) × 4.055 ≈ 6.17% APR.

Maturities over 1 year (annual compounding):

APR=(100Bond Price)1/years to maturity1APR = \left(\frac{100}{\text{Bond Price}}\right)^{1/\text{years to maturity}} - 1

Example: an 18-month bond at 85.00 → (100/85)^(1/1.5) − 1 ≈ 11.44% APR.

Pre-open markets: during the 7-day Itayose window, the displayed APR uses the estimated opening price and measures time from the trading start date (not the current date) to maturity.

Price bounds

Orders are capped at a price of 100.00 — the protocol does not allow negative yields. Prices are quoted to 2 decimal places. Per-block price movement is bounded by the Circuit Breaker.

Buying and selling in practice

  • Lend = buy the bond. Your yield is locked if you hold to maturity.

  • Borrow = sell the bond. You receive the discounted amount now and owe 100 per bond at maturity. Requires collateral.

  • Exit anytime by unwinding — taking the opposite side in the same market at the current price. Rates may have moved for or against you.

  • At maturity the position auto-rolls; there is no automatic settlement. Unwind to withdraw funds.

Common questions

Why use ZC bonds instead of interest-bearing loans?

Two cash flows are cheaper and safer on-chain than many: less gas, no reinvestment risk for lenders, and clear upfront terms. The discount-to-par structure also makes yields directly comparable across maturities.

How is my yield affected if I sell before maturity?

Your realized yield depends on the price you sell at. If rates have fallen since you bought, the bond price has risen and you gain; if rates have risen, you may realize less than the original APR.

Where can I see the exact math used by the contracts?

The contracts compute durations in seconds (seconds-per-year = 31,536,000). See the Developer Portal for SDK and subgraph access to raw prices.

Last updated