Home Up Opinion Feedback Contents Search About Us

Adding Transaction Cost Measurement
Adding Transaction Cost Measurement Zero-Weighted Sectors Drill-Down to Security-Level Data in Sector Attribution

 

 

Adding Transaction Cost Measurement to Sector Attribution

The Stock Level Attribution page discusses a technique for transaction cost measurement.  A good example of that technique appears in Sheet 1 of the spreadsheet Transaction_cost_attribution.xls.

Sheet 2 of that spreadsheet goes on to demonstrate how the transaction cost measurement can also be added to  a sector selection model.  Here, we will carefully work through that calculation, to make it more easy to understand.

Key Concept

Although it is possible to write a lot about the method for doing transaction cost measurement in sector attribution, there is one simple idea at the heart of it.

This simple idea has a non-simple name: "the portfolio sector return (assuming benchmark stock returns)".  Its mathematical definition is:

where:

Although this may look complicated, it is simply the return that one obtains for a sector by calculating a weighted sum of the security-level benchmark returns (using portfolio weights).  Think for a second about why this return might differ from the ordinary sector return.  The only source of difference is that one is using benchmark security returns, instead of portfolio security returns (i.e. the return for each holding, calculated using its market values and cashflows).  In turn, when will the benchmark security returns differ from the portfolio security returns?  One reason could be pricing errors.  But leaving aside this source of difference, the only other reason they might be different would be if the portfolio had engaged in trading.

We can illustrate this with the following data from Sheet 1 and Sheet 2 of Transaction_cost_attribution.xls.

Table 1: Index Data for example in Transaction_cost_attribution.xls

 

Index Closing Stock Prices

Index Returns

Index Weights

Stock

Day 0

Day 1

Day 2

Day 1

Day 2

Day 1

Day 2

ABC

$1.00

$1.05

$1.02

5.00%

-2.86%

33.33%

34.54%

DEF

$1.00

$0.97

$0.95

-3.00%

-2.06%

33.33%

31.91%

XYZ

$1.00

$1.02

$1.03

2.00%

0.98%

33.33%

33.55%

 

 

 

 

1.33%

-1.32%

100.00%

100.00%

The daily returns in Table 1 simply reflect the change in the index close price for each stock (we assume that there were no capital changes for any of the stocks over this period).  For example, on Day 1 the return for stock XYZ is 2.00% because the stock price increased from $1.00 to $1.02.  These daily returns are the ones that might be provided by an index company.

On the other hand, we could also calculate daily returns for every holding in a portfolio, using the data shown in Table 2:

Table 2: Portfolio Holdings and Purchases For Example

 

Number Held

Bought (Sold)

Stock

Day 0

Day 1

Day 2

Day 1

Day 2

ABC

30

30

30

 

 

DEF

50

50

40

 

(10)

XYZ

20

20

20

 

 

Table 2 shows us, for each security, the number held and the number bought or sold on each day.  Table 3 goes on to show the market values, cashflows, and returns on each day.

Table 3: Market Values, Cashflows, and Returns for Example

 

Market Values

Dollar Purchases

Portfolio Returns

Stock

Day 0

Day 1

Day 2

Day 1

Day 2

Day 1

Day 2

ABC

$30.00

$31.50

$30.60

 

 

5.00%

-2.86%

DEF

$50.00

$48.50

$38.00

 

($10)

-3.00%

-1.03%

XYZ

$20.00

$20.40

$20.60

 

 

2.00%

0.98%

 

$100.00

$100.40

$89.20

 

($10)

0.40%

-1.20%

The portfolio returns at the right of Table 3 are calculated using the market values and cashflows in Table 3.  When you compare these portfolio stock returns with the benchmark stock returns in Table 1, you can see that the only difference is for Stock DEF on Day 2, where there was a cashflow that affected the calculation.

By now, the difference between benchmark stock returns (Table 1) and portfolio stock returns (Table 3) should be fairly clear.  We can now illustrate how to illustrate how to use the key concept: portfolio sector returns (assuming benchmark stock returns).

The Sector Attribution sheet in the example spreadsheet works on the basis that there are two sectors in the portfolio.  Sector1 contains stocks ABC and DEF, while Sector2 contains only stock XYZ.  To calculate the portfolio sector return (assuming benchmark stock returns) for Sector1 on Day 2, the calculation is simply:

This number will come in handy when we work through the rest of the example below.

It is useful to note that this number was calculated with benchmark stock returns, but portfolio weights for each stock.  Specifically, one can observe that for stock DEF, the calculation uses the index stock return (-2.06%), rather than the portfolio stock return (-1.03%).  What does such a number mean?  It captures the performance that the sector would have received if there were no transaction costs.  This is because cashflows (arising from transactions) are the only input that can make the portfolio stock return differ from the benchmark stock return (as indeed we saw for stock DEF on Day 2).

Before finishing the example, let us review the equations for doing sector attribution with transaction costs.

Reviewing the Equations for Sector Attribution with Transaction Costs

The technique for separating-out transaction costs is very simple.  The usual equations for asset allocation, stock selection, and interaction, take the usual form, except for the fact that they use the portfolio sector return (assuming benchmark stock returns), instead of the ordinary portfolio sector return.  The transaction costs attribute takes up the difference between the portfolio sector return, and the portfolio sector return (assuming benchmark stock returns).

From inspection of the transaction costs attribute, it is easy to discern some properties of the transaction cost effect:

  • it will be zero for sectors whose portfolio weight is zero;
  • it will be zero for sectors where no transactions took place; and
  • it will be proportional to the outperformance generated by transaction costs, weighted by the portfolio weight.

These properties all seem perfectly intuitive for a measure of transaction costs.

