Tutorials › Exam FM - Financial Mathematics › Valuing Portfolios of Zero-Coupon Bonds

Exam FM · Spot Rates and Discount Factors · Tutorial 685 of 998

Valuing Portfolios of Zero-Coupon Bonds

Learn how to calculate a zero-coupon bond portfolio’s present value by applying the maturity-specific discount factor to each redemption payment.

Intermediate 11 min read

What You'll Learn

  • Match each zero-coupon bond’s redemption payment to the discount factor for its own maturity.
  • Calculate a portfolio value from bond quantities, redemption amounts, and supplied spot discount factors.
  • Combine positions with the same maturity before valuing them.
  • Include short positions as negative amounts in a net portfolio value.
  • Identify why one discount rate generally cannot value payments at several maturities.

Why Maturity-Specific Valuation Matters

A portfolio of zero-coupon bonds can have payments due at several different dates. Each bond makes one redemption payment at maturity, so valuing the portfolio means discounting each payment from its own maturity back to the valuation date. The key discipline is to match each redemption amount to the discount factor for that payment’s maturity, rather than applying one rate indiscriminately to the entire portfolio.

This approach is useful whenever a portfolio contains bonds with different maturities, different redemption amounts, or multiple holdings of the same bond. It also provides a direct way to check that a total value has been assembled consistently: each component of the sum must be a present value at the same valuation date.

Definition: A zero-coupon bond pays no coupons and makes a single redemption payment at its maturity. A portfolio’s present value at time 0 is the sum of the present values of all its redemption payments. For a position that is short rather than long, its payment and present value enter the portfolio total with a negative sign.

Discount Each Redemption at Its Own Maturity

Let \(C_t\) be the redemption amount payable at time \(t\), measured in years from the valuation date. Let \(D(0,t)\) be the time-0 discount factor for a payment at time \(t\). The discount factor states the present value of one unit payable at that maturity. If an annual effective spot rate \(i_t\) is supplied for maturity \(t\), then, under annual compounding, \(D(0,t)=(1+i_t)^{-t}\). A discount factor supplied directly can be used without first converting it to a spot rate.

Suppose a portfolio contains bonds at maturities \(t_1,t_2,\ldots,t_n\), and let \(C_{t_j}\) denote the portfolio’s net redemption amount at maturity \(t_j\). The net amount includes all long and short positions due at that date.

$$ V_0=\sum_{j=1}^{n} C_{t_j}D(0,t_j) $$

The formula assumes a common valuation date, known redemption amounts and payment dates, and discount factors that apply to the relevant payments. It values the contractual redemption cash flows; it does not adjust for a possibility that a bond fails to pay. A short position is treated as a negative cash flow in this calculation. If several bonds mature on the same date, their signed redemption amounts can be added before applying that date’s discount factor.

Key result: The present value of a portfolio of zero-coupon bonds is the sum, over distinct maturities, of the net redemption amount at each maturity multiplied by that maturity’s discount factor. A different maturity generally has a different discount factor.

Why the Portfolio Formula Holds

The formula follows from the meaning of a discount factor and the additivity of present values. By definition, \(D(0,t)\) is the time-0 value of one unit paid at time \(t\). A payment of \(C_t\) units at that date therefore has present value \(C_tD(0,t)\): scaling the payment by \(C_t\) scales its value by the same amount. The value of a portfolio is the sum of the values of its components, so adding those discounted amounts across all maturities gives the portfolio value.

The same reasoning explains why payments at different maturities must not be merged before discounting. Their payment dates determine which discount factors apply. Cash flows may be combined first only when they are due on the same date and therefore use the same discount factor.

$$ \begin{aligned} \text{Value of payment }C_{t_j}\text{ at }t_j &=C_{t_j}D(0,t_j),\\ \text{Portfolio value} &=\sum_{j=1}^{n} C_{t_j}D(0,t_j). \end{aligned} $$

A Reliable Valuation Process

A short schedule helps prevent maturity mix-ups. Record the net redemption amount and the corresponding discount factor on the same row, then calculate and add the row values. If the portfolio is described in numbers of bonds rather than in redemption amounts, first multiply each position’s quantity by its redemption amount per bond.

1
Set the valuation date and list maturities.
Express each payment date as a time from the valuation date, using the units associated with the supplied discount factors.
2
Find net redemption amounts.
For each bond, multiply its signed quantity by its redemption amount per bond. Add amounts due at the same maturity.
3
Match each amount to its discount factor.
Use \(D(0,t)\) for a payment due at time \(t\), not the factor for another maturity.
4
Calculate and sum present values.
Multiply each net redemption amount by its factor, retain negative signs for short positions, and add the results.

Worked Example: Three Redemption Dates

A fund holds two zero-coupon bonds redeeming \$1,000 each in one year, three bonds redeeming \$500 each in two years, and one bond redeeming \$2,000 in three years. The discount factors are \(D(0,1)=0.96\), \(D(0,2)=0.90\), and \(D(0,3)=0.80\). Find the portfolio’s present value at time 0. The stated factors are assumed to apply to these payments.

Method. Calculate the total redemption amount at each maturity, multiply it by that maturity’s discount factor, and add the present values.

At one year, the total redemption is \(2\times \$1{,}000=\$2{,}000\). Its present value is \(\$2{,}000\times0.96=\$1{,}920\).

At two years, the total redemption is \(3\times \$500=\$1{,}500\). Its present value is \(\$1{,}500\times0.90=\$1{,}350\).

At three years, the total redemption is \(1\times \$2{,}000=\$2{,}000\). Its present value is \(\$2{,}000\times0.80=\$1{,}600\).

