-
Notifications
You must be signed in to change notification settings - Fork 18
Major Improvements to the factorAnalytics package
Summary:
The factorAnalytics (FA) packlage contains fitting and analysis methods for the three main types of factor models used in conjunction with portfolio construction, optimization and risk management, namely fundamental factor models, time series factor models and statistical factor models. The purpose of this project is to add key improvements to FA that will make it its basic features and capabilities close to those of commercial portfolio optimization and risk management products, and better in some ways, e.g., by inclusion of factor model selection methods outlier robust fitting methods. As such FA will support cutting edge research on portfolio optimization and risk management methods in an open source environment.
Description:
The work to be done is broken down into those functionalities needed for each of the three main factor model types (fundamental, time series, statistical)
- Risk and Performance Displays
- Tabular reports for risk decomposition and performance analysis
- Portfolio Functions (with a portfolio weights argument)
- Portfolio factor model
- Portfolio Variance/Covariance decomposition (factor contribution)
- Portfolio VaR and ES decompositions (factor contribution)
- Asset specific contributions to SD, VaR and ES
- A new vignette for portfolio functions and performance displays
- Additional Functionalities for the Function fitFfm
- Include sector+intercept model (Ruppert 2010, equation 17.15)
- Include intercept (global mkt) + country + sector
- EWMA model for residuals
- New factor model standardization method of Ding and Martin (2015) "The Fundamental Law of Active Management: Redux". The method improves mean-variance optimal portfolio information ratios. See http://ssrn.com/abstract=2730434.
Develop and implement the following:
- Quadratic and Interacting risk factors (User specifies all interactions or a list of specific pairs)
- Up and Down betas corresponding to positive and negative returns for arbitrary factors (currently only the market factor is implemented)
- Lagged betas and beta as sum of betas for arbitrary factors
- EWMA and GARCH model for residuals
- Parallel processing instead of using for loops over assets in order to efficiently handle large number of assets.
- Portfolio functions similar in character to those for Fundamental Factor Models
- Investiate and implement outlier robust versions of statistical factor models
- Investigate and implement EM methods of fitting statistical factor models
Investigate and implement one or more of the following:
- Multiple imputation for patterned and non-patterend missing data, and integrate for comparions with Factor Model Monte Carlo (Jiang and Martin ,2015).
- Combined linear factor models, e.g., fundamental plus statistical, etc.
- Multi-country risk modeling to account for currency effects
- Hierarchal models to map country and sector models to global models
- Active risk factor models (benchmark relative models)
- Scenario analysis
- Dynamic graphics visualization
Skills required:
Applicants should have:
- Familiarity with using the factorAnalytics package.
- Proficiency with R and some experience in developing in R.
- Knowing or comfort in quickly learning tools such as svn, Roxygen2 and LaTeX
- Those with demonstrable experience with finance-related packages will be preferred.
- A background in computer science or engineering with graduate training in finance is ideal.
Test:
A successful applicant will:
- Discuss the proposed package functionality.
- Write development timeline for code implementation, documentation and testing.
- Provide a complete code example of a function with documentation that demonstrates familiarity with the tools listed above.
- Identify any personal commitments that conflicts for their time during summer 2014.
Mentors:
Eric Zivot ([@](mailto:ezivot {at} uw {dot} edu))
[Doug Martin] ([@](mailto:doug {at} amath {dot} washington {dot} edu))