• Home
  • docs
  • Bonds
  • How do I calculate the Macaulay duration of a zero-coupon bond in Excel?
A:

The resulting Macaulay duration of a zero-coupon bond is equal to the time to maturity of the bond. A zero-coupon bond is a type of fixed-income security that does not pay interest on the principal amount. However, to compensate for the lack of coupon payment, a zero-coupon bond typically trades at a discount, and traders and investors can profit at its maturity date, when the bond is redeemed at its face value.

The Macaulay duration is calculated by adding up the coupon payment per period multiplied by the time to maturity divided by 1 plus the yield per period raised to the time to maturity. Then, the resulting value is added to the total number of periods multiplied by the bond’s par value divided by 1 plus the yield per period raised to the total number of periods. The resulting value is divided by the current bond price.

For example, assume you hold a two-year zero-coupon bond with a par value of $10,000 and a yield of 5%, and you want to calculate the duration on Excel. In column A and B, right-click on the columns and select Column Width… and change the value to 30 for both columns. Next, enter “Par Value”, “Yield”, “Coupon Rate”, “Time to Maturity” and “Macaulay Duration” into cells A2 through A6.

In cells B2 through B5, enter “=10000”, “=0.05”, “=0” and “=2”, respectively. In cell B6, enter the formula “=(B4 + (B5*B2)/(1+B3)^1) / ((B4 + B2)/(1+B3)^1)”. Since a zero-coupon bond only has one cash flow and does not pay any coupons, the resulting Macaulay duration is 2.