Why Fractional Coupon Periods Need Care
A bond is often valued on a date that falls between coupon dates. Its next coupon is then less than one full coupon period away, and each later payment is separated by a full period. To calculate price and Macaulay duration, the time used for each cash flow must reflect that schedule. A whole-period timeline applied from the valuation date shifts every payment and changes both the present-value weights and the duration.
The key is to state the convention before calculating. Under the fractional-period convention used here, a yield quoted as a nominal annual rate convertible \(m\) times per year is divided by \(m\) to obtain the yield per coupon period. A cash flow due in \(t\) coupon periods is discounted by raising the per-period accumulation factor to the fractional power \(t\). This is a specified valuation convention; it should not be silently substituted for another convention given in a problem.
Discounting and Duration Under the Fractional-Period Convention
The dirty price is the full value of the remaining promised cash flows at the valuation date, before subtracting accrued interest to form a clean quote. In the formula below, \(C_k\) is the payment at time \(t_k\), and \(P\) is the dirty price. The yield and the cash-flow times must use compatible units: a per-coupon-period yield goes with times measured in coupon periods.
Macaulay duration is the present-value-weighted average of the payment times. If coupons are paid \(m\) times per year, a time of \(t_k\) coupon periods is \(t_k/m\) years. Therefore, convert the duration to years by dividing the duration in periods by \(m\). If the yield is instead an effective annual yield \(i\), and times are stated in years, discount a payment at time \(s_k\) years by \((1+i)^{-s_k}\); the resulting duration is already in years.
Measure each remaining payment’s time from the valuation date. If the next coupon is \(\alpha\) periods away, later coupon times advance from \(\alpha\) by whole periods.
For a nominal annual yield convertible \(m\) times per year, use the per-period yield \(j=i^{(m)}/m\).
Discount each cash flow using its own fractional time, then add the present values to obtain the dirty price.
Divide the sum of time multiplied by present value by the dirty price. Convert periods to years only after finding duration in periods.
Worked Calculations
Worked Example: A Semiannual Bond Valued Between Coupon Dates
A hypothetical semiannual bond has two remaining payments: $30 in \(0.25\) coupon periods and $1,030 in \(1.25\) coupon periods. Its nominal annual yield is \(i^{(2)}=12\%\), convertible semiannually. Find its dirty price and Macaulay duration in years using the fractional-period convention.
Method. The yield per half-year is \(j=0.12/2=0.06\). Keep the stated fractional times: the two payments are \(0.25\) and \(1.25\) periods from the valuation date.
Adding the present values gives \(P\approx 29.5661+957.6458=\$987.2119\), or \(\$987.21\) to the nearest cent. The time-weighted present-value total is
Therefore, duration is \(1204.4488/987.2119\approx 1.2201\) coupon periods. With two coupon periods per year, the duration is \(1.2201/2\approx 0.6100\) years. The price check is that the two discounted cash flows add to the dirty price used in the denominator. A common mistake is to use a whole-period exponent for the first payment; that would not represent the stated time of \(0.25\) periods.
Worked Example: Quarterly Payments at Fractional Times
A hypothetical quarterly bond has three remaining payments: $12 at \(0.5\) periods, $12 at \(1.5\) periods, and $512 at \(2.5\) periods. Its nominal annual yield is \(i^{(4)}=8\%\), convertible quarterly. Find duration in coupon periods and years.
Method. The quarterly yield is \(j=0.08/4=0.02\). Discount each payment at its stated fractional time:
The dirty price is \(11.8818+11.6488+487.2698=\$510.8004\) (using the unrounded values, approximately \(\$510.80\)). The time-weighted total, retaining the displayed present values, is
Thus the duration is approximately \(1241.5886/510.8004=2.4307\) coupon periods, or \(2.4307/4=0.6077\) years. The larger final payment has the largest influence on the weighted average, but the smaller earlier coupons still contribute. Avoid multiplying the duration by four when converting periods to years: the correct conversion is division by four.
Worked Example: A Quote and a Consistent Cash-Flow Price
A hypothetical semiannual bond has two remaining payments, $20 in \(0.5\) periods and $1,020 in \(1.5\) periods. The nominal annual yield is \(i^{(2)}=8\%\), convertible semiannually. Under the specified fractional-period convention, calculate its dirty price and duration. Then, if accrued interest is $8.33, state the corresponding clean price to the nearest cent.
Method. The yield per half-year is \(0.08/2=0.04\). The two discount factors are \((1.04)^{-0.5}\approx0.9805807\) and \((1.04)^{-1.5}\approx0.9428660\). Therefore,
The time-weighted total is \(0.5(19.6116)+1.5(961.7233)\approx9.8058+1442.5850=1452.3908\). Duration is \(1452.3908/981.3349\approx1.4800\) coupon periods, which is \(1.4800/2=0.7400\) years. The clean price is the dirty price less accrued interest: \(\$981.3349-\$8.33=\$973.0049\), or \(\$973.00\) to the nearest cent. The cash-flow price is the dirty price; accrued interest is not an additional future payment in the duration calculation.
The consistency check is that the present values imply a dirty price of about $981.33, and adding the stated accrued interest to the rounded clean quote recovers about $981.33. A quote, yield, and set of cash flows should not be combined if they imply materially different dirty prices under the stated convention.
Price Quotes, Time Units, and Limits of the Convention
When a bond is quoted with a clean price, accrued interest is added to obtain the dirty price represented by the quote. Macaulay duration uses present-value weights based on the full price of the remaining cash flows, not a clean quote by itself. In a problem that supplies both cash flows and yield, first calculate the dirty price from the cash flows. If a separate quote is also supplied, check whether it agrees after applying the stated accrued interest. If it does not, the inputs are inconsistent under that valuation convention.
Fractional-period discounting also depends on the exact convention specified. Under the convention in this tutorial, time is measured in coupon periods and the discount factor is \((1+j)^{-t}\). If a problem instead specifies an effective annual yield with time in years, use annual discounting at those year fractions. Do not treat a nominal annual rate as if it were already the per-period yield, and do not switch conventions midway through a calculation.
This distinction matters because duration is an average of the times attached to the present-valued cash flows. Changing the timeline changes those times; changing the discount convention changes their weights. Either change can alter the calculated duration, even when the promised payments are unchanged.
Check Your Understanding
For each problem, use the stated fractional-period convention and round final dollar amounts to cents and durations to four decimal places.
- A hypothetical semiannual bond pays $40 in \(0.5\) periods and $1,040 in \(1.5\) periods. Its nominal annual yield is \(i^{(2)}=10\%\), convertible semiannually. Find its dirty price and Macaulay duration in years. (Answer: dirty price \(\$1,005.64\); duration \(1.4612\) periods, or \(0.7306\) years)
- A hypothetical quarterly bond pays $15 in \(0.25\) periods, $15 in \(1.25\) periods, and $515 in \(2.25\) periods. Its nominal annual yield is \(i^{(4)}=8\%\), convertible quarterly. Find its dirty price and duration in years. (Answer: dirty price approximately \(\$522.12\); duration approximately \(2.1648\) periods, or \(0.5412\) years)
- A bond with annual effective yield \(i=4\%\) has remaining payments of $500 in \(0.5\) years and $600 in \(1.5\) years. Using the stated fractional-year times, find its dirty price and Macaulay duration in years. (Answer: dirty price approximately \(\$1,056.01\); duration approximately \(1.0357\) years)
- A hypothetical quarterly bond has payments of $30 in \(0.75\) periods and $1,030 in \(1.75\) periods. Its nominal annual yield is \(i^{(4)}=12\%\), convertible quarterly. Find duration in coupon periods and years. (Answer: approximately \(1.7209\) periods, or \(0.4302\) years)