Bond math in a fixed income interview is rarely hard arithmetic. It is a handful of small numbers, and each one hides a choice that is easy to get backwards: which price to divide by, which way a forward rate has to lean, whether a move is one basis point or a whole percentage point.

Take a 5% coupon bond bought at 80 and repaid at par in five years. The coupon plus a fifth of the discount is 9 points a year, and 9 over the 80 you paid is 11.25%, which sounds right and is not. The bond returns 10.32% a year: the discount is not paid out annually, and the bond's value climbs toward par along the way.

Every one of these measures comes back to one idea. A bond is a list of cash flows and a discount rate, and price, yield, duration, DV01 and convexity are different questions asked of that one list.

What each measure actually answers

MeasureWhat it answersHow it is found
PriceWhat should this bond cost today, given a yieldDiscount every coupon and the principal back to today
Yield to maturityWhat single rate makes the price and the cash flows agreeSolve for the rate by iteration, or read it off a calculator
Current yieldWhat does the coupon alone return on the price paidAnnual coupon divided by price
Macaulay durationHow long, on average, until you get your money backCash-flow-weighted average time, in years
Modified durationHow much the price moves for a small yield changeMacaulay duration divided by one plus the periodic yield
DV01 (PVBP)How many dollars that price move is worth, per basis pointModified duration times price, divided by ten thousand
ConvexityHow much the duration estimate itself is wrongThe curvature term added to the duration estimate
Spread durationHow much price moves for a change in credit spread aloneSame mechanics as duration, applied to the spread
-4.46%
price move, +100bp
duration only
-4.34%
price move, +100bp
duration + convexity
$0.043
DV01 per 100 face
5yr, 4% coupon, 5% yield
A 5-year, 4% semiannual bond priced to yield 5%. Worked in full below.

Price from yield, worked twice

Take a hypothetical 5-year bond, a 4% annual coupon paid semiannually (2.00 per 100 face every six months), priced to yield 5% on a bond-equivalent basis. That is a discount bond, because the coupon sits below the yield, and the table is the whole calculation, period by period.

PeriodCash flowDiscount factor at 2.5%Present valueTime-weighted PV
12.000.9756101.95121.9512
22.000.9518141.90363.8073
32.000.9285991.85725.5716
42.000.9059511.81197.2476
52.000.8838541.76778.8385
62.000.8622971.724610.3476
72.000.8412651.682511.7777
82.000.8207471.641513.1319
92.000.8007281.601514.4131
10102.000.78119879.6822796.8224
Total95.6240873.9089

Add the present-value column and the bond is worth 95.62 per 100 face. Every cell is rounded to four decimals from the unrounded figure, so adding the column by hand gives 95.6239 against an unrounded 95.623968. Nobody sums that by hand at a desk, but the shape of it is what a strong interview answer describes out loud: every coupon and the principal, discounted at the periodic yield, added up.

The second route is the annuity formula, which values the ten coupons as one block and the principal on its own:

  • Coupons: 2.00 x [1 - 1.025⁻¹⁰] / 0.025 = 2.00 x 8.752064 = 17.504128
  • Principal: 100 / 1.025¹⁰ = 78.119840
  • Price: 17.504128 + 78.119840 = 95.623968, the same number the table reaches

Test yourself

Interview level

A bond trades at a discount to par and pays a fixed coupon. Which ordering of its yield measures is correct?

Solving the problem backward: yield from price

Interviewers ask it both ways. Given a price of 95.00 for the same bond, find the yield. Name the method before touching a number: this is a root-find, what a calculator's "solve for I/Y" button does, because price is not a formula you can rearrange cleanly for yield once there is more than one cash flow.

By hand, the neatest root-find is Newton's method, and one Newton step is DV01 arithmetic: the price gap divided by what a basis point is worth.

  1. At 5.00% the price is 95.623968, which is 0.623968 too high. Divided by the DV01 of 0.042630, that is 14.637 basis points, so try 5.14637%.
  2. At 5.14637% the price is 95.002366 and a basis point is worth 0.04231. Another 0.002366 / 0.04231 = 0.056 basis points takes the yield to 5.14693%.
  3. Price the bond there and it comes back to 95.0000. The yield is 5.1469%, a semiannual 2.573465% doubled.

