How to Calculate Forward Rate Agreement

Forward Rate Agreement (FRA) Calculator

360 Days 365 Days

Settlement Details

Settlement Amount:

function calculateFRAPayment() { var P = parseFloat(document.getElementById('notionalPrincipal').value); var R = parseFloat(document.getElementById('contractRate').value) / 100; var L = parseFloat(document.getElementById('referenceRate').value) / 100; var d = parseFloat(document.getElementById('daysInPeriod').value); var B = parseFloat(document.getElementById('dayCountBasis').value); if (isNaN(P) || isNaN(R) || isNaN(L) || isNaN(d)) { alert("Please fill in all fields with valid numbers."); return; } // Formula: Payment = [ (L – R) * P * (d/B) ] / [ 1 + (L * (d/B)) ] var numerator = (L – R) * P * (d / B); var denominator = 1 + (L * (d / B)); var settlement = numerator / denominator; var resultDiv = document.getElementById('fraResult'); var amountSpan = document.getElementById('settlementAmount'); var textPara = document.getElementById('directionText'); resultDiv.style.display = "block"; amountSpan.innerText = settlement.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); if (settlement > 0) { textPara.innerText = "The reference rate is higher than the contract rate. The seller pays the buyer."; amountSpan.style.color = "#2e7d32"; } else if (settlement < 0) { textPara.innerText = "The contract rate is higher than the reference rate. The buyer pays the seller."; amountSpan.innerText = Math.abs(settlement).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); amountSpan.style.color = "#c62828"; } else { textPara.innerText = "The rates are equal. No settlement payment is required."; amountSpan.style.color = "#333"; } }

Understanding Forward Rate Agreement (FRA) Calculations

A Forward Rate Agreement (FRA) is a cash-settled over-the-counter (OTC) derivative contract between two parties to exchange an interest rate differential on a notional principal amount. It allows institutions and corporations to hedge against future interest rate volatility.

The FRA Calculation Formula

Because the settlement occurs at the beginning of the contract period (the "settlement date"), the payment must be discounted back to the present value. The formula used is:

Settlement Payment = [ (L – R) × P × (d / B) ] / [ 1 + (L × (d / B)) ]
  • L: The Reference Rate (e.g., LIBOR, EURIBOR, or SOFR) observed on the settlement date.
  • R: The Fixed Contract Rate agreed upon at the start of the FRA.
  • P: The Notional Principal (the theoretical amount the rates are applied to).
  • d: The number of days in the contract period (the duration of the underlying loan/deposit).
  • B: The Day Count Convention (commonly 360 for USD/EUR or 365 for GBP).

Example Calculation

Imagine a company enters into a "3×9" FRA (a 6-month period starting 3 months from now) with the following terms:

  • Notional Principal: 1,000,000
  • Contract Rate: 4.00%
  • Days in Period: 180
  • Day Count Basis: 360

At the settlement date (3 months later), the 6-month Reference Rate (L) is 5.00%. The calculation would be:

  1. Interest Difference: (0.05 – 0.04) = 0.01
  2. Nominal Payment: 0.01 × 1,000,000 × (180 / 360) = 5,000
  3. Discount Factor: 1 + (0.05 × (180 / 360)) = 1.025
  4. Final Settlement: 5,000 / 1.025 = 4,878.05

Since the market rate (5.00%) is higher than the agreed rate (4.00%), the seller of the FRA pays the buyer 4,878.05.

Why Use an FRA?

FRAs are primarily used by borrowers to lock in a future interest rate if they expect rates to rise, or by lenders to protect against falling rates. Since it is cash-settled based on the rate differential, no principal actually changes hands, making it a highly capital-efficient hedging tool.

Leave a Comment