Monthly Archives: August 2012

…Now With More Bacon (2008)!

I’m sure that Carl Bacon[1] sighs deeply when he reads such headlines, but it is clearly appropriate in this case. Perhaps you remember that I proposed a Google Summer of Code project for 2012 around a considerable code contribution to PerformanceAnalytics from Diethelm Wuertz at ETHZ. That code was focused on adding a large number of functions from Carl Bacon’s book, “Practical Portfolio Performance Measurement and Attribution”.

The project garnered strong interest from students. Ultimately, this year’s mentors awarded the project to Matthieu Lestel who is a student at ENSIMAG, an engineering school in France. Matthieu was selected for his detailed proposal and plan for the summer, as well as a good code sample.

Matthieu commenced to produce dozens of new functions, extend several more existing ones, and add more than 40 pages of additional documentation (complete with formulae and examples) to PerformanceAnalytics. He’s included Bacon’s small data set and several new table.* functions for testing and demonstrating that the functions match the published results. All on plan, I would add.

He also wrote a very nice overview of the functions developed from Bacon (2008) that are included in PerformanceAnalytics, which should be helpful to readers or teachers of Bacon’s work. Matthieu’s summary document will also be distributed as a vignette in the package, accessible using vignette('PA-Bacon'). Additional detail is included in the documentation for each function, as well. I’ll highlight some of those functions in later posts.

His GSoC code and the vignette currently reside on r-forge in the development codebase. I fully expect that Matthieu’s code will be included in the next CRAN release sometime this fall. You will find that his functions support multi-column data, preserve data labels, and otherwise act consistently with the other functions in PerformanceAnalytics.

Congratulations to Matthieu on a very successful GSoC 2012! This has been a considerable contribution to PerformanceAnalytics, one that I think many users will appreciate and benefit from. I’m looking forward to seeing where his interests take him, and I hope they culminate in more contributions. Thanks also go to Diethelm for the original code contribution, and also to Google to making the summer possible.

I want to, again, encourage such code or documentation contributions. If there’s a function or twelve that you think would be broadly useful, please consider contributing. Even if it’s a proof of concept of an interesting idea, a good starting point is very helpful. Hand us enough code, and perhaps we’ll have another great GSoC project for 2013…

[1] Bacon, Carl. “Practical Portfolio Performance Measurement and Attribution”, (London, John Wiley & Sons. September 2004) ISBN 978-0-470-85679-6. 2nd Edition May 2008 ISBN 978-0470059289