Let's assume I hold a bond that yields 3% for some time. Based on my calculations $100 are working in the investment. So it makes me $3 each year.

Now let's assume the yields have been increased so I can buy bonds that yield 4%. The bond I currently own can be sold for $80.

Should I sell my bond for $80 to buy the 4% bond so my investment would make $3.2 each year instead of $3?

Or consider the opposite: yields fell to 2% and my bond can be sold for $160. If I sell my 3% bond for $160 and buy the 2% one, my money would earn $3.2 again instead of $3. Should I do it?

My general goal is to maximize the income I can make with my money. Is maximizing income a good idea at all?

(Let's ignore the default risk of the bonds for a moment)


I don't think fully understand the answers so far.

But here is my thought chain detailed:

You mentioned NPV, but I thought it's just a name of a function you need to turn zero, when solving for the IRR. Bonds with fixed coupons have a fixed internal return rate (IRR) since all future cash flows are proporitonal to the initial investment. IRR is the interest rate of a hypotetical savings account you would deposit your investments to and withdraw some from as the coupons mature. So you invest, it earns interest then you withdraw some, the remaining earn interest and so on... At the maturity date you'll exactly have the amount of the last payment.

I did a spreadsheet showing my calculations for a hypothetical case:

enter image description here

It turned out that XNPV function gives the very same values except that it calculates using future payments while I calculated the present value based on past cash movements with negative sign.

Should the future payments change, so the yields will, and the value on both columns will adjust accordingly as well.

So basically I calculated NPV already, just didn't know...

What I ask about is the last column. For any given moment of time I can tell the NPV and the rate it's making money.

Based on the IRR of the new bond's cash flows, and the selling price of a particular investment I can predict the new growth rate. If it provides higher growth I would switch.

Indeed if my investments' NPV is $100 and if I sell it for $80 I indeed lost $20. But my question is about maximizing NPV*yield product and not the absolute wealth. (let's ignore the default risk for a moment)

WRT my financial situation I'm a worker who earns his money, and I invest the surplus. The final goal is building a retirement portfolio that provides high income.

EDIT2: I've found that maximizing the growth rate isn't necessarily a good idea.

  • 2
    The calculation you are looking for is called Net Present Value. It is a forumla that lets you compare to hypothetical cash flows and determine what each option is worth in today's dollars.
    – JohnFx
    Commented Aug 14, 2014 at 14:16
  • I am assuming government bonds means US. It is considered risk free, but it isn't but the chances of US defaulting is less. So are many other countries. But yield and bond price move in tandem, so taking a real scenario is much helpful then assuming a hypothetical scenario.
    – DumbCoder
    Commented Aug 14, 2014 at 14:48

4 Answers 4


In theory, yes, it makes sense to sell your current bonds in pursuit of higher yields. In practice, there are a lot of smart people out there who own bonds, and the market is very efficient, so you won't see opportunities to trade new bonds for old bonds with better yields from the same issuer. If you do find someone willing to buy your old bond for a higher amount, it probably points to a change in the contract that the new bonds were issued under. (see Argentina for an example)

  • 1
    So unless I have supercomputer on the basement floor of the issuer, the market would never let me switch, isn't it?
    – Calmarius
    Commented Aug 15, 2014 at 15:04
  • 2
    It doesn't even have to be a super computer, it just needs to have the lowest latency connection to the computers on the exchange as well as the computers that release the information to the market. Commented Aug 15, 2014 at 15:20

"Maximizing income" could mean a lot of things. What you really want is to maximize wealth. Doesn't matter if it comes from your bond appreciating in value or as dividends.

In order to maximize your wealth (that's today's wealth), you need to make decisions based on the net present value of these bonds. The market is fairly priced, especially for a tight market like government bonds. That means if your bond falls in price, it has fallen by precisely the amount necessary so that an investor would be indifferent between purchasing it now, at its current price, and purchasing a new bond with a higher dividend. The bonds with higher dividends will simply have a higher price, so more of the money comes as dividends than as price appreciation (at maturity it will sell for face value). In other words, the animals are out of the barn and you have lost (or made) money already. Changing from one bond to another will not change your wealth one way or the other.

The only potential effect of changing bonds will be changing the risk of your portfolio. If you buy a bond that matures later or has a lower dividend than your current bond, you will be adding additional interest rate risk to your portfolio. That risk should be compensated, so you will have a higher expected return as well. But regardless of your choice you will not be made wealthier or less wealthy by changing from one bond to another.

Should you buy bonds that will earn you the most possible? Sure, if you are below your risk tolerance. Even among default free bonds, the longer the maturity and the lower the dividend, the greater the effect of future changes in interest rates on your bond. That makes them riskier, but also makes them earn more money on average.

TL;DR: In terms of your wealth, which is what matters, it doesn't matter whether you hold your bond or buy a new one.


It makes sense if the NPV is positive.

But what rate should you use at determining the NPV? A textbook might say "market rate".... and by definition the market rate to use in bond calculations like yours will mean that your NPV will be zero.

How can this be? Well it's a bit of a circular definition. You take less capital to earn a higher return. The value of your capital spread over the period of the bond's maturity is the net difference... but the money in your pocket from selling the bond and not purchasing also has value.

Banks and traders do this exact swap every day, many many times. The rate at which you can execute this swap is what defines the market rate. Therefore, by definition, the NPV will be zero.

Now, this doesn't mean it's a bad idea for you. You can, on your own accord, decide the value you place on the capital versus the yield and make the decision. Do you expect rates to rise or fall? Do you expect higher or lower inflation?

In reality you can form whatever opinion you like for your own circumstance, but the market is the net aggregation of formative opinion. You only get to decide whether or not you agree with the market.


TL;DR: If your currently held bond's bid yield is smaller than another bonds' ask yield. You can swap your bond for bigger returns.

Let's imagine you buy a long bond for $12000 (face value of $10000) and it has 6% coupon. The cash flows will have an internal return rate of 4.37%, this is the published "ask yield" in 2014 of the bond.

After six years, prices have fallen, inflation and yields went up. So you can sell it for only $10000. If you would do it, the IRR will be only 2.55%, so there will be less return, than if you keep it.

But if you would "undo" the transaction, then the future cash flows would yield 6.38%. This is the "bid yield" in 2020 of the bond.

If you can find an offer that yields more than 6.38%, you have better returns if you sell your bond and invest that $10000 in the other bond.

But as other answers pointed it out, you rarely have this opportunity as the market is very effective.

(Assuming everything else is equal.)

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .