Tutorials › Exam FM - Financial Mathematics › Newton’s Method for Bond Yield

Exam FM · Bond Pricing and Yield · Tutorial 354 of 998

Newton's Method for Bond Yield

Use the bond price equation and its derivative to calculate and check Newton yield estimates, with careful attention to rate periods and convergence.

Intermediate 12 min read

What You'll Learn

  • Set up a bond price function from its dated cash flows and observed price.
  • Derive the yield derivative by differentiating each discounted payment.
  • Apply Newton’s update step and interpret its sign.
  • Check an estimate by repricing the bond and examining the residual.
  • Distinguish a coupon-period yield from a nominal annual yield.
  • Recognize poor starting values and updates that leave the valid rate domain.

Why Use Newton’s Method for Bond Yield?

A bond’s price is determined by discounting its future payments at the yield per coupon period. When the price is known but the yield is not, the yield must be estimated by solving an equation. Newton’s method uses the difference between the calculated and observed prices, together with the slope of the price function, to improve an initial yield estimate.

The method is useful because each update can be calculated directly from the bond’s cash flows. It is not a guarantee of success: a poor starting value can produce an unreliable step, so every estimate should be checked by substituting it back into the price equation. The methods here apply to bonds valued on a coupon date with regular coupon periods. A between-coupon settlement requires the appropriate accrued-interest and fractional-period pricing setup.

Definition: Let \(C_k\) be the bond payment at the end of coupon period \(k\), for \(k=1,\ldots,n\). Let \(P_{\mathrm{obs}}\) be the observed price and let \(r\) be the yield per coupon period. For \(r>-1\), the model price is $$ P(r)=\sum_{k=1}^{n} C_k(1+r)^{-k}. $$ The yield estimate is a value of \(r\) satisfying \(P(r)=P_{\mathrm{obs}}\). The rate \(r\) is a coupon-period rate; its annual interpretation depends on the coupon frequency and the quoted yield convention.

Deriving the Newton Update

Define the price error, or residual, at a trial yield \(r\) by \(f(r)=P(r)-P_{\mathrm{obs}}\). A root of \(f\) is the desired yield. Newton’s method approximates the curve near a current estimate \(r_j\) by its tangent line, then takes the point where that line meets zero as the next estimate.

For each payment, differentiating \(C_k(1+r)^{-k}\) with respect to \(r\) gives \(-kC_k(1+r)^{-k-1}\). Adding these derivatives gives the slope of the price function. The tangent-line approximation is \(f(r_j)+f'(r_j)(r-r_j)=0\). Solving this linear equation for \(r\) produces the update:

$$ P'(r)=-\sum_{k=1}^{n}\frac{kC_k}{(1+r)^{k+1}}, \qquad r_{j+1}=r_j-\frac{P(r_j)-P_{\mathrm{obs}}}{P'(r_j)}. $$

For a conventional bond with positive payments, every term in \(P'(r)\) is negative when \(r>-1\), so \(P'(r)<0\). Thus, if the trial yield gives a price above the observed price, the update raises the yield; if it gives a price below the observed price, the update lowers the yield. The derivative has units of price per unit change in the period rate, which is why the price residual divided by the derivative is a rate adjustment.

1
Write the cash flows and price equation.
Use coupon-period indices and include the redemption payment with the final coupon.
2
Differentiate the price equation.
Differentiate each discounted payment with respect to the period yield.
3
Choose a starting yield and update.
Calculate both the model price and its derivative at the same trial rate before applying Newton’s formula.
4
Check the new estimate.
Reprice at the updated rate. A smaller absolute residual indicates progress; continue updating if greater accuracy is needed.

Worked Applications

Worked Example: A Two-Year Annual-Coupon Bond

A hypothetical bond pays $60 at the end of each year for two years and repays $1,000 with its second coupon. Its observed price is $1,000. Starting with an annual yield estimate of 5%, calculate one Newton update and check the resulting price. Assume annual coupon periods and positive cash flows.

