Tutorials › VEE Accounting and Finance › Deriving Yield From Bond Cash Flows

VEE Accounting and Finance · Cost of Debt and Preferred Equity · Tutorial 602 of 996

Deriving Yield From Bond Cash Flows

Translate a bond’s promised annual cash flows into a present-value equation and estimate the yield that makes that equation equal to its observed price.

Intermediate 12 min read

What You'll Learn

  • Set up the present-value equation for annual coupon and principal payments.
  • Distinguish a bond’s coupon rate from the yield that equates cash flows to price.
  • Estimate yield by testing rates and interpolating between trial values.
  • Use a financial calculator to refine a yield estimate.
  • Check the direction and reasonableness of a calculated yield.

From Bond Cash Flows to Yield

A bond’s yield to maturity is not usually read directly from its coupon rate. It is the rate that makes the present value of the bond’s promised future payments equal to its current price. To derive the yield, identify the payment amounts and dates, write their present values as a function of the unknown rate, and solve the resulting equation.

The method below uses annual payments. This keeps the number of periods and the rate period consistent; semiannual yield conventions are a separate issue. In a practical financing analysis, the resulting yield can be used as an estimate of the issuer’s cost of debt, subject to the assumptions discussed below.

Definition: For a bond with current price \(P\), annual coupon payment \(C\), face value \(F\), and \(n\) years remaining, the annual yield to maturity \(y\) is the rate that satisfies
$$ P=\sum_{t=1}^{n-1}\frac{C}{(1+y)^t}+\frac{C+F}{(1+y)^n}. $$
Here, the final payment includes both the last coupon and the repayment of face value. The equation assumes the stated cash flows are paid on schedule and uses one annual effective yield for all payments.

For example, a bond with face value $1,000 and an annual coupon rate of 6% pays \(C=0.06(1{,}000)=\$60\) each year. If it has two years left, its cash flows are $60 at the end of year 1 and $1,060 at the end of year 2. The yield is the rate that discounts those payments back to the observed price.

Why the Present-Value Equation Holds

A dollar received later is worth less than a dollar received now when the relevant annual yield is positive. Under annual compounding, one dollar at the end of year \(t\) has present value \(1/(1+y)^t\) dollars. Multiplying each promised payment by this discount factor gives its present value; adding the values gives the bond’s total present value.

The yield is generally not isolated neatly by algebra when there are several payments. Numerical methods are therefore used. The present-value function also has a useful property: for positive bond cash flows, it decreases as \(y\) increases. Differentiating the sum with respect to \(y\) gives

$$ \frac{dP(y)}{dy} =-\sum_{t=1}^{n}\frac{t\,CF_t}{(1+y)^{t+1}}<0,\qquad y>-1, $$

where \(CF_t\) is the payment at time \(t\), including principal in the final payment. Each \(CF_t\) is positive, so every term in the sum before the minus sign is positive. Thus a higher yield produces a lower present value. This explains both why trial rates can bracket a solution and why a bond priced below a trial value must have a yield above that trial rate.

A Practical Numerical Procedure

A reliable calculation begins with the timeline rather than the calculator. Record the number of years remaining, the coupon paid on each date, and the final payment. Then test one or more annual yields and compare the calculated present values with the observed price.

1
Write the cash flows.
Use the coupon payment for each year before maturity and coupon plus face value at maturity.
2
Choose trial yields.
Calculate the present value at each trial rate. Because the present value falls as the rate rises, rates on either side of the target price bracket the yield.
3
Interpolate or refine.
Linear interpolation gives a useful estimate between the trial rates. A financial calculator or repeated trials can refine it.
4
Check the result.
Substitute the estimated yield into the original present-value equation and confirm that the calculated price is close to the observed price.

If \(y_L\) and \(y_H\) are lower and higher trial yields, with corresponding present values \(P_L\) and \(P_H\), linear interpolation estimates the yield for observed price \(P\) as

$$ y\approx y_L+\frac{P_L-P}{P_L-P_H}(y_H-y_L). $$

This treats the price-yield curve as a straight line between the trial points. The curve is not actually linear, so interpolation is an estimate, not an exact solution. A wider gap between trial yields generally makes the estimate less precise; refining with closer trial rates or a calculator improves it.

Worked Example: Interpolating a Three-Year Bond Yield

A hypothetical bond has face value $1,000, an annual coupon rate of 7%, three years remaining, and a price of $960 immediately after a coupon date. Coupons are paid annually. Estimate its yield to maturity by trial rates and interpolation, then check the estimate.

