# If I have the present value of an amortizing bond's cashflows, how do I figure out price?

Say that I correctly compute the sum of cash flows of a given bond. How does this relate to the quoted price that most people understand? IE, based on the sum of cashflows I derive a PV of 5,000,000 but the bond actually trades at 102. How would I either get there using the sum of CFs or recalculate in a similar way using discount rates?

To clarify, how do I go from the DCF to a percentage of par?

• I think this question is non-trivial enough to deserve not to be closed. Oct 14, 2020 at 16:52
• Unless I am missing something, you merely compute your cashflows by assuming a notional equal to 100. Oct 16, 2020 at 10:21

The price of most (not all) bonds is quoted as a percentage of face value (par).

For most amortizing bonds that have already amortized, the percentage is of the face value now, after amortizations, not the initial face value.

(Bonds that are quoted / trading dirty / flat / on proceeds are different and I won't go there.)

Suppose, for concreteness, than some example bond

• had face value of USD 1,000 when it was issued (not a very important number);

• matures in exactly 5 years;

• has already amortized 1/3, so the remaining factor is only 2/3; is scheduled to amortize another 1/3 in 2 years, and pay the last 1/3 of the principal at maturity.

• pays 4% coupon annually (once a year);

• if you trade today (usually T+1 to T+3 settlement), then the accrued interest on settlement date is 1% (about 3 months worth, which is very unlikely if the next coupon is in exactly 1 year, but we want to show the clear difference between clean and dirty prices).

If the quoted clean price is given as 102 (the % is implied) and the accrued is 1, then the dirty price is 102 + 1=103%.

If you buy USD 1,000,000 face value at the (clean) price of 102% (the % is implied), then you pay net USD 1,000,000 * 2/3 * 103% = USD 686,666.67 and receive USD 1,000,000 / USD 1,000 = 1,000 bonds whose factor is 2/3. Your trade ticket should show that you've paid USD 1,000,000 * 2/3 * 102% = USD 680,000 for 666,666.67 of principal and USD 1,000,000 * 2/3 * 1% = 6,666.67 for the accrued interest (AI).

Every year you receive coupon = USD 1,000,000 * 4% * factor. It was USD 40,000 until the first amortization, USD 26,666.67 until the second amortization, and USD 13,333.33 until maturity. Note how the coupon rate in % is unchanged, but because the remaining principal decreases, so do coupon amounts.

The remaining cash flows of your bond position look like this:

$$\begin{array} {|c|c|c|c|c|c|} \hline & \mbox{Previous} & & & \mbox{Previous} & & & \mbox{Coupon} & & \mbox{Net} & \mbox{Net} \\ \mbox{Year} & \mbox{Principal} & \mbox{Principal} & \mbox{Principal} & \mbox{Notional} & \mbox{Factor} & \mbox{Factor} & \mbox{Rate} & \mbox{Coupon} & \mbox{Cashflow} & \mbox{Cashflow} \\ & \mbox{(aka Notional)} & \mbox{Payment} & \mbox{Remaining} & \mbox{Factor} & \mbox{Payment} & \mbox{Remaining} & \mbox{\%} & \mbox{\\\} & \mbox{\\\} & \mbox{\%} \\ \hline 1 & 666,666.67 & 0 & 666,666.67 & 2/3 & 0 & 2/3 & 4 & 26,666.67 & 26,666.67 & 4 \\ 2 & 666,666.67 & 333,333.33 & 333,333.33 & 2/3 & 1/3 & 1/3 & 4 & 26,666.67 & 360,000.00 & 54 \\ 3 & 333,333.33 & 0 & 333,333.33 & 1/3 & 0 & 1/3 & 4 & 13,333.33 & 13,333.33 & 2 \\ 4 & 333,333.33 & 0 & 333,333.33 & 1/3 & 0 & 1/3 & 4 & 13,333.33 & 13,333.33 & 2 \\ 5 & 333,333.33 & 333,333.33 & 0 & 1/3 & 1/3 & 0 & 4 & 13,333.33 & 346,666.67 & 52 \\ \\ \mbox{Total} & & & & & & & & & 760,000 & 114 \\ \hline \end{array}$$

So you're promised USD 760,000 (114% of 666,666.67) over the next 5 years.

Note that the prior history of how you got here doesn't matter much. You would have the same cash flows with a bond issued now, paying 4%, and amortizing 1/2 in 2 and 5 years.

But comparing the USD 1 that you pay now to USD 1 that you might receive in the future, in which USD 1 might be purchasing much less than now, is not very meaningful. You need to discount future cash flows both for "time value of money" and for the possibility that you might not get paid as promised etc.

Let us solve for the yield $$y$$ that corresponds to this price (102) and to these cash flows. For simplicity, let the discount factor in $$n$$ years be $$(1+y)^{-n}$$. (More generally, if the bond pay coupons with the frequency $$f$$ times a year, then the discount factor would be $$(1+y/f)^{-fn}$$.) Iterating, a solver finds that the value of $$y$$ that makes the sum of the discounted cash flows approximately match the given price approximately equals 3.07428%. The discount factors corresponding to this yield explain your dirty price as follows:

$$\begin{array} {|c|c|c|c|c|c|} \hline \ & \mbox{Undiscounted} & \mbox{Undiscounted} & \mathbf{{1.0307428}^{-\mbox{Years}}} & \mbox{Discounted} & \mbox{Discounted} \\ \mbox{Year} & \mbox{Cashflow} & \mbox{Cashflow} & \mbox{Discount} & \mbox{Cashflow} & \mbox{Cashflow} \\ & \mbox{\\\} & \mbox{\%} & \mbox{Factor} & \mbox{\\\} & \mbox{\%} \\ \hline 1 & 26,666.67 & 4 & 0.97017413 & 25,871.31 & 3.88 \\ 2 & 360,000.00 & 54 & 0.94123784 & 338,845.62 & 50.83 \\ 3 & 13,333.33 & 2 & 0.91316461 & 12,175.53 & 1.83 \\ 4 & 13,333.33 & 2 & 0.88592868 & 11,812.38 & 1.77 \\ 5 & 346,666.67 & 52 & 0.85950509 & 297,961.76 & 44.69 \\ \hline \\ \mbox{Total} & 760,000 & 114 & & 686,667 & 103 \\ \hline \end{array}$$

As you see, the sum of the discounted cash flows matches your proceeds (dirty price). But to get the clean price, you must subtract the accrued interest: 102 = 103 - 1.

Conversely, if you're just given some discount factors (eg from some swap curve) then you can multiply cash flows % by the given discount factors and sum them to get the price implied by the discount factors (which is not likely to match any observed price). For example

$$\begin{array} {|c|c|c|c|c|c|} \hline \ & \mbox{Undiscounted} & \mbox{Undiscounted} & \mbox{Made-up} & \mbox{Discounted} & \mbox{Discounted} \\ \mbox{Year} & \mbox{Cashflow} & \mbox{Cashflow} & \mbox{Discount} & \mbox{Cashflow} & \mbox{Cashflow} \\ & \mbox{\\\} & \mbox{\%} & \mbox{Factor} & \mbox{\\\} & \mbox{\%} \\ \hline 1 & 26,666.67 & 4 & \mathbf{0.95} & 25,333.33 & 3.80 \\ 2 & 360,000.00 & 54 & \mathbf{0.92} & 331,200.00 & 49.68 \\ 3 & 13,333.33 & 2 & \mathbf{0.89} & 11,866.67 & 1.78 \\ 4 & 13,333.33 & 2 & \mathbf{0.86} & 11,466.67 & 1.72 \\ 5 & 346,666.67 & 52 & \mathbf{0.83} & 287,733.33 & 43.16 \\ \hline \\ \mbox{Total} & 760,000 & 114 & & 667,600 & 100.14 \\ \hline \end{array}$$

These made-up discount factors imply the dirty price of 100.14. Subtracting the accrued interest, we get clean price of 100.14 - 1 = 99.14.

Or, if you're just given the net of the discounted cash flows, like USD 667,600, then you still can divide by the principal as of the settlement date (USD 1,000,000 * 2/3) to get the dirty price of 100.14%. If you wish, you can also solve for the yield explaining this price, possibly using yet other discount factors corresponding to this yield. To get a clean price, you subtract the accrued interest from the dirty price (again, being careful with the factor).

• Thank you for the response! To clarify, I do have the discounted cash flows. My confusion is: how do I get from the DCF to the price as a % of par? Oct 13, 2020 at 18:49
• @souptaco You haven't specified what you're discounting by. If it is in fact the bond yield then by definition the sum of the DCFs is the price of the bond. To express it as a % of par, divide this sum by the face value of the bond. Oct 13, 2020 at 21:37
• It was the sum of %'s that I was looking for. Thank you so much,, I have so much more clarity here now. Oct 14, 2020 at 2:27
• Great answer! Two questions: 1. Is the size of the transaction stated in terms of initial face value, outstanding principal, or the number of bonds? 2. I had the idea that the dirty/full/all-in true price of a bond is a percentage of the initial nominal value. Or is the dirty price also expressed as a percentage of the outstanding principal? Dec 16, 2021 at 12:57
• thanks! 1 On a typical ticket, you put the initial unamortized face value, the factor, and the clean price. Look at BXT on Bloomberg terminal if you can for some example bonds 2 if the example bond is 2/3 amortized and trading at par, then clean price is 100, and dirty price is 1/3+accured. (Further, Brazil P.U. is dirty, but also for par value 1,000 rather than 100) Dec 16, 2021 at 17:40