Small Group Tutorials

Here to help students catch up, keep up, and move ahead. Book a consultation here.

How Collateralized Swap Multi-Curve Algorithms Separate OIS Discounting from Forward Projection: SOFR Curves, Basis, Bootstrapping, CSA Currency and Repricing Checks

Reader question: Why does a modern interest-rate swap engine need more than one yield curve? If a three-month floating rate and an overnight rate are both “interest rates,” why not build one curve and use it for everything?

Because two different jobs are being performed:

  • projection: estimate the future floating coupons specified by the contract;
  • discounting: convert those future cash flows into present value under the relevant collateral/funding convention.

Before the global financial crisis, many systems treated one interbank curve as if it could do both jobs. Persistent basis spreads and widespread collateralisation broke that simplification. Modern swap valuation therefore uses a multi-curve framework: an overnight-indexed-swap or collateral curve for discounting, plus one or more index-specific forward curves for projecting contractual floating rates.

The important lesson is architectural:

one cash-flow stream can depend on one curve for amount and another curve for present value.

What this page owns — and what it does not

This page owns:

market quotes + collateral convention + floating index → discount curve + projection curve(s) → swap cash flows and present value.

It does not replace the general yield-curve bootstrapping page, which owns the generic term-structure machinery; SOFR Index compounding, which owns historical compounded overnight-rate calculation; or day-count algorithms, which own accrual fractions.

This is mathematical derivatives education. It is not a recommendation to enter an interest-rate swap or any other financial contract.

The single-curve world

In a simplified single-curve model, one term structure supplies both:

  • discount factors D(0,T);
  • forward rates derived from those same discount factors.

For a tenor from T1 to T2 with accrual fraction δ, a simple forward-rate relationship is:

F(0;T1,T2) = [D(0,T1)/D(0,T2) − 1] / δ.

This is elegant because projection and discounting are mathematically coupled.

But the identity assumes the same curve correctly represents both the relevant floating-rate economics and discounting.

Why the single-curve assumption failed

After 2007, spreads between different unsecured interbank tenors and between unsecured rates and overnight collateral rates became persistent and economically material.

A three-month unsecured benchmark could no longer be treated as a mechanically compounded sequence of overnight rates from one universal curve. Basis swaps between tenors traded at nonzero spreads.

At the same time, collateral agreements made the remuneration rate on collateral economically relevant to valuation.

The market therefore needed at least two logical objects:

discount curve ≠ forward projection curve.

Collateral changes the discounting question

For a perfectly collateralized derivative under standard assumptions, the collateral remuneration rate becomes central to the discounting economics.

For many centrally cleared USD interest-rate derivatives, the market transitioned to SOFR discounting in October 2020. CME completed its USD interest-rate-swap SOFR discounting transition on 16 October 2020, and LCH transitioned more than one million contracts with about $120 trillion notional on 19 October 2020.

The transition mattered because changing the discount curve changes present value even if contractual cash flows are unchanged.

A discount-curve change can create value without changing the trade

Suppose a swap has future net cash flows CFi. Present value is:

PV = Σ D(0,Ti) × CFi.

If the market changes from one discount curve to another:

Dold(0,T) → Dnew(0,T),

the contractual cash flows do not change, but PV generally does.

This is why the 2020 clearing-house transitions required cash compensation and/or risk compensation: a valuation convention changed across existing portfolios.

The multi-curve swap equation

Consider a fixed-for-floating swap with notional N.

The fixed leg is:

PVfixed = N × K × Σ αiDd(0,Ti),

where:

  • K is the fixed coupon;
  • αi are fixed-leg accrual fractions;
  • Dd is the discount curve.

The projected floating leg is:

PVfloat = N × Σ δjFpjDd(0,Tj),

where:

  • Fpj comes from the appropriate projection curve;
  • δj is the floating accrual fraction;
  • the same discount curve Dd discounts the resulting cash payment under the chosen collateral convention.

The key superscripts are p for projection and d for discounting. They need not refer to the same term structure.

Par swap rate in the multi-curve framework

At inception, a par swap has approximately zero value:

