-
Notifications
You must be signed in to change notification settings - Fork 31
advancing factorAnalytics
Advanced factorAnalytics Package
A GSoC 2016 project resulted in the development of initial fundamental factor models (FFM’s) functionality in the factorAnalytics package, described in “ffmVignette.pdf” at www.github.com/AvinashAcharya/factorAnalytics/tree/master/vignettes/ffmVignette.pdf. However, there remain a number of important advanced features needed for the FFM’s. Furthermore, there remain important advanced features that need to be added to the time series factor models (TSFM’s). This project is focused on coding those advanced features, with a view toward ease of use and incorporation of visualization methods where appropriate.
The work to be done is broken down into those functionalities needed for fundamental factor models (FFM), time series factor models (TSFM), and for risk models and risk budgeting (RMRB). The successful applicant will develop and implement the following specific functionalities, drawing upon mathematical material in referenced papers as needed.
Develop and implement the following:
-
A hybrid FFM that uses a statistical factor model for the residuals, as described in Menchero & Mitra (2008), thereby modeling cross-section correlations that are not accounted for by the basic FFM.
-
The multi-factor model method in Ding and Martin (2017), in particular the new exposures standardization method, and the computation of the quadratic utility optimal information ratio IR = IC mean/IC volatility where IC is the information coefficient. Carry out Monte Carlo to confirm that the multi-factor model results in improved information ratios to a similar extent as described by Ding and Martin (2017) for a single-factor model.
-
EWMA and GARCH models to handle the time varying volatility of the FFM residuals.
-
Multi-dimensional outlier detection and visualization with robust squared distances based on robust covariance matrices as described in Green and Martin (2014), detecting outliers in each (monthly) cross-section of returns and factor exposures based on each cross-section of returns and exposures. This work will involve use of the CerioliOutlierDetection http://christopherggreen.github.io/CerioliOutlierDetection/.
-
Multi-country risk modeling to account for currency effects
Develop and implement the following:
-
Portfolio level returns and risk reports, both tabular and visual, similar in character to those implemented for FFM’s in the 2016 GSoC factorAnalytics project.
-
Multi-dimensional outlier detection and visualization as described in item 5 above for FFM’s, except for TSFM’s the detection of outliers will be on a time-period by time-period basis, using the entire multivariate time series of portfolio returns on a moving window.
-
Quadratic and Interaction model terms with convenient user model specification method interface to R code.
-
Lagged risk factors and lagged returns models, and models with ARIMA errors, including use selected functionality in the robustarima package on CRAN.
-
EWMA and GARCH models for residuals
-
Statistical process control (SPC) methods to monitor active managers, as described in Philips, Yashchin and Stein (2003).
-
Parallel processing instead of using for loops over assets in order to efficiently handle multiple assets.
-
Risk parity portfolios for volatility risk, as described in Chaves et al. (2012)
-
Simple and robust risk budgeting with expected shortfall, as in Philips and Liu (2008).
-
Russian Doll risk models as described in Kakushadze (2015).
Complete commented R code implementation and testing of the fundamental factor model (FFM) items 1 through 4, and update the existing FFM vignette accordingly.
Complete commented R code implementation and testing of the time series factor model (TSFM) items 1 through 6, and update the existing FFM vignette accordingly.
Complete commented R code implementation and testing of the following: FFM item 5, TSFM item 7, and Risk Models and Risk Budgeting (RMRB) items 1 through 3. Update FFM and TSFM vignettes, and write new vignette for new RMRB functionality.
Chaves, D., Hsu, J., Li, F., and Shakernia, O. (2012). “Efficient Algorithms for Computing Risk Parity Portfolio Weights”, The Journal of Investing, Fall 2012.
Ding, Z. and Martin, R. D. (2016). “The Fundamental Law of Active Management Redux”, SSRN 2730434.
Green, C. and Martin, R. D. (2014). “An Extension of a Method of Hardin and Rocke, with an Application to Multivariate Outlier Detection via the IRMCDMethod of Cerioli”, http://students.washington.edu/cggreen/uwstat/papers/cerioli_extension.pdf.
Kakushadze, Z. (2015). Russian-Doll Risk Models." Journal of Asset Management, 16(3), pp. 170-185.
Menchero, J. and Mitra, I. (2008). “The Structure of Hybrid Factor Models”, Journal of Investment Management 6(3): 35-47.
Philips, T. K. and Liu, M. (2012). “Simple and Robust Risk Budgeting with Expected Shortfall”, Journal of Portfolio Management, Fall 2011.
Philips, T. K., Yashchin, E. and Stein, D. M. (2003). “Using Statistical Process Control to Monitor Active Managers”, Journal of Portfolio Management, Fall 2003, pp. 86-94.
Applicants should have:
-
Familiarity with the factorAnalytics package.
-
Proficiency with R and some experience in developing in R.
-
Knowing or comfort in quickly learning tools such as Github, Roxygen2 and LaTeX.
-
An undergraduate degree in math, natural sciences or engineering.
-
Ability to understand and use mathematical and statistical aspects of references.
-
Graduate education in quantitative finance.
A successful applicant will:
-
Discuss the proposed package functionality.
-
Write a development timeline for code implementation, documentation and testing.
-
Provide a complete code example of a function with documentation and a test package that demonstrates familiarity with R, Github and Roxygen2.
-
Identify any personal commitments that conflicts for their time during summer 2017.
Doug Martin (martinrd@comcast.net)
Eric Zivot (ezivot@uw.edu)
Thomas Philips (tkpmep@gmail.com)
Kjell Konis (kjellk@uw.edu)