$$ V_0=\$1{,}920+\$1{,}350+\$1{,}600=\$4{,}870 $$

The portfolio is worth \$4,870 at time 0. As a check, the three present values correspond respectively to payments at one, two, and three years; none was discounted using another maturity’s factor. The common mistake this method avoids is applying one of the three factors to the entire \$5,500 of future redemptions.

Worked Example: Combining Holdings at the Same Maturity

An investor owns three bonds with \$1,000 redemption each at one year and two bonds with \$500 redemption each at one year. The investor also owns four bonds with \$1,000 redemption each at two years and two bonds with \$500 redemption each at two years. Finally, the investor owns six bonds with \$500 redemption each at three years. The discount factors are \(0.98\), \(0.92\), and \(0.85\) at one, two, and three years, respectively. Find the total present value.

Method. First aggregate all redemptions by maturity; then apply the factor for that maturity. This avoids valuing each holding with a factor that belongs to a different date.

At one year, the redemptions total \(3\times \$1{,}000+2\times \$500=\$3{,}000+\$1{,}000=\$4{,}000\). The present value is \(\$4{,}000\times0.98=\$3{,}920\).

At two years, they total \(4\times \$1{,}000+2\times \$500=\$4{,}000+\$1{,}000=\$5{,}000\). The present value is \(\$5{,}000\times0.92=\$4{,}600\).

At three years, they total \(6\times \$500=\$3{,}000\). The present value is \(\$3{,}000\times0.85=\$2{,}550\).

$$ V_0=\$3{,}920+\$4{,}600+\$2{,}550=\$11{,}070 $$

The portfolio’s present value is \$11,070. The total redemption amount is \(\$4{,}000+\$5{,}000+\$3{,}000=\$12{,}000\), which exceeds the present value because each supplied discount factor is below 1. This is a useful arithmetic check, not a substitute for checking that each factor was paired with the correct maturity.

Worked Example: A Portfolio with a Short Position

A dealer’s net portfolio consists of a long position in zero-coupon bonds with total redemption of \$6,000 at two years, a short position in bonds with total redemption of \$2,000 at three years, and a long position in bonds with total redemption of \$5,000 at four years. The discount factors at those maturities are \(0.94\), \(0.86\), and \(0.75\), respectively. Find the net present value.

Method. Use signed redemption amounts: positive for long positions and negative for the short position. Discount each signed amount at its own maturity.

The two-year long position has present value \(\$6{,}000\times0.94=\$5{,}640\).

The three-year position is short, so its signed redemption amount is \(-\$2{,}000\). Its contribution to present value is \(-\$2{,}000\times0.86=-\$1{,}720\).

The four-year long position has present value \(\$5{,}000\times0.75=\$3{,}750\).

$$ V_0=\$5{,}640-\$1{,}720+\$3{,}750=\$7{,}670 $$

The net present value is \$7,670. The short position reduces the portfolio value because it represents a future payment obligation. Omitting the minus sign would give \(\$11{,}110\), which is not the value of the stated net portfolio.

Common Traps and Checks

The most consequential error is to treat a set of maturity-specific discount factors as though they were one common rate. For example, in the first worked example, incorrectly applying the one-year factor \(0.96\) to all \$5,500 of redemptions gives \(\$5{,}500\times0.96=\$5{,}280\). The correct value is \$4,870 because the payments occur at three different maturities and require factors \(0.96\), \(0.90\), and \(0.80\), respectively.

Other errors often arise before the discounting begins. A bond’s redemption amount is not its number of units: multiply the quantity held by the redemption per bond. Also check whether portfolio positions are long or short, and ensure that each maturity is measured from the stated valuation date in the same time units used for its factor. If discount factors are supplied, do not convert them into rates and back unless the problem requires it; unnecessary conversions can introduce rounding error.

  • Wrong maturity: Pairing a two-year payment with a three-year factor changes its present value.
  • Unaggregated units: Forgetting to multiply the redemption per bond by the number of bonds understates or overstates the cash flow.
  • Lost sign: A short position is an obligation in the net portfolio and must reduce its value.
  • Premature rounding: Keep full precision if factors or intermediate values are not exact, and round the final monetary result as requested.

The method is aligned with the SOA Exam FM (Financial Mathematics) syllabus: identify the actual payment dates, match each cash flow to its spot discount factor, and add the resulting present values. A portfolio’s total value is not found by averaging maturity rates or by choosing a single convenient factor.

Check Your Understanding

For each problem, aggregate amounts due at the same maturity and use the stated discount factors.

  1. A portfolio contains two zero-coupon bonds redeeming \$1,000 each in one year and three bonds redeeming \$500 each in two years. The factors are \(D(0,1)=0.95\) and \(D(0,2)=0.88\). Find its present value. (Answer: \$3,220)
  2. A portfolio has a \$4,000 redemption at one year and a \$2,500 redemption at three years. The respective discount factors are \(0.97\) and \(0.82\). Find its present value. (Answer: \$5,930)
  3. A portfolio is long \$6,000 redemption at two years, short \$2,000 redemption at three years, and long \$5,000 redemption at four years. The respective factors are \(0.94\), \(0.86\), and \(0.75\). Find its net present value. (Answer: \$7,670)
  4. A portfolio contains four bonds redeeming \$500 each at one year and two bonds redeeming \$1,000 each at two years. The factors are \(0.96\) and \(0.90\). Find the portfolio’s present value. (Answer: \$3,720)
  5. A fund holds a long position with \$2,500 redemption at one year and a short position with \$1,000 redemption at three years. The discount factors are \(0.96\) and \(0.81\). Find the net present value. (Answer: \$1,590)
Clinical Biostats