Skip to content

CFA Level II Exam · The Term Structure and Interest Rate Dynamics

Binomial Interest Rate Tree and Arbitrage-Free Bond Valuation

Updated 7 October 2026 · Fact-checked

A binomial interest rate tree shows possible one-period forward rates at each date, with each node moving up or down with equal probability. You calibrate it so it reprices the benchmark curve, then value a bond by backward induction: discount the average of the two next-node values plus coupon at each node's rate.

Understand Arbitrage-Free Valuation and Binomial Interest Rate Tree

An arbitrage-free value is a price that leaves no risk-free profit. For a bond, that means each cash flow is discounted at rates consistent with the market's benchmark curve. For an option-free bond you can simply discount at spot rates. For a bond with an embedded option, the cash flows depend on where rates go, so you need a model of possible rate paths.

The binomial interest rate tree is that model. It shows the one-period forward rate that could prevail at each future date. From each node, rates move to an upper node (higher rate) or a lower node (lower rate). The two moves are assumed equally likely, 50% each, under the risk-neutral measure used for valuation.

The tree has two features. First, the rates at adjacent nodes in the same period are linked by volatility. If the lower rate is r_L and the volatility is σ, the next rate up is r_L × e^(2σ). Second, the tree is calibrated: you pick the rates period by period so that the tree values the benchmark bonds (or zero-coupon bonds) at exactly their market prices. This is what makes the tree arbitrage-free.

Once the tree exists, you value any bond by backward induction. Start at maturity, where you know the cash flow. Move back one date at a time. At each node, take the average of the two next-period values (each plus the coupon paid then), and discount at that node's one-period rate. The value at the first node is the bond's value today.

For bonds with embedded options, you change the node value as you go. A callable bond's value at a node cannot exceed the call price when the issuer would call. A putable bond's value cannot fall below the put price. For an option-free bond, you change nothing. Higher volatility widens the tree, which raises the value of the option and so lowers a callable bond's value and raises a putable bond's value.

Key formulas to remember

Node value (backward induction)
V₀ = 0.5 × [(V_H + C) + (V_L + C)] ÷ (1 + r)
V_H and V_L are the next-period values at the upper and lower nodes. C is the coupon paid at that next date. r is the one-period rate at the node you are valuing.
Adjacent-node rate relationship
r_H = r_L × e^(2σ)
Applies to two adjacent nodes in the same period. Across n steps, the node k steps above the lowest is r_L × e^(2kσ).
Calibration to a zero-coupon bond
Price of n-year zero = value of 1 at maturity discounted back through the tree = 1 ÷ (1 + z_n)^n
The tree rates must be chosen so the tree price matches the price implied by the spot rate z_n.
Callable bond value at a node
V_node (ex-coupon) = min(V_continuation, call price) if exercisable
The issuer calls when the continuation value is above the call price. Coupon is added after this adjustment when moving back.
Putable bond value at a node
V_node (ex-coupon) = max(V_continuation, put price) if exercisable
The holder puts when the continuation value is below the put price.
Value of embedded option
Call value = V_straight − V_callable; Put value = V_putable − V_straight
Both bonds must be valued on the same calibrated tree.

How to solve Arbitrage-Free Valuation and Binomial Interest Rate Tree questions

Use this order for any tree question. Most marks are lost by discounting at the wrong rate or by mishandling the coupon.

  1. 1Read the vignette and list what is given: the tree rates (or spot rates and σ), coupon, par value, maturity and any call or put dates and prices.
  2. 2If the tree is not given, build it. Use the first-year rate as the root, then use r_H = r_L × e^(2σ) and the calibration condition so the tree reprices the benchmark zero or par bond.
  3. 3Draw the tree and write the one-period rate at every node. Label the nodes by date.
  4. 4Fill in the cash flow at maturity: par plus the final coupon, at every final node.
  5. 5Move back one date. At each node, discount at that node's own rate the average of the two next values, each including the coupon paid at that next date.
  6. 6If the bond has an option, check each exercise date. Compare the ex-coupon node value with the call or put price and replace it if the option is exercised. Then continue back.
  7. 7Read off the value at the root. For option value, repeat the calculation without the option and take the difference.
  8. 8Sanity check: a callable value should not exceed the straight value, and a putable value should not be below it.

Quickest way: Node-by-node table method

When to use it: Use when the tree is given and you need a bond value within about two minutes.

  1. Write the nodes as a list from the top rate to the bottom rate for the last period before maturity.
  2. Compute (Par + Coupon) ÷ (1 + r) for each node. These are the ex-coupon values.
  3. Add the coupon to each value, average adjacent pairs, and divide by the rate of the node they came from.
  4. Apply any call or put cap or floor to the ex-coupon values before adding the coupon.
  5. Stop at the root and check it against the straight bond. The difference should have the right sign for the option.

Common mistakes in Arbitrage-Free Valuation and Binomial Interest Rate Tree

  • Discounting at the wrong rate at a node

    Each node shows the one-period rate for the period that starts at that node. Students instead use the rate from the nodes they just came from.

    Fix: The rate at a node is the one-period rate for the period starting at that node. Use it to discount the next-date values back to that node. Match each value to the node you are computing.

  • Forgetting to add the coupon before averaging

    Students average the node values and add the coupon only once at the end.

    Fix: Add the coupon to both next-period values, then average and discount. The coupon at date t is paid at both nodes at date t.

  • Comparing the cum-coupon value to the call price

    The value after adding the coupon looks like the bond price, so it is compared to the call price.

    Fix: Compare the ex-coupon value with the call or put price, as is standard in the curriculum. Then add the coupon when moving back.

  • Using the wrong volatility link between nodes

    Students use r_L × e^σ or r_L × (1 + σ) instead of r_L × e^(2σ).

    Fix: The adjacent nodes are 2σ apart in log terms. Use r_H = r_L × e^(2σ) for neighbours.

  • Believing higher volatility changes an option-free bond value

    Students think a wider tree must change the price.

    Fix: If the tree is recalibrated to the same curve, the option-free value stays the same. Volatility changes only the value of the embedded option, so callable and putable values change.

  • Valuing the callable bond above the straight bond

    The call cap is applied at the wrong nodes or the wrong direction (max instead of min).

    Fix: A call can only lower the bond's value for the holder. Use min for calls, max for puts, and check the sign of the result.

