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.
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:
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.
Use coupon-period indices and include the redemption payment with the final coupon.
Differentiate each discounted payment with respect to the period yield.
Calculate both the model price and its derivative at the same trial rate before applying Newton’s formula.
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.
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.
- 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\).)
- 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\).)
- 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\).)
- 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\%\).)
- 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.)