Skip to content
Brian G. Peterson edited this page Mar 19, 2017 · 4 revisions

Background

Attilio Meucci runs an annual Advanced Risk and Portfolio Management bootcamp in New York City. The bootcamp attracts academics and professionals within the industry, and over 6 intense days, topics and techniques in Risk Management and Portfolio Management are discussed in depth. This project will be extending the existing Meucci package, which is based on his framework outlined in “The Checklist”. The goal for this project is to be able to conduct practical and implementable analyses in Portfolio Optimization and Risk Management by leveraging existing functionality and adding the necessary tools to the package.

Related work

This package is the result of a few GSoC projects in 2012, 2013 and 2014 that seek to convert a subset of Meucci's Matlab code to R to make it more widely accessible to R users. The final iteration of this project was completed in 2014 during the GSoC, where all of the existing Matlab functionality was migrated to R. Meucci's innovations include Entropy Pooling (technique for fully flexible portfolio construction), Factors on Demand (on-the-fly factor model for optimal hedging), Effective Number of Bets (entropy-eigenvalue statistic for diversification management), Fully Flexible Probabilities (technique for on-the-fly stress-test and estimation without re-pricing), and Copula-Marginal Algorithm (algorithm to generate panic copulas). The development version of the Meucci package is available at https://github.com/R-Finance/Meucci.

This year, we would like to focus on practical problems practitioners face in Portfolio Management and Risk Management, and create/extend code to facilitate the use of Meucci's methods to help solve those problems. In particular, we envision the following steps:

  1. Review:
  • Familiarization with the package.
  • Create examples using normal distribution, student-t distribution, and skew student-t assumptions for steps 1-4 of the Checklist
  • Complete documentation.
  1. Implementation:
  • Implement steps 5-7 of checklist (Aggregation, attribution), as well as measures of ex-ante/ex-post evaluation (index of satisfaction, etc.)
    • Use Monte Carlo framework and implement "Factors on demand" using Fama-French data as an example
  • Extend optimization framework to include Black Litterman, Entropy Pooling, as well as other examples
  • Extend multivariate distribution framework to various copulas (student t, Frank, Gumbel, Vine)
  1. Extension:
  • Expand framework developed in previous steps to include the following asset classes
    • Fixed Income
    • Equity Options
  • Expand framework developed in previous steps to include additional invariant models
    • Equities: ARMA models
    • Fixed Income: Long-memory models
    • Options: GARCH models
  1. Object-Oriented Framework
  • Begin creating object-oriented framework for each asset class developed in previous steps

The project will be developed with https://www.rstudio.com/ and stored on https://github.com. In order to efficiently manage the development of the package, the various tasks and deadlines will be managed via https://asana.com/.

Mentors

Erol Biceroglu, Prof. Brian Peterson and Prof. Dr. David Ardia.

Tests

Applicants have to be able to show that they have:

  • A very good working knowledge of programming in R, (with the potential to use Rcpp and C++).
  • A very good working knowledge of Roxygen for the documentation.
  • A very good working knowledge of knitr/LaTeX for the vignette.
  • A very good working knowledge of jupyter.
  • Familiarities with the construction of R packages.
  • Good coding standards (Google’s C++ and R style guide).
  • Good knowledge of Meucci's method and familiarity with "The Checklist" (formerly "The Prayer")
  • Experience with Risk Management and Portfolio Optimization
  • Experience with PerformanceAnalytics and PortfolioAnalytics packages
  • Experience with GitHub.

Students should show their motivation by following the points below:

  • Easy: Reproduce all steps in "The Checklist" for equities only, using Minimum-Variance optimization.
  • Medium: Reproduce all steps in "The Checklist" for equities and bonds, using Minimum-CVaR optimization.
  • Hard: Reproduce all steps in "The Checklist" for equities bonds, and options, using Minimum-CVaR optimization OR one of Meucci's innovations, such as Entropy Pooling.

Solutions of tests

Students, please post a link to your test results here.

References

Meucci, Attilio. 2005. “Risk and Asset Allocation.” Springer Finance Textbooks. https://www.arpm.co/book/.

Meucci, Attilio, Fully Flexible Views: Theory and Practice (August 8, 2008). Fully Flexible Views: Theory and Practice, Risk, Vol. 21, No. 10, pp. 97-102, October 2008. Available at SSRN: https://ssrn.com/abstract=1213325

Clone this wiki locally