Worked examples

Example 1

Vignette: An analyst values a 2-year, 4% annual-coupon bond with par of 100. The one-year rate today is 3.00%. The tree shows one-year rates one year from now of 4.40% (upper node) and 3.60% (lower node). Treat these tree rates as given for this exercise; they are not derived from a stated volatility. The bond is callable in one year at 100 (ex-coupon). Questions: (1) What is the value of the straight bond at the upper node in one year, ex-coupon? (2) What is today's value of the straight bond? (3) What is today's value of the callable bond and the call option?

Show the solution
  1. Maturity cash flow is 104 at each node in year 2.
  2. (1) Upper node ex-coupon value: 104 ÷ 1.044 = 99.617. Lower node: 104 ÷ 1.036 = 100.386.
  3. (2) Add the year-1 coupon of 4 to each: 103.617 and 104.386. Average = (103.617 + 104.386) ÷ 2 = 104.0015. Discount at 3.00%: 104.0015 ÷ 1.03 = 100.972.
  4. (3) Check the call at year 1. At the upper node, 99.617 is below 100, so no call. At the lower node, 100.386 is above 100, so the issuer calls and the ex-coupon value becomes 100.
  5. Callable: add coupon to get 103.617 and 104. Average = 103.8085. Discount: 103.8085 ÷ 1.03 = 100.785 (about 100.78 to two decimals).
  6. Call option value = 100.972 − 100.785 = 0.187, about 0.19.

Answer: (1) 99.62. (2) 100.97. (3) The callable bond is worth about 100.78 and the call option is worth about 0.19.

Example 2

Vignette: An analyst builds a tree for annual rates. The one-year spot rate is 3.00% and the two-year spot rate is 3.50%. Volatility is 10%. The calibrated rates one year from now are 3.605% (lower) and 4.403% (upper), rounded to three decimals. Questions: (1) Are the two year-1 rates consistent with σ = 10%? (2) Does the tree reprice the two-year zero-coupon bond? (3) If volatility is raised to 20% and the tree is recalibrated to the same spot curve, what happens to the value of a 2-year option-free bond?

Show the solution
  1. (1) The ratio of the rates is 4.403 ÷ 3.605 = 1.2214. And e^(2 × 0.10) = e^0.20 = 1.2214. So the two rates are consistent with σ = 10%.
  2. (2) The market price of the two-year zero is 1 ÷ 1.035² = 1 ÷ 1.071225 = 0.93351.
  3. Tree price: year-1 node values are 1 ÷ 1.04403 = 0.95783 and 1 ÷ 1.03605 = 0.96520.
  4. Average = (0.95783 + 0.96520) ÷ 2 = 0.96152. Discount at 3.00%: 0.96152 ÷ 1.03 = 0.93351.
  5. The tree price matches the market price to within rounding, because the year-1 rates are rounded to three decimals. So the tree reprices the zero.
  6. (3) An option-free bond has fixed cash flows. A recalibrated tree still reprices the same benchmark curve, so its value is unchanged. Only values of bonds with embedded options change.

Answer: (1) Yes, the ratio is about 1.2214, which equals e^0.20. (2) Yes, the tree price is about 0.9335, matching the market price to within rounding. (3) The value of the option-free bond does not change.

Exam tips

  • Look at the vignette for a rate tree exhibit first. Many questions can be answered from it without any building.
  • Always label which node and which date a value belongs to. Most errors come from mixing up nodes.
  • When a call or put price is given, check whether it is compared to the ex-coupon value. Apply the cap or floor before adding the coupon.
  • If the question asks about volatility, think about the option. Option-free value does not change; callable value falls and putable value rises when volatility rises.
  • Check your answer against the straight bond. Callable should be at or below it, putable at or above it. It takes five seconds and catches sign errors.

Arbitrage-Free Valuation and Binomial Interest Rate Tree in other exams

The same ground in other exams, if you are preparing for more than one or want another angle on it.

Arbitrage-Free Valuation and Binomial Interest Rate Tree: frequently asked questions

Why do we use a binomial interest rate tree instead of spot rates?

Spot rates work for bonds with fixed cash flows. For bonds with embedded options, the cash flow depends on future interest rates, so you need possible rate paths. The tree gives those paths while still matching today's benchmark curve.

What does it mean for the tree to be arbitrage-free?

The tree is calibrated so it reprices the benchmark bonds at their market prices. This means any bond you value on it is priced consistently with the market curve, so there is no risk-free profit between the bond and the benchmarks.

How does backward induction work for bond valuation?

You start at maturity, where the cash flow is known. At each earlier node you add the coupon to the two next-period values, average them, and discount at that node's one-period rate. You repeat until you reach the first node.

How does interest rate volatility affect bond value?

A higher volatility makes the tree wider and raises the value of embedded options. That lowers the value of a callable bond and raises the value of a putable bond. An option-free bond on a tree recalibrated to the same curve does not change in value.