CFA Level II · CFA Level II Exam
Valuation and Analysis of Bonds with Embedded Options: formula sheet
Key formulas
- Callable bond value
- V(callable) = V(straight) − V(call option)
- The call belongs to the issuer, so it is subtracted. Callable value is never above the straight bond value.
- Putable bond value
- V(putable) = V(straight) + V(put option)
- The put belongs to the investor, so it is added. Putable value is never below the straight bond value.
- Convertible bond value
- V(convertible) = V(straight) + V(call option on issuer's stock)
- The holder owns the equity call. Valuation of the straight bond uses the yield for a comparable non-convertible bond.
- Capped FRN value
- V(capped FRN) = V(FRN) − V(cap)
- The cap benefits the issuer and limits coupons when the reference rate rises.
- Floored FRN value
- V(floored FRN) = V(FRN) + V(floor)
- The floor benefits the investor and guarantees a minimum coupon when the reference rate falls.
- Value of the option (implied)
- V(call) = V(straight) − V(callable); V(put) = V(putable) − V(straight)
- Use these to back out the option value from two bond prices.
- Conversion value
- Conversion value = market price per share × conversion ratio
- The value of the shares received if the holder converts now.
- Volatility effect
- Higher interest rate volatility → higher value of calls, puts, caps and floors. Higher share price volatility → higher value of the conversion option.
- Higher interest rate volatility lowers a callable bond and a capped FRN, and raises a putable bond and a floored FRN. Higher share price volatility raises a convertible bond. Do not mix the two types of volatility.
- Lognormal relationship between adjacent rates
- r_H = r_L × e^(2σ)
- Applies to two neighbouring nodes at the same date. σ is the annualised volatility of the one-period rate.
- Rates across a date with n+1 nodes
- r(j) = r_lowest × e^(2jσ), for j = 0, 1, ..., n
- For example at t = 2 with three nodes: r_LL, r_LH = r_LL × e^(2σ), r_HH = r_LL × e^(4σ).
- Backward induction at a node
- V_node = 0.5 × [(V_H + C) ÷ (1 + r_node) + (V_L + C) ÷ (1 + r_node)]
- V_H and V_L are next-date values excluding that date's coupon C. At maturity, V is the principal and C is the final coupon, so the final cash flow is principal plus coupon.
- Calibration condition
- Tree value of benchmark bond = market price of benchmark bond
- Par bonds on the par curve must be worth par in the tree. This is what makes the tree arbitrage-free.
- Probabilities
- P(up) = P(down) = 0.5
- Assumed at every node in the standard CFA tree.
- Callable bond value
- V(callable) = V(straight) − V(call option)
- The investor is short the call, so the call value is subtracted. The callable bond value is never above the straight bond value.
- Putable bond value
- V(putable) = V(straight) + V(put option)
- The investor is long the put, so the put value is added. The putable bond value is never below the straight bond value.
- Option value from the tree
- V(call) = V(straight) − V(callable); V(put) = V(putable) − V(straight)
- Value both bonds on the same tree and take the difference. Use this form when the question gives you a tree.
- Backward induction at a node
- V = 0.5 × [(V_up + C) ÷ (1 + i)] + 0.5 × [(V_down + C) ÷ (1 + i)]
- V_up and V_down are next-period node values after any exercise adjustment. C is the coupon paid at the next date. i is the one-period rate at this node. The 0.5 weights assume equal up and down probabilities.
- Call exercise rule
- Node value = min(computed value, call price)
- Apply at each node on or after a date when the bond is callable. Use the value excluding the coupon paid at that date.
- Put exercise rule
- Node value = max(computed value, put price)
- Apply at each node on or after a date when the bond is putable.
- Definition of OAS
- Model value (tree rates + OAS, option exercised optimally) = Market price
- Add the same spread to every one-period forward rate at every node, then solve for the spread by trial and error or interpolation.
- Option cost
- Option cost = Z-spread − OAS
- Positive for callable bonds, negative for putable bonds, about zero for option-free bonds.
- Callable and putable value
- Callable bond value = Straight bond value − Call option value; Putable bond value = Straight bond value + Put option value
- Used to see why a callable bond's OAS is below its Z-spread and a putable bond's OAS is above.
- Node value in the tree
- Value at node = [0.5 × (V_up + C) + 0.5 × (V_down + C)] ÷ (1 + r + OAS)
- C is the coupon at the next date. Callable: cap value at call price. Putable: floor value at put price. Apply the cap or floor before discounting further back.
- Spread versus value
- Higher spread → lower model value
- If model value is above market price, raise the spread. If below, lower it.
- Relative value rule
- OAS > required OAS → cheap; OAS < required OAS → rich
- Compare with bonds of similar credit quality and liquidity.
- Effective duration
- EffDur = (PV₋ − PV₊) ÷ (2 × ΔCurve × PV₀)
- PV₋ is the price when the benchmark curve falls by ΔCurve. PV₊ is the price when it rises by ΔCurve. ΔCurve is in decimals, so 25 bps = 0.0025.
- Effective convexity
- EffCon = (PV₋ + PV₊ − 2 × PV₀) ÷ (ΔCurve² × PV₀)
- A negative result means negative convexity. Use the same ΔCurve as in the duration formula.
- Price change approximation
- %ΔPV ≈ (−EffDur × ΔCurve) + (½ × EffCon × ΔCurve²)
- ΔCurve carries its sign, so it is negative for a fall. The convexity term does not change sign with the direction of the move.
- Down-curve (one-sided) duration
- (PV₋ − PV₀) ÷ (ΔCurve × PV₀)
- Measures sensitivity to falling rates only.
- Up-curve (one-sided) duration
- (PV₀ − PV₊) ÷ (ΔCurve × PV₀)
- Measures sensitivity to rising rates only. The average of the two one-sided durations equals the effective duration.
- Option value relationships
- Callable = Straight − Call value; Putable = Straight + Put value
- Use these to explain why callable bonds have lower price gains when yields fall and putable bonds have a price floor.
- Duration versus a straight bond
- EffDur(callable) ≤ EffDur(straight); EffDur(putable) ≤ EffDur(straight)
- Holds for otherwise similar bonds. The option shortens the effective life in the scenario where it is valuable.
- Key rate duration
- KRD_k = (PV₋ − PV₊) ÷ (2 × PV₀ × Δy_k)
- PV₋ and PV₊ are prices after the key rate falls or rises by Δy_k, other key rates unchanged. Express Δy_k as a decimal, e.g. 0.0001 for one basis point.
- Sum of key rate durations
- Effective duration ≈ Σ KRD_k
- The sum approximates effective duration, which is defined for a parallel shift; use individual KRDs for non-parallel shifts.
- Price change from a shift in one key rate
- %ΔPrice ≈ −KRD_k × Δy_k
- For several shifts, add the effects: %ΔPrice ≈ −Σ (KRD_k × Δy_k).
- Callable bond value
- V_callable = V_option-free − V_call
- The issuer holds the call, so the investor's bond is worth less.
- Putable bond value
- V_putable = V_option-free + V_put
- The investor holds the put, so the bond is worth more.
- Effective duration
- (PV₋ − PV₊) ÷ (2 × PV₀ × Δcurve)
- Uses a parallel shift of the benchmark curve with the OAS held constant.
- Capped FRN value
- Capped FRN = Straight FRN − Σ Caplets
- The investor is short the caplets. The issuer holds the cap. Value falls versus the straight FRN.
- Floored FRN value
- Floored FRN = Straight FRN + Σ Floorlets
- The investor is long the floorlets. Value rises versus the straight FRN.
- Cap and floor together (collar)
- Collared FRN = Straight FRN − Σ Caplets + Σ Floorlets
- Use this when the note has both a maximum and a minimum coupon.
- Caplet payoff (per period)
- Notional × max(0, reference rate − cap rate) × period fraction
- Paid at the end of the period, with the rate set at the start. Discount it back to today.
- Floorlet payoff (per period)
- Notional × max(0, floor rate − reference rate) × period fraction
- Paid at the end of the period, with the rate set at the start. Discount it back to today.
- Conversion value
- Conversion value = Market price of share × Conversion ratio
- The value if converted now. Conversion ratio is the number of shares per bond.
- Minimum value of a convertible
- Minimum value = Max(Conversion value, Straight value)
- Market price should not stay below this level. Straight value is the PV of the bond's cash flows at a comparable straight-bond yield.
- Convertible bond value
- Convertible value = Straight value + Value of call option on the stock
- Applies when there are no other embedded options. If the issuer can call, subtract the issuer call value; if the holder can put, add the put value.
- Market conversion price
- Market conversion price = Market price of convertible ÷ Conversion ratio
- The effective price per share paid when buying the stock via the bond.
- Market conversion premium per share
- Premium per share = Market conversion price − Current market price of share
- The extra amount paid per share compared with buying the stock directly.
- Market conversion premium ratio
- Premium ratio = Market conversion premium per share ÷ Current market price of share
- Expressed as a percentage of the share price.
- Premium over straight value
- Premium over straight value = (Market price of convertible ÷ Straight value) − 1
- A measure of downside risk: a low figure means the price sits close to the bond floor.
- Favourable income differential per share
- (Coupon interest per bond − Conversion ratio × Dividend per share) ÷ Conversion ratio
- Income advantage of holding the bond over the stock, per share.
- Premium payback period
- Payback period = Market conversion premium per share ÷ Favourable income differential per share
- Years of extra income needed to recover the premium. Ignores time value of money.
Quick revision
- Callable bond value = straight bond value − value of the call option.
- Putable bond value = straight bond value + value of the put option.
- Backward induction: start at maturity, discount each node's value, add coupon, apply the exercise rule, and move back.
- The issuer calls when the bond's value at a node is above the call price. The investor puts when it is below the put price.
- OAS is the constant spread added to all tree rates that makes the model value equal the market price.
- Zero-volatility spread minus OAS equals the option cost in spread terms, for a callable bond.
- Effective duration = (PV₋ − PV₊) ÷ (2 × PV₀ × Δcurve), where PV₋ and PV₊ are values after a curve shift down and up.
- Effective convexity = (PV₋ + PV₊ − 2 × PV₀) ÷ (PV₀ × Δcurve²).
- A callable bond shows negative convexity when rates are low, as price gains are limited by the call.
- A putable bond has positive convexity, and its price is floored near the put price.
- A capped floater is worth less than an uncapped one, and a floored floater is worth more.
- Convertible value is at least the greater of straight bond value and conversion value.
Common mistakes
- Adding the call option value to a callable bond's price. Fix: The issuer owns the call. The investor is short it, so subtract it. Always ask who owns the option first.
- Saying a putable bond has a higher yield than a comparable straight bond. Fix: The put is a benefit to the investor, so the investor accepts a lower yield. Callable bonds have higher yields. Putable and convertible bonds have lower yields.
- Using spot rates or YTMs as the node rates Fix: Nodes hold one-period forward rates. Spot rates only serve as calibration targets or as a check on the final value.
- Forgetting to add the coupon at each step Fix: At every node use (next value + coupon) before discounting. At maturity the final node cash flow is principal plus coupon.
- Applying the call price as a floor and the put price as a cap Fix: The issuer calls when the bond is worth more than the call price, so the call price is a cap. The investor puts when the bond is worth less than the put price, so the put price is a floor. Callable uses min, putable uses max.
- Adding the call option value to the straight bond price Fix: The investor is short the call. Callable value = straight value − call value. Only the put is added.
- Adding the spread to spot rates instead of tree rates when finding OAS. Fix: OAS goes on every one-period rate in the binomial tree. Z-spread goes on the spot curve with fixed cash flows.
- Leaving out the time-zero rate when adding the spread. Fix: Add the spread to every rate, including today's one-period rate, then discount from the root.
- Using the yield to maturity change instead of the benchmark curve shift in the effective duration formula. Fix: Effective duration uses a parallel shift in the benchmark curve, with the bond repriced by the model. Cash flows can change.
- Entering basis points directly, for example 25 instead of 0.0025. Fix: Convert to decimals before you substitute. A duration of several hundred means you forgot to convert.
Exam tips
- Start every question by writing who owns the option. The sign of the whole answer follows from that.
- Memorise the direction checks: callable ≤ straight, putable ≥ straight. Use them to remove wrong options fast.
- Read the vignette for call dates, call price and the issuer's refinancing view. Questions often hinge on whether calling is likely in a falling-rate scenario.
- For convertibles, note which yield was used for the straight bond. Questions test whether you separate straight value from option value.
- There is no penalty for wrong answers, so answer every question, even when you are short of time.
- Expect the tree to be given in the vignette. Most questions ask for a node value or the time-0 value, so practise fast backward induction.
- Learn the e^(2σ) link between adjacent nodes. A common question asks for a missing rate at a node.
- Always add the coupon before discounting. Check this first if your price is off by a small amount.