PVfloat − PVfixed = 0.

Therefore:

Kpar = [Σ δjFpjDd(0,Tj)] / [Σ αiDd(0,Ti)].

This formula shows exactly why a forward curve and discount curve can both affect the market par rate.

OIS projection is itself a compounding problem

An overnight indexed swap does not usually pay one overnight fixing. Its floating coupon represents the compounded effect of many overnight fixings over an accrual period.

For a realized sequence of daily overnight rates rk applying for nk calendar days on a 360-day money-market basis, the compounded growth factor is of the form:

G = ∏[1 + rknk/360].

The New York Fed’s SOFR Index uses this same daily compounding logic, with a prior business day’s SOFR applying across intervening non-business days.

Historical compounding and future projection should remain separate: known fixings are observed data; future fixings are implied by the calibrated curve.

Known fixings plus projected fixings

Consider a coupon period that has already partly elapsed.

The floating coupon can contain:

  • realized overnight fixings for past days;
  • projected overnight rates for future days.

A correct engine splices the two without re-projecting already known rates or freezing future rates to the last observed fixing.

This makes valuation date and fixing publication calendar part of the model state.

Step 1: choose the collateral discounting curve

The discount curve depends on the collateral/funding convention of the trade.

For a standard cleared USD swap under SOFR price-alignment and discounting conventions, SOFR-based discounting is the natural market convention. For bilateral trades, the Credit Support Annex can specify eligible collateral and remuneration terms that alter the relevant discounting economics.

A valuation engine should therefore ask:

What collateral currency and remuneration convention governs this trade?

It should not ask only:

What currency are the swap cash flows?

Collateral currency can matter

A USD cash flow collateralized in USD under one remuneration convention need not have the same present value as the same cash flow collateralized under a different currency or collateral option.

Cross-currency collateral introduces additional basis and FX relationships. If the CSA allows multiple collateral currencies, collateral optionality can itself have value.

Therefore a single hard-coded “USD discount curve” can be insufficient for all USD derivatives.

Step 2: bootstrap the overnight discount curve

A curve builder selects liquid instruments whose market prices or par rates constrain discount factors. Depending on maturity and market structure, these can include overnight rates, short OIS instruments, futures and longer OIS swaps.

For each calibration instrument q, solve:

ModelPrice(curve; q) − MarketPrice(q) = 0.

Or, for quoted par rates:

ModelParRate(curve; q) − MarketQuote(q) = 0.

Bootstrapping solves sequentially where possible; global solvers can calibrate several nodes together.

Step 3: build the projection curve

For a non-overnight floating index, the projection curve is calibrated from instruments sensitive to that index, such as relevant futures, forward-rate agreements, swaps and basis swaps.

The OIS discount curve is held fixed while projection-curve nodes are solved so that the model reproduces the market quotes.

Conceptually:

projection curve = curve that makes index-linked instruments reprice when cash flows are discounted on the chosen collateral curve.

Basis swaps connect the curves

A basis swap exchanges one floating index against another plus or minus a spread.

If one universal curve could project every tenor perfectly, the market basis spread would collapse toward zero under idealized assumptions.

Persistent nonzero basis spreads are therefore direct evidence that the market distinguishes the forward economics of different indices or tenors.

Basis quotes become calibration equations linking multiple projection curves.

A stylized basis equation

Suppose leg A pays index A and leg B pays index B plus spread s. At par:

PV(A) = PV(B + s).

The solved spread is approximately:

s = [PV(A) − PV(B)] / Annuity(B),

where all cash flows are discounted consistently with the collateral convention.

In calibration, the observed s constrains the relative shape of the two projection curves.

Curve bootstrapping is a coupled system

In a mature multi-curve framework, one curve cannot always be calibrated in isolation. A projection curve depends on the discount curve used to value its instruments, while basis instruments connect different projection curves.

The dependency graph may look like:

overnight discount curve → short forward curve → longer-tenor curve → basis-linked curves.

The exact order depends on the market and instrument set.

Interpolation is part of the model

Market quotes exist only at discrete maturities. The engine must interpolate between solved curve nodes.