Method and cash flows. The annual coupon is \(C=0.07(1{,}000)=\$70\). The bond pays $70 at the end of years 1 and 2, then $1,070 at the end of year 3. Thus

$$ 960=\frac{70}{1+y}+\frac{70}{(1+y)^2}+\frac{1{,}070}{(1+y)^3}. $$

Trial at 8%. Using \(1.08^2=1.1664\) and \(1.08^3=1.259712\),

$$ P(8\%)=\frac{70}{1.08}+\frac{70}{1.1664}+\frac{1{,}070}{1.259712} =64.81+60.01+849.40=\$974.23. $$

Trial at 9%. Using \(1.09^2=1.1881\) and \(1.09^3=1.295029\),

$$ P(9\%)=\frac{70}{1.09}+\frac{70}{1.1881}+\frac{1{,}070}{1.295029} =64.22+58.92+826.23=\$949.37. $$

The observed price, $960, lies between these trial values, so the yield is between 8% and 9%. Interpolation gives

$$ y\approx 8\%+\frac{974.23-960}{974.23-949.37}(1\%) =8\%+\frac{14.23}{24.86}(1\%) \approx 8.57\%. $$

Check. Substituting 8.57% into the cash-flow equation gives a present value of approximately $959.9, close to $960. The estimated yield is therefore about 8.57% per year, rounded to two decimal places. The method avoids treating the coupon rate as the yield: because the price is below face value, the yield is above the 7% coupon rate.

Interpolation and Calculator Refinement

Interpolation is convenient when two trial yields produce prices just above and below the observed price. A financial calculator can solve the same equation directly, provided its inputs match the bond’s cash flows and timing. For an annual-payment bond, enter the number of annual periods as \(N\), the annual coupon payment as \(PMT\), face value as \(FV\), and the observed price as \(PV\). Use opposite signs for the price and future payments, because the price is paid now and the coupons and principal are received later.

The calculator’s interest-rate result is the annual yield under these inputs. A wrong period count, coupon amount, or sign can produce an incorrect answer even if the calculator is functioning properly. Always compare the result with a trial-rate calculation or substitute it into the present-value equation.

Worked Example: Interpolating and Refining a Two-Year Yield

A hypothetical two-year bond has face value $1,000, annual coupons of $60, and a market price of $981.48. Estimate its annual yield using 6% and 8% trial rates, and distinguish the interpolation estimate from a refined solution.

Method and equation. The cash flows are $60 after one year and $1,060 after two years:

$$ 981.48=\frac{60}{1+y}+\frac{1{,}060}{(1+y)^2}. $$

Trial at 6%. Since \(1.06^2=1.1236\),

$$ P(6\%)=\frac{60}{1.06}+\frac{1{,}060}{1.1236} =56.60+943.40=\$1{,}000.00. $$

Trial at 8%. Since \(1.08^2=1.1664\),

$$ P(8\%)=\frac{60}{1.08}+\frac{1{,}060}{1.1664} =55.56+908.78=\$964.34. $$

The observed price is $18.52 below the 6% trial value and $17.14 above the 8% trial value. The interpolation estimate is

$$ y\approx 6\%+\frac{1{,}000.00-981.48}{1{,}000.00-964.34}(2\%) =6\%+\frac{18.52}{35.66}(2\%) \approx 7.04\%. $$

Refinement and check. Interpolation is approximate because the price-yield curve is curved. Solving the present-value equation with a financial calculator or numerical refinement gives a yield of approximately 7.0247%, or 7.02% rounded to two decimal places. Substitution gives a price close to $981.48. Thus 7.04% is the linear interpolation estimate, while 7.02% is the refined estimate. This distinction avoids reporting interpolation as an exact solution.

Worked Example: Using a Financial Calculator and Checking the Yield

A hypothetical four-year bond has face value $1,000, an annual coupon rate of 7%, and a price of $1,045. It pays coupons annually. Estimate the annual yield using trial rates, identify suitable calculator inputs, and check the direction of the answer.

Method and equation. The annual coupon is \(0.07(1{,}000)=\$70\). The bond pays $70 at the ends of years 1, 2, and 3, followed by $1,070 at the end of year 4:

$$ 1{,}045=\frac{70}{1+y}+\frac{70}{(1+y)^2}+\frac{70}{(1+y)^3}+\frac{1{,}070}{(1+y)^4}. $$

