This is “Bond Valuation”, section 9.4 from the book Finance for Managers (v. 0.1). For details on it (including licensing), click here.

For more information on the source of this book, or why it is available for free, please see the project's home page. You can browse or download additional books there. To download a .zip file containing this book to use offline, simply click here.

Has this book helped you? Consider passing it on:
Creative Commons supports free culture from music to education. Their licenses helped make this book available to you. helps people like you help teachers fund their classroom projects, from art supplies to books to calculators.

9.4 Bond Valuation

PLEASE NOTE: This book is currently in draft form; material is not final.

Learning Objectives

  1. Calculate the price of a bond.
  2. Explain how bond prices are quoted.
  3. Calculate the YTM of a bond.

The financial value of any asset is the present value of its future cash flows, so we already have the tools necessary to start valuing bonds. If we know the periodic coupon payments, the par value, and the maturity of the bond, then we can use our time value of money skills from Chapter 7 "Time Value of Money: Multiple Flows" to solve for either price or YTM, given the other.

For example, if I know that a bond with a 5% annual coupon has 7 years to maturity, a $1,000 par value, and has a YTM of 6.5%, I can figure out its price. Since payments are yearly: n = 7 years, r = 6.5% per year, PMT = ($1,000 × 5%) = $50 per year, and FV = $1,000.

Figure 9.1 Bond Timeline—Annual Coupon

Using a financial calculator or excel, or solving by hand, we should get a PV = $917.73.

Quoting Bond Prices

Bond prices, by convention, are quoted as a percentage of the par value. In our above example, the result of $917.73 would be quoted as 917.73 / 1,000 = .91773 = 91.77%. And because we know they are percentages by convention, we don’t include the percent sign. So our bond quote is 91.77.

If a bond is quoted at exactly 100, we say it is trading at par (since it costs the par value). Above 100, we say the bond is trading at a premium, and below 100, it is at a discount.

If our bond paid its coupon semiannually, we need to calculate the value in terms of semiannual (six month) periods. By convention, bond yields are quoted like an APR, in that they are always equal to the rate over the period times the periods in a year. Thus, our inputs should be: n = 7 × 2 = 14 semi-years, r = 6.5% / 2 = 3.25 % per semi-year, PMT = ($1,000 × 5% / 2) = $25 every semi-year, and FV = $1,000.

Figure 9.2 Bond Timeline—Semiannual Coupon

Our result is a PV of $916.71, which is only slightly different than our annual coupon bond.

Clean vs. Dirty

For ease, we have only used example bonds with whole years left until maturity. A bond that was traded part of the way through the year would have accrued interest due to the bond seller (since the entire coupon payment will now go to the new owner).

By convention, bond prices in US markets are quoted as “clean prices”, meaning they ignore this accrued interest. This makes it easier to compare bonds day-to-day, since the accrued interest changes every day (and resets to zero when the coupon payment is made). When a trade actually occurs, the clean price plus the accrued interest will be combined to make the actual payment (the “dirty” price).

Solving for YTM is similar. If the price of our above semiannual coupon bond rose to a quoted 94.35, what is the YTM?

Figure 9.3 Bond Timeline—Semiannual Coupon Solving for YTM

n = 14 semi-years, PMT = $25, FV = $1,000, and PV = − ($1,000 × .9435) = −$943.50. We represent the price as a negative number since it is a cash outflow. Solving for r gives a result of 3.00% for the semiannual period, or 3.00% × 2 = 6.00% for the quoted YTM.

Excel has two functions that can be used to directly solve for bond prices and yields. Both require actual calendar dates for settlement and maturity of the bond; since all we know of our bond is that it has 7 years to maturity, we’ll pick dates that are 7 years apart. Both also require an input of how much of the par value is received at redemption, quoted as a % of par. Since we are receiving all of the par value at redemption, this number will be 100.

=PRICE(settlement date, maturity date, coupon rate, yield, redemption, pmts per year)

=PRICE(“1/1/2010”, “1/1/2017”, 5%, 6.5%, 100, 2)


=YIELD(settlement date, maturity date, coupon rate, price, redemption, pmts per year)

=YIELD(“1/1/2010”, “1/1/2017”, 5%, 94.35, 100, 2)

.0600 or 6.00%

Key Takeaways

  • Use TVM equations or excel functions to solve for the price or yield of bonds.
  • Bond prices are quoted as a percent of par, so they should be near 100. Above 100, the bond is trading at a premium, and, below 100, at a discount.


  1. A bond is trading at a premium. What does that say about its YTM relative to its coupon rate?
  2. A 7% annual coupon bond has a YTM of 8% and has 5 years until maturity. What is the quoted price if the par value is $1,000? What is the quoted price if the par value is $5,000?
  3. A 6% semiannual coupon bond has 8 years until maturity. Its quoted price is 107.50. If its YTM stays constant, what should be its quoted price 1 year from now?