Possible interpolation variables include:

  • zero rates;
  • discount factors;
  • instantaneous forwards;
  • log discount factors.

Two interpolation methods can reproduce every calibration quote yet generate different off-market forwards and risk sensitivities between nodes.

Therefore “the curve” includes both nodes and interpolation rule.

No-arbitrage-style diagnostics

A useful discount curve should satisfy basic numerical and economic sanity tests. Under ordinary positive-rate conditions, discount factors generally decline with maturity. But negative rates can produce discount factors above one over some intervals, so monotonicity must be interpreted carefully.

More robust diagnostics include:

  • positive discount factors;
  • finite forward rates;
  • no unexplained discontinuities at instrument boundaries;
  • exact or tolerance-level repricing of calibration instruments;
  • basis quotes reproduced simultaneously;
  • stable results under small quote perturbations.

Negative rates are not automatically a curve failure

Modern rate markets have experienced negative policy and money-market rates. A curve engine that hard-codes “all zero rates must be positive” can reject valid market states.

The correct falsifier is not the sign of a rate by itself. It is inconsistency with observed instruments, arbitrage relationships or the model’s defined domain.

Futures require convexity awareness

An exchange-traded futures rate is not always identical to the economically corresponding forward rate because daily margining changes the cash-flow path and can create a convexity adjustment.

A curve builder that inserts futures quotes as forwards without the chosen adjustment can distort intermediate curve nodes.

The materiality depends on tenor, volatility and model assumptions.

SOFR Index is a verification tool, not a forward curve

The New York Fed SOFR Index measures historical cumulative compounding of observed SOFR. It is excellent for verifying realized compounded rates between published dates.

It does not tell the engine what SOFR will be next year.

Future overnight rates must be implied from market instruments and the calibrated term structure.

A simple swap valuation example

Suppose a one-year quarterly-pay floating swap has projected forward coupons:

  • 4.10%;
  • 4.00%;
  • 3.90%;
  • 3.80%.

Assume each period has δ = 0.25 and OIS discount factors:

  • 0.990;
  • 0.980;
  • 0.970;
  • 0.960.

Ignoring notional scaling, projected floating PV is:

Σ 0.25 × Fj × Dj.

Fixed-leg annuity is:

A = Σ 0.25 × Dj.

The par fixed rate is:

K = PVfloat/A.

If the discount factors change while projected forwards stay the same, the par rate and PV change. If projection forwards change while discount factors stay the same, they also change. That is the multi-curve separation in one calculation.

Inputs and outputs

A robust multi-curve engine can require:

  • valuation date and market-data timestamp;
  • overnight-index and swap conventions;
  • OIS, futures, FRA, swap and basis quotes;
  • cash-flow calendars and day-count conventions;
  • historical fixings;
  • collateral currency and CSA remuneration convention;
  • curve instrument selection and node dates;
  • interpolation method;
  • convexity-adjustment method where required;
  • solver tolerances and bootstrapping order.

Outputs can include discount factors, zero rates, instantaneous or period forwards, basis spreads, par swap rates, instrument residuals, present values and curve-node sensitivities.

Evidence polarity: what supports confidence?

Evidence for a reliable multi-curve build includes calibration instruments repriced to market within tolerance, OIS cash flows using the correct overnight compounding convention, historical SOFR segments reconciling to New York Fed data, basis swaps repricing simultaneously, curve risk moving smoothly across neighboring nodes, and valuation changes explainable from quote, fixing or collateral changes.

Evidence against confidence includes one curve used indiscriminately for every index, historical fixings reprojected, cleared USD swaps discounted on an obsolete convention without explicit reason, basis instruments showing persistent residuals, large spikes in forwards between nearby nodes, or the same trade receiving a different PV because the curve-calibration order changed.

Counterexample: one curve can fit one swap set and still be wrong for basis

A single curve may exactly fit one family of swaps. If it cannot simultaneously reproduce observed basis spreads between indices, it is missing information that the market prices.

Perfect repricing of one instrument family is not proof of a complete term-structure model.