Method and equation. The payments are $60 at time 1 and $1,060 at time 2, so $$ P(r)=\frac{60}{1+r}+\frac{1060}{(1+r)^2}, \qquad P'(r)=-\frac{60}{(1+r)^2}-\frac{2120}{(1+r)^3}. $$

At \(r_0=0.05\), the price is $$ P(0.05)=\frac{60}{1.05}+\frac{1060}{1.05^2} =57.142857+961.451247 =1018.594104. $$

The derivative at the same trial yield is $$ P'(0.05)=-\frac{60}{1.05^2}-\frac{2120}{1.05^3} =-54.421769-1831.335568 =-1885.757337. $$

The price residual is \(1018.594104-1000=18.594104\). Therefore, $$ r_1=0.05-\frac{18.594104}{-1885.757337} \approx 0.0598603. $$ The first updated annual yield estimate is about 5.986%.

Check. Substituting \(r_1\approx0.0598603\) into the price equation gives a price of approximately $1,000.26. The remaining residual is about $0.26, much smaller than the initial $18.59. The exact yield is 6% because \(60/1.06+1060/1.06^2=1000\); one more Newton update would move the estimate very close to 6%.

Common mistake avoided: The update is not 6.000% after one step. Newton’s tangent approximation gives \(r_1\approx0.05986\); it does not generally jump directly to the exact root.

Worked Example: Updating a Two-Payment Bond Yield

A hypothetical two-year annual-coupon bond pays $40 at the end of year 1 and $1,040 at the end of year 2. Its observed price is $1,000. Starting at 3%, calculate one Newton update and check it. Assume the stated annual rate is the yield per annual coupon period.

Method. The price function and its derivative are $$ P(r)=\frac{40}{1+r}+\frac{1040}{(1+r)^2}, \qquad P'(r)=-\frac{40}{(1+r)^2}-\frac{2080}{(1+r)^3}. $$

At \(r_0=0.03\), $$ P(0.03)=\frac{40}{1.03}+\frac{1040}{1.03^2} =38.834951+980.299745 =1019.134696. $$ The derivative is $$ P'(0.03)=-\frac{40}{1.03^2}-\frac{2080}{1.03^3} =-37.703339-1903.4951 \approx -1941.1984. $$

The residual is \(19.134696\), so the update is $$ r_1=0.03-\frac{19.134696}{-1941.1984} \approx 0.0398572. $$ This gives a first estimate of about 3.986% per year.

Check. At \(r=0.04\), the price is \(40/1.04+1040/1.04^2=38.461538+961.538462=1000\). Since the updated estimate \(0.0398572\) is just below 4%, its calculated price should be just above $1,000; substitution gives approximately $1,000.27. This is consistent with the direction and size of the update.

Common mistake avoided: Keep the redemption payment in the second cash flow: it is $1,040, not $1,000. Also evaluate the derivative using \(1.03^2\) and \(1.03^3\), with the appropriate period exponent.

Worked Example: A Semiannual Yield Estimate

A hypothetical bond pays a $30 coupon every six months for one year and repays $1,000 with the second coupon. Its observed price is $1,000. Starting at a 2% yield per half-year, calculate one Newton update. Then express the updated estimate as a nominal annual yield compounded semiannually. Assume two regular coupon periods.

Method. Use the half-year yield \(r\), not an annual rate, in the two-period price equation: $$ P(r)=\frac{30}{1+r}+\frac{1030}{(1+r)^2}, \qquad P'(r)=-\frac{30}{(1+r)^2}-\frac{2060}{(1+r)^3}. $$

At \(r_0=0.02\), $$ P(0.02)=\frac{30}{1.02}+\frac{1030}{1.02^2} =29.411765+990.003845 =1019.415609. $$ The derivative is $$ P'(0.02)=-\frac{30}{1.02^2}-\frac{2060}{1.02^3} \approx -28.8351-1941.1833 =-1970.0184. $$