Trial values. At 5%, the discount factors for years 1 through 4 are approximately 0.952381, 0.907029, 0.863838, and 0.822702. Therefore,

$$ P(5\%)=70(0.952381+0.907029+0.863838)+1{,}070(0.822702) =\$1{,}070.92. $$

At 6%, the corresponding factors are approximately 0.943396, 0.889996, 0.839619, and 0.792094:

$$ P(6\%)=70(0.943396+0.889996+0.839619)+1{,}070(0.792094) =\$1{,}034.65. $$

Since $1,045 lies between $1,070.92 and $1,034.65, the yield lies between 5% and 6%. Interpolation gives

$$ y\approx 5\%+\frac{1{,}070.92-1{,}045}{1{,}070.92-1{,}034.65}(1\%) \approx 5.71\%. $$

Calculator setup and check. Enter \(N=4\), \(PMT=70\), \(FV=1{,}000\), and \(PV=-1{,}045\); solving for \(I/Y\) gives approximately 5.71% per year. Substituting this rate into the four-payment equation produces a value close to $1,045. The bond trades above its $1,000 face value, so its yield should be below the 7% coupon rate. A yield near 5.71% passes this directional check.

Assumptions and Common Traps

The yield calculation is based on promised cash flows, not a forecast of every possible realized outcome. Its interpretation depends on the bond paying as promised and on the specified payment dates. If default, early redemption, changing coupons, or transaction costs matter, the simple equation does not capture those features. Also, the calculated yield is not automatically the return an investor will realize: that return depends on actual payments and, when coupons are reinvested, the rates available for reinvestment.

  • Using the coupon rate as the yield. The coupon rate determines the scheduled coupon amount; the yield is determined jointly by those cash flows, the price, and the time remaining.
  • Omitting principal at maturity. The final payment is \(C+F\), not just \(C\). Leaving out face value substantially understates the present value.
  • Discounting every payment for the same number of years. Each payment has its own period: the first coupon is discounted one year, the second two years, and so on.
  • Reversing the interpolation differences. Use the price at the lower yield minus the observed price in the numerator, and the difference between the lower- and higher-yield prices in the denominator.
  • Mixing rate and time units. An annual yield belongs with annual periods in these examples. A different payment frequency requires a consistent rate and period convention.

For example, the two-year bond in the second worked example has a 6% coupon rate, but its price of $981.48 is below par. A common mistake is to report 6% as the yield. The correction is to include both payments in the present-value equation and solve it; the refined yield is approximately 7.02%, above the coupon rate as expected for a discount bond.

Key takeaway: Deriving a bond yield means finding the annual rate that equates the observed price with the present value of every promised coupon and the principal repayment. Trial rates establish a bracket, interpolation supplies an estimate, and a calculator or numerical refinement can improve it.

Check Your Understanding

For each problem, use annual payments and report an interpolation estimate to two decimal places unless the question asks otherwise.

  1. A hypothetical two-year bond has face value $1,000, annual coupons of $40, and a price of $970. Trial values are approximately $981.41 at 5% and $945.76 at 7%. Estimate the yield by interpolation. (Answer: approximately 5.64% per year)
  2. A three-year bond has face value $1,000, annual coupons of $60, and a price of $1,025. Its present values at 5% and 6% are approximately $1,027.23 and $1,000.00. Estimate the yield by interpolation and state whether it is above or below the coupon rate. (Answer: approximately 5.08% per year; below the 6% coupon rate)
  3. A hypothetical four-year bond has face value $1,000, an annual coupon rate of 7%, and a price of $1,045. State the annual coupon and the four annual cash flows, then give the yield estimate from the trial values $1,070.92 at 5% and $1,034.65 at 6%. (Answer: $70; $70, $70, $70, and $1,070; approximately 5.71% per year)
  4. A two-year bond has face value $1,000, annual coupons of $50, and a price of $1,010. Its trial prices are approximately $1,018.86 at 4% and $1,000.00 at 5%. Estimate the yield by interpolation and say whether it should be above or below the coupon rate. (Answer: approximately 4.47% per year; below the 5% coupon rate)
  5. A bond has annual coupons and positive promised payments. Explain why increasing the trial yield decreases its calculated present value, and identify the direction of the yield-price relationship. (Answer: each payment is divided by a larger \((1+y)^t\), so its present value falls; yield and price move in opposite directions.)
Clinical Biostats