The impact of introducing transaction costs is very minimal, since the usual attributes are unchanged, except that they measure how much value was added by the portfolio sector return (assuming benchmark stock returns).

The key to understanding this approach is understanding the subtle difference between the portfolio sector return (assuming benchmark stock returns), and the "plain old" portfolio sector return.  If you are at all mathematical, this might be easier to understand via algebra, and/or the worked example we consider on this page.

We now go on to complete the worked example.

Doing All the Calculations for the Example

If we include stocks ABC and DEF in Sector1, and stock XYZ in Sector2, we can do a sector attribution on the example whose numbers we have shown on this page.  We have just confirmed what the equations are, so we only need to confirm the values for all of the inputs.  Since there is nothing abnormal about this problem, we can then go ahead and "plug in" the inputs to the equations.

Table 4: Inputs for Sector Attribution on Day 1

 

Benchmark Weight

Portfolio Weight

Benchmark Return

Portfolio Return

Portfolio Return Assuming Benchmark Stock Returns

 

Sector1

66.67%

80.00%

1.00%

0.00%

0.00%

Sector2

33.33%

20.00%

2.00%

2.00%

2.00%

Total

100.00%

100.00%

1.33%

0.40%

0.40%

It is easy to see that the two columns on the right of Table 4 contain identical numbers.  This means that the numbers in these columns will cancel-out to zero.  The transaction cost effects would be zero.  All other attributes will be the same as they otherwise would have been.  This makes sense, since there were in fact no transactions on Day 1.

Table 5 shows the attribution results for Day 1, calculated using the data from Table 4, and the equations shown above.

Table 5: Attribution Results (In Basis Points) for Day 1

 

Asset Allocation

Stock Selection

Interaction

Transaction Costs

Total

Sector1

-4 bps

-67 bps

-13 bps

-

-84 bps

Sector2

-9 bps

-

-

-

-9 bps

Total

-13 bps

-67 bps

-13 bps

-

-93 bps

As we expected, the transaction cost effect on Day 1 was indeed zero.  All of the other results provide a sensible explanation of the portfolio's 93 basis point underperformance on Day One.

Moving on to Day 2, Table 6 shows the inputs for Day 2:

Table 6: Inputs for Sector Attribution on Day 2

 

Benchmark Weight

Portfolio Weight

Benchmark Return

Portfolio Return

Portfolio Return Assuming Benchmark Stock Returns

 

Sector1

66.45%

79.68%

-2.48%

-1.75%

-2.38%

Sector2

33.55%

20.32%

0.98%

0.98%

0.98%

Total

100.00%

100.00%

-1.32%

-1.20%

-1.69%

On Day 2, the portfolio sold 10 shares of stock DEF for a net flow of $10, which was skilful or lucky trading from the perspective that DEF's closing price on Day 2 was 95 cents.  We might expect that this will ultimately show us positive value-added for the transaction cost effect.  For the time being, we can see that the two different ways of measuring portfolio return have produced different numbers for Sector1 and at the total level.  This makes sense, because it will lead to a transaction cost effect in these places.

Table 7 shows the attribution results for Day 2:

Table 7: Attribution Results (In Basis Points) for Day 2

 

Asset Allocation

Stock Selection

Interaction

Transaction Costs

Total

Sector1

-15 bps

7 bps

-1 bps

50 bps

42 bps

Sector2

-30 bps

-

-

-

-30 bps

Total

-46 bps

7 bps

-1 bps

50 bps

12 bps

Note: Some rows and columns in this table do not sum exactly, due to rounding.

One interesting thing about these results is that the transaction cost effect is the biggest management effect on Day 2.  Is this reasonable?  Well of course, this is a fictitious example, so it all depends on the assumptions that have been chosen.  But there is an easy way to see why 50 basis points is an appropriate answer in this case.  The investment manager sold 10% of the portfolio (i.e. 10 shares of DEF) at a price roughly 5% better than the closing price.  Simple arithmetic shows that 10% of 5% is 50 basis points — the very answer that we obtained.  This is an intuitive way of justifying this approach to measuring transaction costs.

Another interesting question is what these attribution results would look like in a conventional sector attribution, with no transaction cost measurement.  The full details are in sheet 2 of Transaction_cost_attribution.xls.  But the summary is simple.  Of the 50 basis points attributed here to transaction cost effects, 41 basis points go into stock selection, and 9 go into interaction.  This is because sector attribution assumes that when a sector outperforms its sector benchmark, this must be due to stock selection.  More stock selection also leads incidentally to a higher interaction between stock selection and asset allocation.

To summarize the results from this example, the model we have presented here seems like a fair and intuitive way of capturing active management effects that arise from intra-day timing and transaction costs.  Indeed, the conventional sector attribution assumption, that the effect of intra-day timing and transaction costs can be attributed to stock selection and interaction, is reasonable but clearly not ideal.  In this way, the model that measures transaction costs separately could be a significant improvement on current practice.

Remember, if you wish to work through this example in more detail, all of the data and equations are in the spreadsheet Transaction_cost_attribution.xls (refer to the second sheet).

Journal Article Containing the Equations

See pp. 12-13 of the paper Perspectives on Transaction Based Attribution for a comparison between the usual equations for sector attribution, and the equations that incorporate transaction cost measurement.

This paper provides a lot of the reasoning that supports this general approach to transaction cost measurement in performance attribution.

Discuss This Page on the Web

There is a discussion forum about this page on the investment-performance.com web site at

http://www.investment-performance.com/forums/showthread.php?p=650#post650

To participate in the discussion group, you may need to register as a user of investment-performance.com.


 

Send mail to webmaster@compoundinghappens.com with questions or comments about this web site.
Copyright © 2005-2008 CompoundingHappens.com
Last modified: Friday, 20. June 2008