Quant Sandbox
DerivativesPortfolio & RiskFixed IncomeCorporate FinanceStochastic ModelsGuide
Guide
Derivatives pricing
01Forwards, calls and puts02Combining positions03Arbitrage and the forward price04Put–call parity05The one-step binomial model06Risk-neutral probabilities07Multi-step trees and backward induction08American options and early exercise09Delta and hedging10Geometric Brownian motion11The Black–Scholes formula12The Greeks: gamma, vega, theta and rho13Implied volatility and the volatility smile14Stochastic volatility and the Heston model15Static replication: Breeden–Litzenberger and Carr–Madan16Exotic options: barriers, Asians and digitals
Portfolio & risk
01Returns and volatility02Diversification and correlation03The efficient frontier and the capital market line04Risk aversion and the optimal complete portfolio05CAPM, beta and the security market line06Performance measures: Sharpe, Treynor, Jensen and information ratio07Factor models and systematic risk08Value at Risk and expected shortfall
Fixed income
01Bond prices and yields02Duration and convexity03Immunization and duration matching04Spot rates, forward rates and the yield curve05Bond futures and the cheapest-to-deliver06Interest rate swaps07Callable bonds and negative convexity08Credit risk: default probabilities and credit spreads
Corporate finance
01Interest, compounding and discounting02Annuities, perpetuities and loan amortization03Net present value and internal rate of return04The weighted average cost of capital05Capital structure and the Modigliani–Miller theorems06Discounted cash flow valuation07Relative valuation with multiples08Real options: the value of flexibility
Stochastic models
01Random walks and Brownian motion02Probability spaces, σ-algebras and random variables03Filtrations, adapted processes and stopping times04Conditional expectation and martingales05Properties of Brownian motion06The reflection principle and first passage times07The Brownian bridge08The Itô integral09Itô's lemma10Kolmogorov equations and the Feynman–Kac formula11Change of measure and Girsanov's theorem12Monte Carlo option pricing13Simulating SDEs: the Euler–Maruyama scheme14Mean reversion: Ornstein–Uhlenbeck and Vasicek15Jumps and the Merton jump-diffusion model
Knowledge graph

© 2026 Quant Sandbox · A study aid for quantitative finance

Privacy & dataNo cookies

This site does not use cookies and asks for no personal data. It keeps a few small settings in your browser's local storage — your chosen theme and language, the sidebar layout, and your progress and answers in the Guides — so it remembers them on your next visit. This data never leaves your device; clearing your browser storage removes it. Inputs you change can also be captured in the page URL, so you can share or bookmark a specific setup. The site uses Vercel Web Analytics, a privacy-friendly, cookieless service that records only anonymous, aggregated usage (such as page views) without identifying you or tracking you across other sites.

Guide/Fixed income

Bond prices and yields

Lesson 1 of 8 · 1 min read

A bond is the simplest traded security whose value comes entirely from discounting: it promises fixed payments on fixed dates, and its price is what those payments are worth today. This lesson prices a bond, defines its yield and explains why prices and yields move in opposite directions. It builds on "Interest, compounding and discounting".

A bond as a list of cash flows

A plain fixed-rate bond has a face value FFF (also called par or principal), an annual coupon rate ccc and a maturity of TTT years. Throughout this track we take F=100F = 100F=100 and assume one coupon per year. The holder receives a coupon cFcFcF at the end of each year t=1,…,Tt = 1, \dots, Tt=1,…,T and, together with the last coupon, the face value FFF.

Example: a 10-year bond with c=5%c = 5\%c=5% pays 5 at the end of years 1 to 9 and 5+100=1055 + 100 = 1055+100=105 at the end of year 10. Nothing else is uncertain in this description; we assume the issuer does not default.

Price as a present value

Discount every cash flow at one annual rate yyy, using annual compounding as in "Interest, compounding and discounting", and add up the present values. The result is the price PPP:

P=∑t=1TcF(1+y)t+F(1+y)T.P = \sum_{t=1}^{T} \frac{cF}{(1+y)^t} + \frac{F}{(1+y)^T}.P=t=1∑T​(1+y)tcF​+(1+y)TF​.

The coupons form an annuity, so the sum has a closed form:

P=cF 1−(1+y)−Ty+F(1+y)T.P = cF\,\frac{1 - (1+y)^{-T}}{y} + \frac{F}{(1+y)^T}.P=cFy1−(1+y)−T​+(1+y)TF​.

Each term is a payment times a discount factor 1/(1+y)t1/(1+y)^t1/(1+y)t. The further away a payment is, the more it is shrunk.

Yield to maturity

In the market the direction is reversed: the price PPP is observed, and yyy is unknown. The yield to maturity (YTM) is the single rate yyy that makes the present value of the cash flows equal to the market price. In the language of investment appraisal it is the internal rate of return of buying the bond at PPP and holding it to maturity.

