Skip to content
All library documents

Bootstrapping Zero Rates from Semiannual Coupon Bond Prices

Article Quant Q&A · Author: user76458

Summary

The document explains how to infer zero rates sequentially from bond prices under a piecewise-constant rate assumption. For the first one-year bond, it discounts the half-year coupon and the year-end coupon plus principal using one unknown rate, then sets their present value equal to the observed price. It suggests solving the resulting nonlinear equation numerically. For a longer bond, the known rate discounts cash flows in the first year, while a new rate is fitted for later cash flows.

This is an instructional exchange rather than a worked numerical solution, and it does not demonstrate a root-finding calculation or discuss compounding conventions beyond continuous discounting. The second-bond hint appears incomplete: with semiannual coupons through a two-year maturity, it omits cash flows at year one and at maturity from its listed coupon schedule. The general sequential bootstrapping idea is useful, but that example should be checked against the bond terms before implementation.

Key ideas

  • A bond price equals the discounted value of its coupon and principal cash flows.
  • A piecewise-constant zero-rate assumption reduces the first bond equation to one unknown rate.
  • The nonlinear first-bond equation can be solved with a numerical root-finding method.
  • Bootstrapping carries rates already inferred for earlier periods into later bond equations.
  • The stated second-bond cash-flow schedule appears to omit semiannual payments and requires correction.

Tags

Full text
# Bootstrap method for determining zero rate


# Bootstrap method for determining zero rate












I'm working on a homework assignment, and am struggling to understand how to set up the equation. I am only asking for help with setting up the equation for the first bond (and a hint for the second) and will attempt the others myself. The question is as follows:

We are given the prices of four bonds with maturities and coupons shown in Table 2. Determine the zero rates R(T) from the prices of these bonds. All bonds pay coupons every six months. The coupon quoted in the table is on an annual basis. Recall that for this type of problem we assume that the zero rate R(T)is piece-wise constant on the time interval between the maturities of the bonds used for bootstrapping. For example, R(T) has the same value for all T : [0, 1Y ], another value for T : (1Y, 2Y ], and so on. This makes the number of unknowns equal to the number of bond prices, which allows us to find a unique solution.

I set up the following equation based upon a bond principal of $100, a maturity of 1 year, a coupon of 2.00%, and a bond price of 97.777:

$1e^{-R(.5)(.5)}+101e^{-R(1)(1)}=97.777$

Being told that R(T) has the same value for all T:[0, 1Y], I simplified to:

$e^{-.5R}+101e^{-R}=97.777$

I am very unsure if I did this correctly. If I did do it correctly, my knowledge of how to solve this type of equation is unfortunately lacking, so some hints or resources would be greatly appreciated!

After determining what R(T) for T:[0,1Y] is equal to, could I use it for the next bond whose maturity is for 2 years (coupon is 3%, bond price $96.890)? Or is R(T) for T:[0,1Y] a different value for this question? I believe I could use it based on the context of the question "the number of unknowns equal to the number of bond prices" (which is 4). Just looking for an opinion on this part, I'm clearly overthinking this! Thank you!

## Answer by Alassane Diallo (score 1)

https://quant.stackexchange.com/a/80749

Equation Setup The present value of the bond's cash flows must equal the bond's price. The equation you set up is correct, but let's clarify it:

- Present value of the first coupon payment:

$$ 1 \cdot e^{-R(0.5) \cdot 0.5} $$

where $R(0.5)$ is the zero rate for the first six months. 2. Present value of the second coupon payment and the principal:

$$ 101 \cdot e^{-R(1) \cdot 1} $$

where $R(1)$ is the zero rate for the one-year period.

Setting this equal to the bond price gives you:

$$ 1 \cdot e^{-R(0.5) \cdot 0.5}+101 \cdot e^{-R(1) \cdot 1}=97.777 $$

Since you assume $R(0.5)=R(1)=R$ (as the zero rate is piece-wise constant for the 1-year period), you simplify it to:

$$ 1 \cdot e^{-0.5 R}+101 \cdot e^{-R}=97.777 $$

This is your equation to solve for $R$.

Solving the Equation To solve for $R$, follow these steps:

- Rearrange the equation:

$$ e^{-0.5 R}+101 \cdot e^{-R}=97.777 $$

- This can be solved numerically or graphically since it may not have an analytical solution. You can use numerical methods such as the Newton-Raphson method or simply trial and error with a calculator or software.

Hint for the Second Bond For the second bond with:







You will need to set up a similar equation but now consider that $R(T)$ will vary for the 1-year and 2-year periods:

- For the first year, you'll use $R$ (found from the first bond).

- For the second year, you will denote it as $R(2)$.

The cash flows for this bond would include:

- Two coupon payments of $\\\$ 1.50$ each (for periods 0.5 and 1.5 years).

- A final payment of $\\\$ 101.50$ at the end of year 2 .

Set up your equation as:

$$ 1.5 \cdot e^{-0.5 R}+1.5 \cdot e^{-1.5 R(2)}+101.5 \cdot e^{-2 R(2)}=96.890 $$

For the second bond, you will indeed use the R you calculated from the first bond for the first half of the equation, but you'll need to find a new zero rate R(2) for the second period (after the first year). Each bond will help you find the subsequent zero rates, so keep track of them as you progress.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.