Bisection, which keeps halving the gap between a yield that prices too high and one that prices too low, closes on the same 2.573465% without ever using a slope.

The quick mental-math shortcut, coupon plus face-minus-price over years, all divided by the average of face and price, gives [4 + (100 - 95) / 5] / [(100 + 95) / 2] = 5 / 97.5 = 5.128%: off by about two basis points, which is the error to expect from it and why it is a shortcut and not the answer.

Clean price, dirty price, and which day-count convention

A bond's quoted, or clean, price is not what a buyer actually pays between coupon dates. The buyer also owes the seller the coupon interest that has accrued since the last payment, and that full amount, the dirty price, is clean price plus accrued interest.

Actual/actual (Treasury)

  • Counts real calendar days in both the elapsed period and the full coupon period
  • 89 days elapsed of 181 in the period, in a regular year
  • Accrued interest: 2.00 x 89/181 = 0.9834 per 100 face

30/360 (corporate, municipal)

  • Treats every month as 30 days and the coupon period as 180 days
  • 90 days elapsed of 180 in the period, by the 30/360 count
  • Accrued interest: 2.00 x 90/180 = 1.0000 per 100 face
Same bond, same coupon dates, same settlement: 15 February to 15 May 2027, on a 15 February / 15 August coupon schedule. In a leap year such as 2028 the actual count becomes 90 of 182, or 0.9890.

Treasuries accrue on the real calendar, down to a published table of half-year lengths in Treasury's own auction rules: February to August runs 181 days in a regular year and 182 in a leap year. Corporates and municipals default to the thirty-day month instead, written out in full in both the dealer rulebook for corporate bonds and the municipal market's own rules.

A dirty-price question that does not name the convention is really asking whether you know there are two, a distinction that is easy to miss if you have only memorized "coupon times days over days".

Macaulay duration, worked twice

Macaulay duration is the cash-flow-weighted average time to get your money back, in years. Sum the time-weighted column in the price table and divide by the bond's price.

873.9089 divided by 95.6240 gives 9.1390 semiannual periods, or 4.5695 years. The closed-form route reaches the same figure with no table at all, from the coupon rate per period c (0.02), the periodic yield y (0.025) and the number of periods n (10):

  • (1 + y) / y = 1.025 / 0.025 = 41
  • (1 + y) + n(c - y) = 1.025 + 10 x (0.02 - 0.025) = 0.975
  • c x [(1 + y)ⁿ - 1] + y = 0.02 x 0.280085 + 0.025 = 0.0306017
  • Macaulay duration = 41 - 0.975 / 0.0306017 = 41 - 31.8610 = 9.1390 periods

Modified duration adjusts that figure for the periodic yield: 4.5695 divided by 1.025 (one plus the semiannual yield) gives 4.4581. That is the number a trader quotes, because it estimates a percentage price change directly rather than a timing average.

  • Macaulay duration answers "how long until I get my money back, on a present-value-weighted basis."
  • Modified duration answers "what percentage does the price move for a small change in yield."
  • A zero-coupon bond's Macaulay duration always equals its time to maturity exactly, because a single cash flow's weighted-average timing is its own timing.

Test yourself

Interview level

Why is a zero coupon bond's Macaulay duration always equal to its time to maturity?

DV01: the dollar move, per basis point, and why the units matter

DV01, also called PVBP, the price value of a basis point, turns modified duration into the figure a desk actually uses: how many dollars this position gains or loses for a one basis point move.

Two ways to get there on the worked bond, and they agree to four decimal places:

  1. The formula. Modified duration times price, divided by ten thousand: 4.4581 x 95.6240 / 10,000 = 0.04263 per 100 face.
  2. The direct reprice. Price the bond at a yield one basis point higher (95.5813) and one basis point lower (95.6666), take half the difference: (95.6666 - 95.5813) / 2 = 0.04263.

