A vanilla fixed-for-floating interest rate swap (pay fixed, receive a floating reference rate (SOFR in the US, MIBOR/OIS in India)) has zero value to either counterparty at inception: nobody pays anything upfront, so the present value of the fixed leg must exactly equal the present value of the floating leg. That single fact is enough to prove something you should not simply take on faith: a par swap curve bootstraps with the identical algorithm as a par bond curve.
Here is the proof. A floating-rate note that pays exactly the reference index (no spread) and redeems at par, discounted at a curve consistent with that same index, is worth exactly its notional N at each reset date. That is a standard identity of floating-rate instruments, and at those dates it is exact rather than an approximation. That means the present value of just its coupon strip (the note's value minus its final discounted redemption) must equal N × (1 − DF(maturity)). A swap's floating leg is exactly that coupon strip (no notional exchange), so its present value is N × (1 − DF(m)). The reset-date qualifier is doing real work and is worth stating plainly. Between resets the identity does not hold, because the coupon has already been fixed off the old rate while the market has moved on, so the note trades away from par by roughly the accrued difference between that fixed rate and the current curve over the remaining stub. FI1.05 section 4.5 works the stub arithmetic in full, and it is the reason a floater carries a little duration rather than none. None of that touches the proof, because a swap's floating leg is valued at a reset date, which is precisely where the identity is exact. Setting the fixed leg's present value equal to it:
swap_rate/2 × Σ DF(t) × N = N × (1 − DF(m))
Advertisement
How does the swap equation match the par bond equation?
Divide by N and this is algebraically the same equation as the par-bond condition from the bootstrap section, with swap_rate standing exactly where the bond's coupon rate stood. The sequential solve is unchanged, line up par swap rates at 1, 2, 3, 5, 7, 10 years, interpolate the gaps, and walk out the identical recursion. (This single-curve treatment, the swap's own reference index doubling as its discount curve, is precisely what modern SOFR-OIS and equivalent INR-OIS swaps do; the older LIBOR-era practice of a separate discounting curve and forecasting curve is a historical complication this module deliberately sets aside, appropriately, as an FI1.04-and-beyond refinement.) Worked Examples 4 and 5 run this bootstrap on a synthetic SOFR curve and a synthetic INR OIS/MIBOR curve and confirm every input swap reprices to par exactly, the same way the bond curves did.