Vanilla & asset swaps, priced in your head. After Burgess, “How to Price Swaps in Your Head”.
Units: notional N in millions · rates (r, p, s) in percentage points · spread also quotable in bp (÷100 to % points)
φDirection — receiver +1, payer −1
rFixed coupon — the swap's fixed rate
pPar rate — today's fair swap rate, this tenor
sFloat spread — Libor spread on the float leg
NNotional — in millions
TTenor — years to maturity
t̄Average life — (T+1)/2
BClean price — bond price (asset swaps)
Swap PVWhat the swap is worth today, in currency.
PV =φReceive +1 Pay −1×[rFixed Leg Coupon−pPar Swap Rate−sSpread on Float]×NNotional in Millions×TNumber of Years×10,000
Rates in % points. The 10,000 bridges % points × millions into currency.
PV01Currency gained/lost per 1 bp move — forecast (Libor) risk.
PV01 =φReceive +1 Pay −1×NNotional in Millions×TNumber of Years×100
Per basis point. Under N-in-millions this is ×100 (not ÷10,000).
DV01Total 1 bp risk: PV01 plus the OIS-discount add-on for off-par swaps.
DV01 =PV01×[1 +(rFixed Leg Coupon−pPar Swap Rate−sSpread on Float)×t̄Average Life (T+1)/2]
Here (r − p − s) is read as a decimal (e.g. 20 bp ITM = 0.002). At par the bracket = 1, so DV01 = PV01.
Asset-Swap Spread (par-par)The float spread that prices the bond-plus-swap package to par.
s =[(rFixed Leg Coupon−pPar Swap Rate)+(100−BClean Bond Price)÷TNumber of Years]×100 bp
Par-par adjustment (100−B)/T is already in % points; the trailing ×100 converts the whole spread to bp. Wide/positive = cheap bond / high credit risk; narrow/negative = rich bond / high quality.
The collapse — why A = N·T
Approx 1
Annualise (τ = 1)
→
Approx 2
Zero rates (DF = 1)
→
Therefore
Annuity A = N · T
Anchor base case1Y · €1m · 1% = €10,000Scale everything from here: ×years, ×millions, ×coupon.
Direction & sign sense-checks
Receiver benefits from falling rates → positive PV01.
Payer benefits from rising rates → negative PV01.
|DV01| > |PV01| when the swap is in the money; DV01 = PV01 at par.