Scaled up, that is $4,262.97 per $10 million face for a single basis point. A desk never talks in the 0.04-per-100 form; it talks in dollars per basis point on the position it actually holds, and an interviewer wants to hear you convert one into the other unprompted.

Test yourself

Warm-up

DV01, the price value of a basis point, measures a bond's price change for what movement in yield?

Convexity: the correction duration alone cannot make

Modified duration is a straight line, tangent to a price-yield relationship that is actually curved. That line is a fine approximation for a small move and a worse one the further you push it, which is why the duration-only estimate and the exact repriced value pull apart as the shock gets bigger.

Price change at +100bp: three ways to estimate itpercent
Duration only
-4.46%
Duration + convexity
-4.34%
Exact reprice
-4.34%ref

Same 5-year, 4% bond, 5% starting yield, a 100bp rise. Convexity closes almost the whole gap between the linear estimate and the true repriced price.

The full estimate adds a second-order term to duration's straight line. In symbols, with D for modified duration, C for convexity and Δy for the yield change in decimals:

  • Price change: ΔP/P ≈ -D x Δy + ½ x C x (Δy)²
  • Convexity: C = Σ CF x t(t + 1) / (1 + y)ᵗ, divided by P x (1 + y)², for a cash flow CF at period t, a periodic yield y and a price P. On a semiannual bond that comes out in periods squared, so divide by 4 to state it in years.

On the worked bond the sum comes to 9,320.90. Divided by 95.6240 x 1.050625, that is 92.78 in periods squared, and divided by 4 it is 23.19. Reprice the bond a basis point either side and take (P₊ + P₋ - 2P₀) / (P₀ x Δy²), and the answer is 23.19 again.

For a 100bp rise, the whole estimate is one line: -4.4581% from duration, plus ½ x 23.19 x (0.01)² = +0.1160% from convexity, gives -4.3421%, against an exact reprice of -4.3443%. The table runs the same arithmetic at four shock sizes:

Yield shockDuration onlyDuration + convexityExact reprice
+100bp-4.4581%-4.3421%-4.3443%
-100bp+4.4581%+4.5740%+4.5763%
+200bp-8.9161%-8.4522%-8.4695%
-200bp+8.9161%+9.3800%+9.3984%

Adding convexity moves every estimate closer to the exact number, not just some of them, and the gap that remains grows fast with the shock: about 0.002 percentage points of price, or 0.2bp, at 100bp, and 0.017 to 0.018 points, or 1.7 to 1.8bp, at 200bp. Doubling the shock multiplies the leftover error by about eight, because what is left is the third-order term, which grows with the cube of the move.

A bond calculator runs the same three estimates, duration, duration plus convexity, and an exact reprice, for any bond and any shock you type in.

On desks that trade rates directly, this curvature is the whole trade some days: a long-convexity position gains more when yields fall than it loses when they rise by the same amount, for a fixed-rate, option-free bond.

That relationship flips on desks trading securitized products, where prepayment options give many mortgage-backed securities negative convexity instead, and the "which way does convexity run" question is one of the fastest ways an interviewer tells whether a candidate actually understands the mechanism or has only memorized the sign for a plain bond.

Test yourself

Interview level

Why does adding a convexity term sharpen a duration only price estimate for a large yield move?

Spot rates, forward rates, and the no-arbitrage relationship

A spot rate is the rate for lending money from today out to some future date. A forward rate is a rate agreed today for a loan that starts later.

A no-arbitrage condition locks them together: investing at the longer spot rate has to pay the same as investing at a shorter one and rolling into the forward rate for the rest of the period. If it did not, you could borrow one way, lend the other and pocket the difference for free.

Take three illustrative annual spot rates, 3% for one year, 4% for two years, 5% for three years. The one-year rate starting in one year (the "1y1y" forward) solves from (1.04)² / 1.03 - 1 = 5.0097%.

