Given: A one-year zero-coupon bond has an annual yield of $6.25\%$. A two-year zero-coupon bond has an annual yield of $7.00\%$. A three-year zero-coupon bond has an annual yield of $7.50\%$. A three- year $12\%$ annual coupon bond has a face value of $1,000.$
Find: Yield-to-maturity of this three-year $12\%$ annual coupon bond.
My solution: $PV = \cfrac{120}{1.0625}+\cfrac{120}{1.07^2}+\cfrac{1120}{1.075^3}=1119.31,$ $\ \ \ \ AV(t=3)=3*120+1000=1360. $
$1119.31(1+i)^3=1360 \implies i=6.71\%$
Correct solution: $PV = \cfrac{120}{1.0625}+\cfrac{120}{1.07^2}+\cfrac{1120}{1.075^3}=1119.31$
$1119.31 = 120\require{enclose}a_{\enclose{actuarial}{3}i}+1000v_i^3 \implies i = 7.42\%.$
The disparity between my solution and my textbook's shows me I am really missing some intuition on how bonds work. If you can provide any insights that would be great. Thanks.
You haven't taken into account when then payments are received. You are accumulating the $1191.31$ with interest for $3$ years, but you aren't adding interest to the bond payments at all. You would need to say, $$1191.31(i+1)^3=120(1+i)^2+120(1+i)+1120$$
You say in a comment that this seems to imply that you receive interest on the bond payments after receiving them. In a way it does, but not from the bond issuer. It assumes that you reinvest, the bond proceeds at the yield rate. Just as $\$120$ a year in the future is worth less than $\$120$, $\$120$ a year in the past is worth more than $\$120$.
If this assumption weren't made, the yield calculations could never be consistent.