The residual is \(19.415609\). Thus, $$ r_1=0.02-\frac{19.415609}{-1970.0184} \approx 0.0298556. $$ The updated half-year yield is about 2.986%. The corresponding nominal annual yield compounded semiannually is \(2r_1\approx0.0597112\), or 5.971%.

Check. At a half-year yield of 3%, the price is \(30/1.03+1030/1.03^2=29.126214+970.873786=1000\). The update is slightly below 3%, so its price should be slightly above par; substitution gives approximately $1,000.28. The residual has fallen substantially from $19.42.

Common mistake avoided: Do not insert 5.971% directly into this two-period equation. The equation uses the half-year rate \(r\); the nominal annual quote is obtained only after solving, by multiplying the period rate by two.

Interpreting and Checking the Result

Newton’s method is a local approximation. It usually works well when the starting value is reasonably close to the yield and the slope is not close to zero. For conventional bonds with positive payments and \(r>-1\), the price function is decreasing, which gives a useful direction check. A price above the observed price calls for a higher yield; a price below it calls for a lower yield.

However, the next estimate need not lie between the starting estimate and the true yield. A large step can even take the rate to \(r\leq -1\), where the discount factors are not valid under this model. If that happens, do not continue using the invalid value. Choose a more suitable starting estimate or use a bracketing approach to keep the search within a valid interval. In practice, it is also sensible to retain several digits during iterations and round only the reported yield.

A sound solution reports the period convention, the price equation, the derivative, the starting value, and the updated estimate. Checking the price at the updated yield detects common errors such as omitting the final redemption amount, using a coupon-period count inconsistent with the rate, or reversing the sign in Newton’s formula. Newton’s method is aligned with the SOA Exam FM (Financial Mathematics) syllabus as a numerical way to solve the bond price equation.

Key takeaway: The Newton update is the current yield minus the price residual divided by the price derivative. Calculate both at the same trial yield, preserve the coupon-period units, and verify each update by repricing the bond.

Check Your Understanding

For each problem, use the stated coupon-period rate, carry enough digits through the update, and check whether the update direction is consistent with the price residual.

  1. A hypothetical one-year bond pays $500 at maturity and has an observed price of $480. Starting at \(r_0=0.03\), find one Newton update using \(P(r)=500/(1+r)\). (Answer: \(P(0.03)\approx485.4369\), \(P'(0.03)\approx-471.298\), and \(r_1\approx0.04154\).)
  2. A hypothetical two-year annual bond pays $40 at the end of each year, with the second payment including $1,000 redemption. Its observed price is $1,000 and its starting yield is 3%. Write the derivative and calculate the first update. (Answer: \(P'(r)=-40/(1+r)^2-2080/(1+r)^3\); \(r_1\approx0.03986\).)
  3. A two-year zero-coupon bond with redemption value $1,000 has observed price $900. Starting at \(r_0=0.04\), calculate the model price, derivative, and one Newton update using annual periods. (Answer: \(P(0.04)\approx924.5562\), \(P'(0.04)\approx-1777.9927\), and \(r_1\approx0.05381\).)
  4. A hypothetical bond has cash flows of $30 after each of two half-year periods, with $1,000 redemption added to the second payment. Its price is $1,000. Starting at a half-year yield of 2%, find one update and state the corresponding nominal annual yield compounded semiannually. (Answer: \(r_1\approx0.02986\) per half-year; nominal annual yield \(\approx5.971\%\).)
  5. For a conventional bond with positive payments, explain how the sign of \(P'(r)\) determines whether the Newton update raises or lowers the yield when the calculated price exceeds the observed price. (Answer: \(P'(r)<0\); a positive price residual divided by a negative derivative is negative, so subtracting that quantity raises the next yield.)
Clinical Biostats