0
$\begingroup$

I am building a performance attribution tool on Python to help us understand the asset allocation, stock selection effects of our fund.

We are using daily price data for each component within the fund, daily asset allocation (to account for any changes made within the fund) and also have similar data available for the benchmarks.

Now, the process of calculating returns, contribution, asset allocation and manager selection effects work accurately when implementing it on a daily basis. However, when converting this to monthly, what is the most appropriate way of tackling this?

Currently, we use the generic total return formula R = (1+r1)(1+r2)....(1+rn) - 1 to get monthly returns. Can I apply that same formula to the contributions?

How can I go from daily attribution to monthly attribution whilst also making sure:

asset allocation + manager selection = portfolio return - benchmark return = excess return

$\endgroup$
0
$\begingroup$

I would convert all data from daily to monthly using the generic total return formula you specified. Then do the attribution.

The issue is going to be with the weights of assets, sectors, and countries; you will have to make an assumption whether you use end of month weight or average weight over the month. For example, end of month weight of manager A vs average weight of manager A over the month. I think the industry standard is to use end of month weight.

| improve this answer | |
$\endgroup$
1
$\begingroup$

This is usually called the "Linking problem" or multi-period linking in Performance Attribution.

Several methods have been proposed and there is some controversy as to which is best (in fact a great deal of discussion goes on in performance journals seemingly without coming to a resolution).

For what it is worth, based on my reading of articles such as Comparing Performance Attribution Linking Methods: An Empirical Study by Jiang and Saenz ( link ), I would recommend the Modified Frongello Method. It seems reasonably simple, intuitive and apparently performs satisfactorily in practice.

But from what I have read there is no perfect method.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.