Skip to the main content
Hablox

How a bond's price reacts to interest rates

A bond pays fixed amounts on fixed dates. When market rates move, the only thing that can adjust is the price — and duration is the number that tells you how much.

How a bond's price reacts to interest rates — the interactive part

Live model
Every value updates as you move
Price today
92.28
Duration
8.36
years
If yields rise 1 point
-7.35

price per 100 of face value

market yield %

PriceFace valueYour current market yield %
This chart as text
  • Price: 134.1 at market yield % 0.5, 77.15 halfway, 47.84 at 14.
  • Face value: 100.0 at market yield % 0.5, 100.0 halfway, 100.0 at 14.
  • Your current market yield % is marked on the curve.

Why the number moves

The main relationship

Price today
100 * (coupon rate / 100) / (market yield / 100) * (1 - pow(1 + market yield / 100, -years to maturity)) + 100 * pow(1 + market yield / 100, -years to maturity)

The price is the present value of every coupon plus the face value, each discounted at the market yield. Duration is the average time until you get your money back, weighting each payment by how much of the price it accounts for.

Show the maths and current values
Price today
100 * (coupon rate / 100) / (market yield / 100) * (1 - pow(1 + market yield / 100, -years to maturity)) + 100 * pow(1 + market yield / 100, -years to maturity)100 * (4 / 100) / (5 / 100) * (1 - pow(1 + 5 / 100, -10)) + 100 * pow(1 + 5 / 100, -10)
Duration
(1 + market yield / 100) / (market yield / 100) - (1 + market yield / 100 + years to maturity * (coupon rate / 100 - market yield / 100)) / ((coupon rate / 100) * (pow(1 + market yield / 100, years to maturity) - 1) + market yield / 100)(1 + 5 / 100) / (5 / 100) - (1 + 5 / 100 + 10 * (4 / 100 - 5 / 100)) / ((4 / 100) * (pow(1 + 5 / 100, 10) - 1) + 5 / 100)
If yields rise 1 point
-macaulay duration / (1 + market yield / 100) * price * 0.01-8.36 / (1 + 5 / 100) * 92.278 * 0.01

These expressions were written by AI and checked numerically — sampled across every control for undefined results, sudden jumps and the direction each value was claimed to move in. That makes the maths well-behaved. It does not make it the right maths for this topic, which is why it is shown rather than hidden.

Price today is 92.28. Duration is 8.36 years. If yields rise 1 point is -7.35.

Formula written by AI, checked numerically

Why the price has to move

A bond's payments never change. If new bonds start paying 7% and yours pays 4%, nobody will buy yours at the same price — the price falls until the fixed payments add up to a 7% return for whoever buys it now. The price is not an opinion about the bond. It is arithmetic on what everyone else can get instead.

What duration actually measures

Duration is often described as risk, but it is really a weighted average time: how long, on average, until each pound comes back to you. That is why a zero-coupon bond's duration equals its maturity, and why a high coupon shortens it — more of the money arrives early. It doubles as a sensitivity, because a payment further away is discounted more times.

Check your understanding

Two bonds mature in 10 years. Which one's price moves more when yields rise?

Pick one to check yourself.