How to Calculate Yield to Maturity with Coupon Rate
by
Yield to Maturity (YTM) Calculator
Estimated Yield to Maturity (YTM)
—
function calculateYTM() {
var faceValue = parseFloat(document.getElementById('bondFaceValue').value);
var marketPrice = parseFloat(document.getElementById('bondMarketPrice').value);
var couponRate = parseFloat(document.getElementById('bondCouponRate').value) / 100;
var years = parseFloat(document.getElementById('bondYearsToMaturity').value);
if (isNaN(faceValue) || isNaN(marketPrice) || isNaN(couponRate) || isNaN(years) || years <= 0) {
alert("Please enter valid positive numbers for all fields.");
return;
}
var annualCouponPayment = faceValue * couponRate;
// Approximation Formula: YTM ≈ (C + (F – P) / n) / ((F + P) / 2)
var numerator = annualCouponPayment + ((faceValue – marketPrice) / years);
var denominator = (faceValue + marketPrice) / 2;
var ytm = (numerator / denominator) * 100;
// Display Results
document.getElementById('ytm-result-box').style.display = 'block';
document.getElementById('ytmValue').innerText = ytm.toFixed(2) + "%";
var interpretation = "";
if (marketPrice < faceValue) {
interpretation = "The bond is trading at a Discount. The YTM is higher than the coupon rate because you gain value as the bond approaches its par value.";
} else if (marketPrice > faceValue) {
interpretation = "The bond is trading at a Premium. The YTM is lower than the coupon rate because the price paid exceeds the value returned at maturity.";
} else {
interpretation = "The bond is trading at Par. The YTM is equal to the coupon rate.";
}
document.getElementById('ytmInterpretation').innerHTML = interpretation;
}
How to Calculate Yield to Maturity with Coupon Rate
Yield to Maturity (YTM) is the total return anticipated on a bond if the bond is held until it matures. It is considered a long-term bond yield but is expressed as an annual rate. Calculating YTM involves accounting for the coupon payments, the purchase price, the face value, and the time remaining until maturity.
The YTM Approximation Formula
While the true YTM is calculated using an iterative process (Internal Rate of Return), the following approximation formula is widely used to estimate the yield:
YTM ≈ [C + (F – P) / n] / [(F + P) / 2]
C: Annual Coupon Payment (Face Value × Coupon Rate)
F: Face Value of the bond (usually $1,000)
P: Current Market Price of the bond
n: Number of years until maturity
Example Calculation
Imagine you purchase a bond with the following characteristics:
Face Value: $1,000
Market Price: $920 (Discounted)
Coupon Rate: 6% ($60 per year)
Years to Maturity: 5 years
Using our formula:
Calculate annual gain from discount: ($1,000 – $920) / 5 = $16
Average investment value: ($1,000 + $920) / 2 = $960
Divide return by average value: $76 / $960 = 7.92%
Why YTM Matters to Investors
Unlike the simple coupon rate, YTM gives you the "real" return. If you buy a bond at a premium (above $1,000), your YTM will be lower than the coupon rate because you will lose capital at maturity. If you buy at a discount (below $1,000), your YTM will be higher than the coupon rate because you gain capital when the bond is redeemed at par value.