The one-year rate starting in two years solves from (1.05)³ / (1.04)² - 1 = 7.0289%. Check the first one both ways: 1.03 x 1.050097 equals 1.081600, and (1.04)² also equals 1.081600. They match, which is the no-arbitrage condition doing what it is supposed to do.

The forward-rate arbitrage question, solved

One candidate describes being asked this in an interview for a fixed income trading job: a two-year fixed bond pays 10% a year, and a forward pays 8% from year 0 to year 1. Would the forward from year 1 to year 2 have to pay above or below 8% to eliminate the arbitrage?

A forward from year 0 to year 1 starts today, so it is simply the one-year spot rate. The 10% can be read two ways, and the direction of the answer survives both:

  • As a two-year spot rate. (1.10)² = 1.08 x (1 + f), so f = 1.21 / 1.08 - 1 = 12.04%. Check the payoffs: one year at 8% then one at 12.037% pays 1.08 x 1.12037 = 1.2100 per dollar, the same as two years at 10%.
  • As the coupon on a two-year bond priced at par. Value the first coupon at 8%: 10 / 1.08 = 9.2593. That leaves 90.7407 of the price for the final 110, so (1 + z₂)² = 110 / 90.7407 = 1.212245, and f = 1.212245 / 1.08 - 1 = 12.24%.

Either reading lands at about 12%, well above 8%.

Test yourself

Partner level

A two year bond yields ten percent a year, and money lent from today to year one earns eight percent. Must the year one to year two forward sit above or below eight percent?

The bond-at-80 mental-math question, solved

The second hallmark question is framed as no-calculator mental math: buy a 5%-coupon bond at 80, hold it five years, and it is repaid at par. What is the annual return?

The fast route counts the income, then divides it by the money tied up:

  1. Income per year: the 5-point coupon, plus the 20-point discount spread over five years, which is 4 points a year. Together, 9 points.
  2. Money tied up: the bond starts at 80 and ends at 100, so on average about 90 is invested.
  3. Return: 9 / 90 = 10.0%.

The exact annualized return, the rate that discounts all five coupons and the final 100 back to a price of 80, is 10.32%. The shortcut lands about a third of a point low, close enough to say out loud, and the bond calculator returns the exact figure.

Three wrong numbers turn up in candidates' answers to this question, and each is tempting for a reason:

  1. 9 / 80 = 11.25%. The trap. It divides the right income by the price paid, which would only be fair if the 4 points of discount arrived in cash every year and the bond stayed worth 80. Neither happens: the discount arrives in one lump at maturity, and the bond's value climbs toward par along the way.
  2. 9 / 100 = 9%. The mirror-image slip, measuring everything against par as if the bond had cost 100. Too low, because it cost 80.
  3. (25 coupon total + 20 gain) / 80 = 56.25%. The correct total five-year return, undiscounted, and not an annual rate at all.

Test yourself

Interview level

Buying a five percent coupon bond at eighty and collecting par in five years returns roughly what, as a quick mental estimate?

Zero-coupon bonds and floating-rate notes

A zero-coupon bond pays nothing until maturity, so its price is the face value discounted for the full term: a 5-year zero at a 5% yield, semiannual compounding, prices at 100 / (1.025)^10 = 78.12 per 100 face. Its Macaulay duration is exactly 5.0 years, because the weighted average of one cash flow is itself.

A floating-rate note resets its coupon to a reference rate plus a fixed quoted margin, so its price stays near par between resets. It leaves par once the market's required margin for that issuer's credit no longer matches the note's quoted margin.

Take a 2-year FRN, quoted margin 50bp over a 4.00% reference rate, whose issuer has since cheapened to an 80bp required margin. Its coupon, 2.25 a period from the fixed quoted margin, now sits below the 2.40 a buyer would demand, so the note prices at 99.43 per 100 face. Required margin above quoted margin means a discount, and the reverse means a premium.

Spread duration: what a credit desk adds on top

