Skip to content
Money & BankingPricing a bond and finding its yield

Formulas for this chapter

Bond price (present value)

P = C/(1+r) + C/(1+r)^2 + ... + C/(1+r)^n + F/(1+r)^n

The definition. Use it when there are few periods, or when no factor tables are given. Remember the last period carries both the coupon and the face value.

C
Coupon per period, in rupees: coupon rate x face value / periods per year
r
Required return per period
n
Number of periods to maturity
F
Face or par value

Bond price (factor form)

P = C x PVIFA(r, n) + FV x PVIF(r, n) Semi-annual: halve C, halve r, double n

Prof. Panda's form. Two multiplications instead of n divisions, and the only practical way to price a 20- or 40-period bond by hand.

PVIFA(r,n)
Present value interest factor of an annuity, for the coupon stream
PVIF(r,n)
Present value interest factor for a single sum, for the face value

Holding period return

HPR = (Price gain or loss + Coupon received) / Price at the beginning

Whenever a bond is bought and then sold rather than held to maturity. Keep the sign on the price change, and remember it is not annualised.

Price gain or loss
Selling price minus purchase price, negative if it fell
Coupon received
Coupons collected during the holding period

Current yield and capital gain yield

Current yield CuY = C / P0 Capital gain yield CGY = (P1 - P0) / P0 Expected return ERR = CuY + CGY

Splitting a one-period return into cash and price components. For a bond held one period the sum equals the YTM per period.

C
Coupon for the period
P0
Price at the start of the period
P1
Price at the end of the period

YTM approximation

YTM = [C + (P or D / years to maturity)] / [(P0 + F) / 2] P or D = F - P0 (positive for a discount, negative for a premium)

Whenever a YTM is asked for by hand. Keep the sign on the premium or discount; forgetting it on a premium bond is the standard error.

C
Annual coupon in rupees
P0
Current market price
F
Face value

Clean, dirty and accrued interest

AI = Coupon x (days since last coupon) / (days between coupons) Dirty (invoice) price = Clean price + AI Clean price = Dirty price - AI

Any trade between coupon dates. Quotes are clean; settlement is dirty.

AI
Accrued interest owed to the seller

Valuation between coupon dates (ACT/ACT)

K = N1 / N2 Dirty price = P1(minus) x PVIF(r, K) AI = Coupon x (1 - K) Clean price = Dirty price - AI

When the settlement date falls between two coupon dates. Price to the next coupon date first, then discount back by the fraction K of one period.

N1
Actual days from today to the next coupon date
N2
Actual days between the two coupon dates
P1(minus)
Price as of the next coupon date, just before the coupon is paid

Zero-coupon bond price

P = F / (1 + r)^n

Zero-coupon or deep discount bonds, and each leg of a STRIPS. One cash flow, so one division, and no reinvestment risk.

F
Face value received at maturity
r
Yield per period
n
Number of periods
Step 2 of 29
The real wordsTheory

The pricing formula

The slide's own sentence: the bond price is calculated by taking the present value of all future cash flows, the coupon payments and the face value at maturity, and discounting them back to their value today.

P = C/(1+r) + C/(1+r)^2 + ... + C/(1+r)^n + F/(1+r)^n

C is the coupon in rupees, F the face value, r the required return per period, and n the number of periods. Note that the last period carries both a coupon and the face value.