Most professionals, and many institutional clients, use portfolio attribution reports as a key tool for interpreting the results a portfolio manager achieves. I’ve always found it an excellent planning tool, as well.
I’ve looked on the internet, admittedly not as hard as I probably should have, for a service providing anything remotely resembling a performance attribution report and have found nothing. At some point, I should probably have an attribution tool on this blog, but for now you’ll have to construct a simple one for yourself.
What I describe below is a rough-and-ready tool. It takes shortcuts that simplify the calculations, so the results are not accurate to the last basis point. But for us, that’s not the most important thing. The reason to do create a periodic performance attribution report is to establish a procedure for sitting down and thinking about the actively-managed portion of a portfolio, seeing what is going right and what is going wrong, and deciding what–if anything–to do about it.
For anyone who’s interested, I’ll talk about the major simplifications at the end of the post.
Constructing a usable report
1. Go to the Standard&Poors website to get the S&P 500 data on market capitalization by sector for the beginning and ending date you want. Download or copy the data manually to a spreadsheet program.
2. Use the beginning data to calculate sector weightings by dividing the sector market cap by the total market cap of the S&P and multiplying by 100.
3. Divide the ending date data by the beginning date data to get the percentage return for each sector over the period (for each month-end this calculation also appears on the S&P page).
4. Subtract the return on the index from the return on the sector (to get the relative return of the sector for the period) and multiply this result by the sector weighting to get the contribution to performance of that sector. These figures should all add up to 0.
For example:
Let’s say there are three sectors in the market, A, B and C. The S&P is up 10% for the period. Sector A, which is 15% of the market, is up 20%; Sector B, which is also 15% of the market, is unchanged; Sector C is 70% of the market and is up 10%.
Your spreadsheet should look like this:
A 15% times (20-10 = 10) which is 150 meaning A contributed 150 basis points of return more than the S&P
B 15% times (0 -10=-10) which is -150 meaning B contributed 150 basis points less than the S&P
C 70% times (10-10=0) which is 0 meaning C has made no relative impact on the market.
[Table 1]
5. Now, take the actively managed portion of your equity holdings, organize it by sector and calculate your weightings. Let’s say you have 30% of your holdings in sector A, nothing in sector B and 70% in sector C . To figure what returns you have achieved from sector selection, multiply your returns by the relative sector returns of the index (not (yet) your sector returns). This means a table like the one above, only with your holdings, would look like this:
A 30% times 10 which is 300
B 0% times -10 which is 0
C 70% times 0 which is 0.
[Table 2]
6. Compare your sector results with those of the index by subtracting the index relative returns from yours (i.e., subtract the last column of Table 2 from the last column of Table 1). This yields:
A 300 – 150 = 150
B 0 – (-150) = 150
C 0 – 0 = 0.
[Table 3]
This means you have achieved a total of 300 basis points of outperformance from sector selection, 150 from overweighting sector A and 150 from underweighting sector B.
7. If you don’t have just sector index-tracking securities but have either individual stocks or actively-managed sector funds or ETFs, then you have one more calculation to do. Figure out what your actual returns in each sector have been and use them to create a table similar to those above. Let’s say you have achieved a 30% return in sector A and an 8% return in sector C. Then:
A 30% times (25 – 10 = 15) which is 450
B 0% times (0 – 10 = -10) which is 0
C 70% times (8 – 10 = -2) which is -140.
[Table 4]
Table 4 gives you your total performance (sector selection plus stock selection) vs. the index for the period. Table 2 gives you the performance you achieved from sector selection. To get the performance contribution from stock selection alone, subtract the last column of Table 2 from the las t column of Table 4, like this:
A 450 -300 = 150
B 0 – 0 = 0
C -140 – 0 = -140.
How do you interpret these figures? In sector A, you have achieved 300 basis points in outperformance from sector selection and the extra 150 basis points from (good) stock selection. In sector C, you have neither gained nor lost from sector selection but have lost 140 basis points in performance due to (poor) stock selection.
A final tweak: the report we’re building is based on sector weightings at the beginning of the period. That’s fine. But because individual sector performances will differ over the month, and because our holdings may outperform or underperform, both our portfolio weightings and the index sector weightings at the end of the period may be somewhat different. When planning for the upcoming period, you should recalculate your weightings based on end of the period prices, just to make sure the weightings haven’t gotten out of whack. Adjust as necessary.
What do you do with this info?
Take a look at my Keeping Score page. It’s an example of the sequence of thoughts a performance attribution report should produce, namely:
–this is what my investment plan was
–here’s how it has played out in the current period
–is anything going wrong?
–do I need to make any changes? that is, how close are the investment ideas that stand behind this portfolio to being fully played out in the market? (as opposed to–I’ve made a mistake and I have to fix it)
–what will the market’s next move be?
In the Sector A,B,C example including individual stocks, you have to make a similar review of each security. For the outperforming stock, the main question is whether we’re still in the first inning of the game or nearing the seventh or eighth. For the underperformer, admittedly a month is a very short period of time, but the most important question is whether there’s something I’m missing–something negative that the market knows and I don’t. At the very least, this is a stock I want to watch more carefully.
Simplifying assumptions
1. We’re using the weights at the beginning of the period to determine outperformance/underperformance. We might get slightly different results if we used end of the period weightings. We could calculate both and average them, but I don’t think this is worth the trouble. But we do have to calculate the end of period weightings for planning purposes.
Professionals use daily linked returns, that is, they calculate the weighting and relative performance changes for every stock in the index and the portfolio every day, and multiply the daily changes for each trading day to get monthly results.
2. The index numbers we’re using are capital changes figures, that is, they don’t include dividends. Individual stock prices will also be capital changes figures, but mutual fund and ETF prices will be total return prices (including dividends) less fees. Again, I don’t think this makes much difference. On the S&P 500 index page, you can see total return, net total return (including dividends minus withholding taxes) and capital changes calculations for the index to see the difference this makes.
3. We’re ignoring any inflows or outflows of money, or any trading done during the month. When computing power was more expensive, performance reports used the assumption that all trading was done on the first day of the month. Unless you’re a very active trader, this won’t make too much difference, either.
4. I’ve started by calculating sector performance. For a portfolio with individual stocks, I then figured out total performance and defined the difference, or residual, between the two as the contribution from stock selection. For us, I think this is the right way to proceed. But if I had started by trying to calculate stock performance and then defined what was left as sector performance, I would have gotten different results. Sounds weird, but it’s correct. Suppose my entire overweight in sector A were a holding in a single stock (very unlikely for most portfolios). If you consider this to be a bet on a stock, you’ll get an attribution that shows a lot of performance from stock selection and little from sector selection. If you consider it a bet on a sector, you’ll get different results. For a large holder of GE (a stock I’ve never understood the attraction of), which is classified as a conglomerate but trades like a financial, this may be a practical issue. For almost everyone else, this is a quirk of performance measurement to be aware of but not worry about.
A professional’s report
What does a professional’s attribution report look like? Let’s say the benchmark index is the S&P 500 and the report covers a month. A full report would show:
–all of the 500 stocks in the index,
–organized by sectors and, within sectors, by industries,
–with the weighting of each issue,
–its performance over the attribution period and
–its contribution to the overall performance of the index.
In addition, each of the holdings in the portfolio would be listed in its appropriate place by sector and industry–and with similar information about weightings, performance and contribution to the overall portfolio performance.
Finally, the report would have a comparison section, that would detail the effects on performance vs. the benchmark of three types of portfolio decisions:
–having sector/industry weightings different from the index;
–having weightings (including 0) for index stocks that differ from the index weightings;
–holding stocks not in the index.
As I said earlier, having a report this detailed is overkill for us. It’s overkill for many professionals as well. But where professionals would likely be interested in the sector and industry information, we’re probably only going to be interested in sector data.