Why do bond prices fall when interest rates rise?
Because a bond pays a fixed amount, so when newly issued bonds offer more, the only way an existing bond can compete is for its price to drop until the return a buyer gets matches what is available elsewhere. The relationship is arithmetic, not sentiment.
The mechanism, with numbers. A bond paying £5 a year on a £100 face value yields 5%. If new bonds start paying £7, nobody will pay £100 for £5 a year. The price falls — toward roughly £71 — at which point £5 a year is a 7% return. The coupon never changed; the price did all the work.
This is why "bond prices and yields move in opposite directions" is not a market observation but a definition: the yield is the fixed payment expressed against the current price.
Why some bonds fall much further than others — duration. Duration measures sensitivity to rate changes, and depends mainly on how far away the payments are. A bond repaying next year is barely affected, because you get your money back almost immediately and can reinvest at the new rate. A bond repaying in thirty years locks in the below-market payment for three decades, so its price must fall far more to compensate.
As a rough guide, a bond with a duration of eight years falls roughly 8% for each one-percentage-point rise in rates. This is why long-dated bond funds lost heavily when rates rose sharply, surprising investors who believed bonds were the safe part of a portfolio.
What else moves bond prices:
Credit risk. If the issuer looks less likely to repay, the price falls regardless of rates.
Inflation expectations, since the fixed payments buy less.
Supply and demand, including central bank purchases and sales.
The point people miss: if you hold an individual bond to maturity and it does not default, you receive the face value and the coupons regardless of what the price did in between. Price falls matter to sellers, and to funds — which continually buy and sell and therefore have no maturity date at all.
General information, not financial advice.