Every measure so far tracks the benchmark yield curve itself. A credit desk cares about something else on top: how much the bond's price moves when its own credit spread changes, independent of the curve. That is spread duration, and on a plain fixed-rate bond it is calculated like ordinary duration, applied to the spread instead of the benchmark yield.

Take the worked bond's modified duration, 4.4581, treated as its spread duration. A 50 basis point widening in that bond's credit spread, with the benchmark curve held flat, implies an estimated price decline of 4.4581 x 0.50% = -2.23%.

The benchmark curve never moved in that calculation, which is why a credit desk tracks spread duration separately instead of folding it into ordinary duration. The judgment calls that a full credit round layers on top of this arithmetic, reading a covenant, sizing recovery, weighing default probability, are a separate skill.

How the technical round differs by desk

The arithmetic above is common to every fixed income seat. What changes from desk to desk is the number the desk actually trades, and that decides which sensitivity an interviewer leans on.

DeskWhat it tradesThe bond math that follows
RatesThe benchmark yield curve itselfDuration, DV01 and convexity against the curve, plus spot and forward rates
CreditThe spread over that curveSpread duration on top, with the benchmark curve held fixed

Underneath both sits the simplest case worth knowing cold. A 10% coupon bond priced at 90 and repaid at par in a year yields (10 + 10) / 90 = 22.22%, exact rather than approximate, because there is only one period to discount. The shortcut formula earns its keep from two periods on.

Brain-teaser and quick-market-view questions sit outside bond math altogether, and they need their own preparation.

Mistakes candidates make

  • Confusing Macaulay duration with modified duration when the question wants price sensitivity. Modified duration is the one that answers "how much does the price move."
  • Getting the sign backward: price change is approximately negative modified duration times the yield change. Yields up, price down, every time for an option-free bond.
  • Forgetting accrued interest when a question asks for the full, or dirty, price rather than the quoted, or clean, price.
  • Assuming one day-count convention fits every bond. Treasuries count real calendar days, corporates and municipals count thirty-day months, and the dollar difference is real.
  • Using modified duration alone on a callable bond, which overstates the price gain from falling rates, because it assumes cash flows that a call in the money changes.
  • Dividing a bond's annual income by the price paid rather than by the average of price and par, which turns the bond-at-80 question's 10% into 11.25%.
  • Plugging a full percentage point into a formula built for a single basis point, which is off by a factor of one hundred and the most avoidable error there is.

Preparing for the round

Knowing the formulas and being able to say the numbers out loud are different skills, and only the second one gets tested. Work each example cold, without the tables, until the arithmetic sounds like a sentence. In the last hour before an interview an interview readiness check forces that recall under a clock, which another read-through never does.

A candidate walking into a technical round on any of the fixed income trading desks should be able to do all of this without a calculator:

  • Price a plain coupon bond given its yield, and explain the calculation out loud while doing it.
  • State whether current yield sits above or below yield to maturity, and why, for a discount and a premium bond both.
  • Compute Macaulay and modified duration for a small bond by hand, from the cash flows.
  • Convert modified duration into a DV01 figure, in dollars, per basis point.
  • Explain, in one sentence, why convexity is needed on top of duration.
  • Work both hallmark questions, forward-rate arbitrage and bond-at-80, from memory.

Nobody is tested on all of fixed income in one round. They are tested on whether that handful is automatic, because everything else on the desk is built on top of it.

The bottom line

Price, yield, duration, DV01 and convexity are how a fixed income desk describes its risk and explains a P&L move, so none of this stops mattering once the offer is signed. The interview is not testing a hurdle to clear once; it is testing the vocabulary the job runs on.

The traps are small and specific, and each has a one-line check. Divide a bond's income by the average of price and par, 9 / 90, not by the price paid, 9 / 80. Let a forward lean the way the curve leans: 1.21 / 1.08 puts it near 12%, not under 8%. And keep a basis point a basis point: this bond's DV01 is 0.0426 per 100 face, not the 4.26 a full percentage point would give.

Learn the eight measures cold, work the two hallmark questions until they feel obvious, and the rest of a fixed income technical round is the same arithmetic asked about a different bond.