Securitized RMBS: Tranche Waterfall Modeling & Convexity Hedging in Fixed Income Portfolios

Residential Mortgage-Backed Securities (RMBS) represent a cornerstone of global fixed income capital markets, transforming illiquid underlying mortgage loan pools into structured, tradeable bonds. Structuring institutional RMBS requires rigorous mathematical cash flow waterfall modeling (Sequential Pay vs Planned Amortization Class / PAC tranches), constant prepayment rate (CPR) forecasting, and negative convexity hedging via interest rate swaptions.

The Mechanics of RMBS Cash Flow Waterfalls & Prepayment Sensitivity

How principal and interest cash flows cascade through senior and subordinated tranches:

📊 The Negative Convexity Invariant

Unlike standard fixed-rate corporate bonds that exhibit positive price-yield convexity, mortgages contain embedded borrower prepayment options. When benchmark interest rates decline, mortgagors refinance, compressing mortgage duration and capping bond price appreciation ($-\frac{d^2P}{dy^2} < 0$). Managing this requires dynamic delta-gamma hedging via receiver swaptions.

RMBS Capital Structure Tranche Hierarchy

Tranche Class Credit Rating Cash Flow Priority Prepayment & Extension Risk
Senior Class A (PAC / Sequentials)AAA / AaaFirst priority principal & interestProtected via support tranches
Mezzanine Class M1 / M2AA to BBBSubordinated to Senior Class AModerate credit & duration volatility
Subordinated / Equity B TrancheUnrated / BBFirst-loss position (Residual yield)High default & extension exposure

Single Monthly Mortality (SMM) & CPR Prepayment Model in TypeScript

Simulating pool amortization and monthly principal prepayments:

export interface MortgagePoolParams {
  startingBalance: number;
  wacRate: number; // Weighted Average Coupon
  termMonths: number;
  annualCpr: number; // Constant Prepayment Rate (e.g. 0.08 for 8% CPR)
}

export function calculateMonthlyPoolAmortization(params: MortgagePoolParams): { scheduledPrincipal: number; prepaymentPrincipal: number; remainingBalance: number } {
  const monthlyRate = params.wacRate / 12;
  const smm = 1 - Math.pow(1 - params.annualCpr, 1 / 12);
  
  const scheduledPayment = params.startingBalance * (monthlyRate * Math.pow(1 + monthlyRate, params.termMonths)) / (Math.pow(1 + monthlyRate, params.termMonths) - 1);
  const scheduledInterest = params.startingBalance * monthlyRate;
  const scheduledPrincipal = scheduledPayment - scheduledInterest;
  
  const prepayableBalance = params.startingBalance - scheduledPrincipal;
  const prepaymentPrincipal = prepayableBalance * smm;
  const remainingBalance = prepayableBalance - prepaymentPrincipal;

  return { scheduledPrincipal, prepaymentPrincipal, remainingBalance };
}

Structure Your Fixed Income & Mortgage Portfolios

Hedge interest rate sensitivity and optimize credit yields. Read our guide on Syndicated Mezzanine Debt & Intercreditor Deeds, explore commercial rollover physics on CarInjuryAttorney Forensics, review real-time ad bidding on AffiliatePartners RTB Engines, or consult with our structured credit team.