There is no closed form for yyy when T>1T > 1T>1; it is found numerically (for example by bisection), which is easy because the price is a strictly decreasing function of yyy. The yield is a summary number: it assumes every cash flow is discounted at the same rate.

Yield to maturity: the one discount rate yyy at which the present value of all promised cash flows equals the bond's price.

The price–yield relation

Every term in the price formula has yyy in the denominator, so a higher yield gives a lower price and a lower yield a higher price. The relation is not a straight line. Differentiating each term (1+y)−t(1+y)^{-t}(1+y)−t twice gives a positive result, so the curve y↦P(y)y \mapsto P(y)y↦P(y) is convex: it falls steeply at low yields and flattens at high yields. A rise of 1% in yield therefore lowers the price by less than a fall of 1% raises it.

Premium, par and discount bonds

Compare the coupon rate with the yield.

  • Par: if c=yc = yc=y, the price equals FFF. Each year the coupon pays exactly the interest the market demands, so nothing needs to be made up through the price.
  • Premium: if c>yc > yc>y, the bond pays more than the market rate, and buyers pay more than FFF for it.
  • Discount: if c<yc < yc<y, the coupons are too low, and the bond sells below FFF so that the gain from the price rising to FFF at maturity makes up the shortfall.

Zero-coupon bonds

A zero-coupon bond has c=0c = 0c=0: it pays only FFF at TTT. Its price is a single discounted amount,

P=F(1+y)T,P = \frac{F}{(1+y)^T},P=(1+y)TF​,

so its yield can be solved directly: y=(F/P)1/T−1y = (F/P)^{1/T} - 1y=(F/P)1/T−1. A 10-year zero at y=6%y = 6\%y=6% costs 100/1.0610≈55.84100/1.06^{10} \approx 55.84100/1.0610≈55.84. Zeros always trade at a discount for positive yields, and they are the building blocks of every other bond: a coupon bond is a bundle of zeros, one for each payment date.

Current yield

A simpler number often quoted is the current yield, the annual coupon divided by the price, cF/PcF/PcF/P. It ignores the gain or loss from the price moving to FFF at maturity. For a discount bond the YTM is higher than the current yield, which is in turn higher than the coupon rate; for a premium bond the order is reversed. At par all three coincide.

A worked example

Take c=5%c = 5\%c=5%, T=10T = 10T=10, y=6%y = 6\%y=6%. The annuity factor is (1−1.06−10)/0.06≈7.360(1 - 1.06^{-10})/0.06 \approx 7.360(1−1.06−10)/0.06≈7.360, so

P=5⋅7.360+1001.0610≈36.80+55.84=92.64.P = 5 \cdot 7.360 + \frac{100}{1.06^{10}} \approx 36.80 + 55.84 = 92.64.P=5⋅7.360+1.0610100​≈36.80+55.84=92.64.

The coupon is below the yield, so the bond trades at a discount. Its current yield is 5/92.64≈5.40%5/92.64 \approx 5.40\%5/92.64≈5.40%, between the coupon rate of 5% and the YTM of 6%. Raising the coupon to 7% at the same yield gives about 107.36, a premium; at y=5%y = 5\%y=5% the 5% bond is worth exactly 100.

The figure plots the price against yields from 0% to 15%, with a horizontal line at par (100) and a vertical line at the chosen yield. The readouts show the price, whether it is at a premium, at par or at a discount, and the current yield. Move yyy across the coupon rate and note that the price crosses 100 exactly there. Raise TTT and note that the curve gets steeper and more curved; set ccc to 0 to see a zero-coupon bond.

Bond price against yieldOpen in Bond Lab →
5.00%
00.1
10
130
6.00%
00.15
Bond price
92.64
Trades at
a discount
Current yield
5.40%

Pull to par

If the yield stays the same, the price of a bond moves towards FFF as maturity approaches, because fewer coupons are left to be over- or under-priced and the face value is discounted over a shorter time. With c=5%c = 5\%c=5% and y=6%y = 6\%y=6%, the price is about 92.64 with 10 years left, 95.79 with 5 years left and 99.06 with one year left; at maturity it is 100. This is the pull to par. In the figure, shorten TTT at a fixed yield and the curve flattens towards the par line.

Summary

  • A fixed-rate bond is a list of known cash flows: coupons cFcFcF each year and the face value FFF at maturity.
  • Its price is the present value of those cash flows; the yield to maturity is the single rate that reproduces the market price (the bond's IRR).
  • Price and yield move in opposite directions along a convex curve.
  • The bond trades at par when c=yc = yc=y, at a premium when c>yc > yc>y and at a discount when c<yc < yc<y; with an unchanged yield its price is pulled to par as maturity approaches.

The next lesson, "Duration and convexity", measures the slope and the curvature of the price–yield curve.

Try itPrice bonds and solve for yields in the Bond Pricing lab →
Next →Duration and convexity
Connections
Bond prices and yields
Open the full graph →
Labs for this lesson
Bond Lab