Investing Answers Building and Protecting Your Wealth through Education Publisher of The Next Banks That Could Fail
Investing Answers Building and Protecting Your Wealth through Education Publisher of The Next Banks That Could Fail

Macaulay Duration

What it is:

The Macaulay duration (named after Frederick Macaulay, an economist who developed the concept in 1938) is a measure of a bond's sensitivity to interest rate changes. Technically, duration is the weighed average number of years the investor must hold a bond until the present value of the bond’s cash flows equals the amount paid for the bond.

How it works (Example):

<p>There is more than one way to calculate duration (which we'll get to below),&nbsp;but the Macaulay duration (named after Frederick Macaulay, an <a class="definition-url" href="/node/5763">economist</a> who developed the concept in 1938) is the most common.</p>

<p>The formula for Macaulay duration is:</p>

<p><img alt="" src="/images/image-macaulay-duration.png" style="height:63px; width:280px" /></p>

<p>where:<br />
t = period in which the <a class="definition-url" href="/node/1038">coupon</a> is received<br />
C = periodic (usually semiannual) coupon payment (in $)<br />
y = the periodic <a class="definition-url" href="/node/1406">yield</a> to <a class="definition-url" href="/node/4911">maturity</a> or required yield<br />
n = number periods<br />
M = maturity value (in $)<br />
PV = <a class="definition-url" href="/node/3898">market price</a> of <a class="definition-url" href="/node/1287">bond</a>&nbsp;(in $)</p>

<p>The formula is complicated, but what it boils down to is: Duration = <a class="definition-url" href="/node/926">Present value</a> of a bond's cash flows, <a class="definition-url" href="/node/5166">weighted</a> by length of time to receipt and divided by the bond's current <a class="definition-url" href="/node/779">market value</a>.</p>

<p>As an example, let's calculate the duration of a three-year, $1,000 Company XYZ bond with a semiannual 10% coupon. By using the present value formula, we can find PV of Cash Flows for each period. So for the first row, we'd figure in ($50) / (1 + .05)^1 = $47.62. For the second row, we'd calculate ($50) / (1 + 0.05)^2 = $45.35. And so on until we make up the following table.</p>

<table border="0" cellpadding="0" cellspacing="0" class="table-container" style="margin-bottom: 1em" width="100%">
    <tbody style="border: 0;">
        <tr>
            <td class="table-content" style="padding: 0; margin: 0; background: none"><!-- BEGIN TABLE -->
            <table border="0" cellpadding="5" cellspacing="0" style="margin: 0; padding: 0; font-family: Tahoma, Verdana Geneva, sans-serif; font-size: 14px; line-height: 22.652px; color: #000000; text-align: center; font-weight: normal; border: 1px solid #DDDDDD" width="100%">
                <thead style="border: 0;">
                    <tr bgcolor="#1270A6" class="row1" style="color: rgb(255, 255, 255); background-color: rgb(18, 112, 166);">
                        <th class="column1" style="padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166); text-align: center;">Period</th>
                        <th class="column2" style="padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166); text-align: center;">Cash Flow</th>
                        <th class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166);">PV of $1 at 5%</th>
                        <th class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166);">PV of Cash Flows</th>
                        <th class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166);">Period x Cash Flow</th>
                        <th class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(255, 255, 255); background-color: rgb(18, 112, 166);">PV of Period x Cash Flow</th>
                    </tr>
                </thead>
                <tbody style="border: 0;">
                    <tr class="row2" style="background-color: rgb(255, 255, 255);">
                        <td class="column1" style="padding: 5px; color: rgb(0, 0, 0); text-align: center;">1</td>
                        <td class="column2" style="padding: 5px; color: rgb(0, 0, 0); text-align: center;">$50</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.9524</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$47.62</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$50</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$47.62</td>
                    </tr>
                    <tr class="row3" style="background-color: rgb(238, 238, 238);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">2</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$50</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.9070</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$45.35</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$100</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$90.70</td>
                    </tr>
                    <tr class="row4" style="background-color: rgb(255, 255, 255);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">3</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$50</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.8638</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$43.19</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$150</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$129.58</td>
                    </tr>
                    <tr class="row5" style="background-color: rgb(238, 238, 238);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">4</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$50</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.8227</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$41.14</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$200</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$164.54</td>
                    </tr>
                    <tr class="row6" style="background-color: rgb(255, 255, 255);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">5</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$50</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.7835</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$39.18</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$250</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$195.88</td>
                    </tr>
                    <tr class="row7" style="background-color: rgb(238, 238, 238);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">6</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$1,050</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">0.7462</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$783.53</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$6,300</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$4,701.16</td>
                    </tr>
                    <tr class="row8" style="background-color: rgb(255, 255, 255);">
                        <td class="column1" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">Total</td>
                        <td class="column2" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">&nbsp;</td>
                        <td class="column3" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">&nbsp;</td>
                        <td class="column4" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$1,000</td>
                        <td class="column5" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">&nbsp;</td>
                        <td class="column6" style="text-align: center; font-size: 14px; line-height: 22.652px; padding: 5px; color: rgb(0, 0, 0);">$5,329.48</td>
                    </tr>
                </tbody>
            </table>
            <!-- /TABLE --></td>
        </tr>
    </tbody>