Counterexample: OIS discounting does not mean every floating coupon is OIS

A legacy or term-index swap can be discounted on an overnight collateral curve while its floating coupons are projected from a different index-specific curve.

The discount index and contractual floating index solve different jobs.

Counterexample: SOFR discounting is not universal for every USD trade

Cleared USD swaps commonly use SOFR-based discounting under their clearing conventions. A bilateral derivative with different collateral terms can require different economics.

The trade’s CSA matters.

Counterexample: exact calibration can hide unstable interpolation

Two interpolation schemes can both fit every quoted instrument exactly. One may create oscillating forward rates and unstable Greeks between nodes.

Calibration residuals are necessary but not sufficient diagnostics.

Weak links in implementation

Curve-role confusion. Discount and projection curves are swapped.

Index mismatch. A coupon references one benchmark but is projected from another.

Fixing-date error. Known rates are treated as future projections.

Calendar mismatch. OIS compounding weights weekends or holidays incorrectly.

CSA omission. All trades in a currency receive one discount curve regardless of collateral terms.

Bootstrap dependency error. A projection curve calibrates against a stale discount curve.

Basis omission. Multiple projection curves are built independently without repricing basis instruments.

Futures-as-forward error. Convexity treatment is omitted where material.

Interpolation instability. Curve nodes fit but forwards oscillate between them.

quote-side/unit error. Rates arrive in percent but are interpreted as decimals, or bid/ask sides are mixed.

Diagnostics: how to test the algorithm

  • calibration replay: every curve-building instrument reprices to its market quote within tolerance.
  • single-curve collapse test: set basis spreads artificially to zero and confirm the multi-curve system converges toward the expected simplified structure where assumptions permit.
  • fixing splice test: value a coupon before and after a fixing becomes known; only the relevant projected segment should become realized.
  • SOFR Index test: reproduce a historical compounded SOFR period from New York Fed Index values or daily rates.
  • basis test: all basis-swap calibration quotes reprice simultaneously.
  • CSA test: change collateral remuneration assumptions and verify the discount curve/PV changes without silently changing contractual cash flows.
  • node shock test: bump one quote and inspect local and neighboring curve sensitivities.
  • interpolation test: inspect zero and forward rates between all nodes for unexplained oscillations.
  • date test: cross month-end, year-end and holiday boundaries.
  • independent price test: price a plain swap using a second implementation from exported discount factors and forwards.

What would falsify confidence?

Confidence should be withdrawn if market calibration instruments do not reprice; if basis quotes remain unexplained; if known fixings are projected; if collateral convention has no effect on discounting when it should; if changing curve-build order changes final results materially; or if small quote bumps cause discontinuous, nonlocal valuation jumps without an economic reason.

Alternatives and limits

A single-curve model remains useful for classroom intuition and markets where basis/collateral effects are intentionally ignored. A multi-curve framework is more realistic for modern collateralized rate markets but introduces more curves, more market data, more interpolation choices and more model risk.

Multi-curve bootstrapping is still a deterministic calibration framework. It does not by itself specify the stochastic joint dynamics needed for exotic option pricing, XVA simulation or future exposure. Those require additional models.

How this connects to the surrounding knowledge estate

The generic numerical backbone is the yield-curve algorithm. Historical overnight compounding is checked against SOFR Index algorithms. Date generation and accruals depend on the financial date engine and day-count fractions. Curve-node Greeks can be accelerated by adjoint algorithmic differentiation.

Verification and update triggers

Preserve market-data timestamps, benchmark definitions, fixing history, collateral/CSA terms, curve-instrument set, interpolation, solver configuration and calibration residuals. Revalidate after benchmark transitions, clearing-house discounting changes, new collateral terms, instrument-liquidity changes, holiday-calendar changes or unexplained basis/repricing breaks.

Primary and high-quality references

Educational boundary: This article explains curve construction and collateralized swap valuation. It does not recommend any derivative, hedge or trading strategy and does not provide personalized financial advice.

Discover more from Bukit Timah Tutor

Subscribe now to keep reading and get access to the full archive.

Continue reading