What is a Bond?
A bond is a fixed-income security — a loan from the investor to the issuer (a government or corporation) in exchange for periodic interest payments (coupons) and the return of principal (face value) at maturity. Because cashflows are predetermined, a bond's value can be computed exactly given its yield, or its yield computed exactly given its price.
The Two Modes
- Quick Bond Pricing assumes the bond settles exactly on a coupon date — useful for back-of-envelope analysis. Choose to solve for either the price (given yield) or the yield (given price).
- Date-aware Pricing takes a settlement date and a maturity date and produces the dirty price (full PV including accrued interest), the clean price (quoted price excluding accrued), and the accrued interest. This is what you actually pay or receive when buying a bond mid-period.
Bond Pricing Formula
The price of a bond is the present value of its future cashflows discounted at the yield:
Price = C × [1 − (1 + y)−N] / y + F × (1 + y)−N
- C = coupon payment per period (annual coupon ÷ frequency)
- y = periodic yield (annual yield ÷ frequency)
- N = total number of coupon periods (years × frequency)
- F = face value (par)
Solving for Yield
The yield-from-price problem has no closed-form solution because y appears in both the discount factor and the denominator of the annuity term. This calculator uses the bisection method — iteratively narrowing a range of possible yields by checking which half contains the target price — converging to high precision in around 80 iterations.
Coupon Frequency
Coupons can be paid annually (1/year), semi-annually (2/year, the U.S. standard), quarterly (4/year), or monthly (12/year). Higher frequency means earlier cashflows and slightly higher present value for any given yield. The annual yield is divided by the frequency to obtain the periodic yield.
Worked Example — Quick Mode
$1,000 face, 4% annual coupon paid annually, 5% yield, 10 years to maturity:
- C = $1,000 × 4% = $40 per year
- N = 10 periods (annual)
- y = 5% per period
- Price = 40 × (1 − 1.05−10) / 0.05 + 1,000 × 1.05−10
- Price = 40 × 7.7217 + 1,000 × 0.6139 = $922.78
Dirty Price, Clean Price, and Accrued Interest
When a bond is bought between coupon dates, the buyer compensates the seller for interest already earned but not yet paid — the accrued interest. The full amount paid (the dirty price) equals the bond's true present value. The clean price is what's quoted on trading screens: dirty minus accrued. Accrued is computed as the periodic coupon multiplied by the fraction of the current coupon period that has elapsed.
Day-count Conventions
Different bond markets calculate "fraction of period" differently. This calculator supports the four conventions used by Excel's PRICE function:
- 30/360 (Bond basis) — treats every month as 30 days and every year as 360 days. Default for U.S. corporate and municipal bonds.
- Actual/360 — uses actual elapsed days but assumes 360-day years. Common for money-market instruments.
- Actual/365 — actual days, 365-day year.
- Actual/Actual — actual days, with each year's actual length (365 or 366). Standard for U.S. Treasuries.
The choice of convention can shift the dirty price by a few basis points — small but material when trading large sizes.
Bond Pricing Caveats
- Yield is a single rate — real bonds discount each cashflow at the spot rate for that maturity, not a single yield. The bond's "yield to maturity" is the constant rate that makes PV equal to the market price — useful but a simplification.
- Default risk — this calculator assumes coupons and principal are paid in full and on time. Risky bonds trade at a higher yield to compensate for default probability.
- Reinvestment risk — the implicit assumption is that coupons are reinvested at the same yield, which rarely holds in practice.
- Embedded options — callable, putable, or convertible bonds need option-adjusted spread analysis, beyond what this calculator covers.