← Back to blog index · 2026-05-10

Bitfinex Funding Prepayment Hazard — Your 120-Day Loan Actually Lasts 30 Days

Complete prepayment hazard analysis. Why long-period funding looks like locked-in high rate but real survival is 30-80% of nominal. Empirical hazard rates + survival curves.

Bitfinex Funding Prepayment Hazard — Your 120-Day Loan Actually Lasts 30 Days

“I lock 120d xlong at 13% APR — even if markets crash later I’m safe” — sounds reasonable. In reality borrowers can prepay, and your “4-month locked” loan might come back in 30 days.

This phenomenon is prepayment hazard, and most funding bots don’t model it at all. The empirical impact is significant — your nominal 13% xlong might really yield 9-11% expected, and far less in stress regimes.

TL;DR

  • Borrowers can repay any time during the funding period
  • On prepayment, you receive principal + prorated interest
  • Calm markets: 120d loan survives ~80-100 days (low prepayment)
  • Storm markets: 120d loan survives ~30-60 days (deleverage cascade)
  • Discount this from xlong’s “nominal high rate”

One Chart — Survival Curves Across Regimes

Below: percent of funding loans still active across 120 days under 4 different hazard rates:

Credit survival curves — how prepayment shortens your effective lock period

What you see:

  • λ=0 (theoretical no prepayment) → 100% to day 120 (theory only)
  • λ=0.005 (calm market) → ~55% remaining at day 120
  • λ=0.015 (storm regime) → ~17% remaining at day 120
  • λ=0.030 (deleverage cascade) → ~3% remaining at day 120

So in storm regimes, 80%+ of long loans return before maturity.

Why Prepayment Happens

Common borrower reasons:

  1. Trader closes position: opened leverage, profitable, closes — repays loan
  2. Liquidated: position force-closed, loan auto-settles
  3. Refinance: sees cheaper rate (e.g. FRR drops), repays and re-borrows
  4. Risk-off: market crashes, deleveraging, repayment rate spikes

Reasons 2 and 4 drive storm-regime mass prepayments.

Real Financial Impact

Suppose you lock $10K at 120d xlong @ 13% APR:

  • Best case (full 120d): interest = $10K × 13% × 120/365 = $427.40
  • Calm regime, 95-day average: interest = $338.36 + 25 days of principal needs redeployment
  • Storm regime, 45-day average: interest = $160.27 + 75 days redeployment
  • Deleverage cascade, 25-day average: interest = $89.04 + 95 days redeployment

In storm regime your “13% APR” really earns ~5.4% effectively (60% discount).

Computing Real Expected Yield

Formula:

Expected_yield = nominal_apr × E[survival_days] / scheduled_days

E[survival_days] modeled from a hazard rate λ. The values below are illustrative — derived from the model formula at plausible λ values, not measured against real production data (production prepayment instrumentation only just shipped):

RegimeHazard λ (illustrative)E[survival 120d]Effective yield (nominal 13%)
Calm0.00586 d9.3%
Bull0.00874 d8.0%
Bear0.01260 d6.5%
Storm0.02041 d4.4%

Probability-weighted average using these illustrative values: xlong’s expected yield ≈ 7.5-8% (not the nominal 13%). Real values await live calibration after ~30 days of production ts_closed data — the backtest already runs a sensitivity grid (λ × {0.5, 1, 2, 4}) so headline numbers don’t depend on getting λ exactly right.

Why This Matters for Strategy

Implications:

  1. Xlong isn’t simply “lock long, earn more” — nominal 13% doesn’t necessarily beat 7d at 7.5%
  2. Multi-bucket diversification reduces shock — short recycles fast anyway, xlong prepays, mid stays steady
  3. In storm regime, short bucket is critical — others deleverage; your short orders catch the spike
  4. If using a bot, pick one with a prepayment model — most don’t

How Yieldsforge Handles Prepayment

Our backtest engine includes a PrepaymentModel:

  1. Estimate baseline hazard λ₀ from funding stats Δ
  2. Add regime multiplier (BTC vol quintile + funding rate momentum)
  3. Simulator runs Bernoulli(P_close) per tick

All backtest results are net of prepayment — no inflated xlong nominal rates.

Live production hasn’t accumulated enough data to recalibrate λ₀ yet (Component 0 — ts_closed writes — just shipped). 30 days from now we can re-estimate from real production data.

Practical Advice

  1. Don’t single-pile xlong — prepayment concentrates here, max risk
  2. Multi-bucket naturally dampens prepayment shock (multi-bucket vs single)
  3. Heavy short bucket during storm regime — short loans chase deleverage-driven funding spikes
  4. Bot users — check for prepayment modeling — most funding bots ignore it

Disclosure: I’m the developer of Yieldsforge. Hazard rates estimated from Bitfinex public funding stats. Not investment advice.

Want to put your USDT on autopilot?

7-day free trial. No credit card required.

Start free trial