</table>

<p>Notice in the table above that we first weighted the cash flows by the periods in which the occurred and then calculated the present value of each of these weighted cash flows. There are six periods (three years x 2 semiannual payments per year) and&nbsp;a measure of 5% is used instead of 10% because payments are semiannual.&nbsp;&nbsp;</p>

<p>To calculate the Macaulay duration, we then divide the sum of the present values of these cash flows by the current bond price (which we are assuming is $1,000):</p>

<p>Macaulay duration = $5,329.48 / $1,000 = 5.33</p>

<p>As mentioned earlier, duration can help investors understand how sensitive a bond is to changes in prevailing interest rates.</p>

<p>By multiplying a bond's duration by the change, the investor can estimate the percentage <a class="definition-url" href="/node/3028">price change</a> for the bond. For example, consider the Company XYZ bonds with a duration of 5.33 years. If&nbsp;market yields increased by 20 <a class="definition-url" href="/node/5942">basis points</a> (0.20%), the approximate percentage change in the XYZ bond's price would be:</p>

<p>(- Macaulay Duration x Change in Yield) =&nbsp;Approximate Change in Price</p>

<p>-5.33 x&nbsp;0.002 = -0.01066&nbsp;or -1.066%</p>

<p>In other words, if the bond had originally sold&nbsp;for $1,000 with a 5% yield it would now be selling for $1,000 x (1 - 0.01066) = $989.34 -- a discounted rate&nbsp;(Note that this is an approximation and is not as precise as a present value of a bond calculator).</p>

<p>Why would the bond be selling for a discount? Because as interest rates go up, other interest-bearing investments become more attractive to investors and thus the bond's value (or price) goes down.</p>

<p>In economics, the simple rule is that yields move in the opposite direction of prices. As yields (i.e. interest rates) go up, bond prices move down. Conversly, as yields go down, bond prices move up.</p>

<p>Expanding on that, there are five factors affect a bond's duration:</p>

<ul>
    <li>
    <p>Coupon:&nbsp;The higher a bond's coupon, the more income it produces early on and thus the shorter its duration. The lower the coupon, the longer the duration (and volatility). Zero-coupon bonds, which have only one <a class="definition-url" href="/node/1175">cash flow</a>, have durations equal to their <a class="definition-url" href="/node/4911">maturities</a>.</p>
    </li>
</ul>

<ul>
    <li>
    <p>Maturity:&nbsp;The longer a bond's maturity, the greater its duration (and volatility). Duration changes every time a bond makes a coupon payment. Over time, it shortens as the bond nears maturity.</p>
    </li>
</ul>

<ul>
    <li>
    <p>Yield to Maturity:&nbsp;The higher a bond's yield to maturity, the shorter its duration because the present value of the distant cash flows (which have the heaviest weighting) become overshadowed by the value of the nearer payments.</p>
    </li>
</ul>

<ul>
    <li>
    <p>Sinking Fund:&nbsp;The presence of a sinking fund lowers a bond's duration because the extra cash flows in the early years are greater than those of a bond without a sinking fund.&nbsp;</p>
    </li>
</ul>

<ul>
    <li>
    <p><a class="definition-url" href="/node/952">Call Provision</a>:&nbsp;Bonds with call provisions also have shorter durations because the <a class="definition-url" href="/node/928">principal</a> is repaid earlier than a similar non-callable bond.</p>
    </li>
</ul>
 

Why it Matters:

The greater duration of the bond, the greater its percentage price volatility.

By providing a way to estimate the effect of certain market changes on a bond's price, the investor can choose investments that will better meet his future cash needs. Macaulay  duration also helps income investors who want to take on minimal interest rate risk (that is, they believe interest rates might fall) understand why they should consider bonds with high coupon payments and shorter maturities.