├── .gitignore ├── Asset Allocation.txt ├── Datacamp Systematic Investment Strategies.md ├── Datacamp_Systematic_Investment_Strategies.html ├── Emacs scraps.txt ├── GNU wget.pdf ├── High Frequency Investment Strategies.md ├── Quantitative Finance.txt ├── README.txt ├── Rmodels.zip ├── Systematic Investment Strategies.md ├── Systematic Trading Brokers.txt ├── Systems and Programs.txt ├── ToDoList.txt ├── datacamp.txt ├── datacamp_old.txt ├── fund startup.txt ├── quantopian.txt ├── render_scripts.R └── temp.txt /.gitignore: -------------------------------------------------------------------------------- 1 | *.tmp 2 | *.pst 3 | *.Rhistory 4 | *.RData 5 | *.Rproj.user 6 | *.Rproj.user/ 7 | data/ 8 | web/ 9 | R/ 10 | Explore/ 11 | GIThub/ 12 | Python/ 13 | BAK/ 14 | -------------------------------------------------------------------------------- /Asset Allocation.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/Asset Allocation.txt -------------------------------------------------------------------------------- /Datacamp Systematic Investment Strategies.md: -------------------------------------------------------------------------------- 1 | #### Datacamp course *Systematic Investment Strategies* 2 | 3 | [DataCamp github repo](https://github.com/Data-Camp/datacamp) 4 | [How to create a DataCamp course](https://www.datacamp.com/create/how) 5 | 6 | some comments regarding Zivot "Intro to Computational Finance with R" 7 | Zivot Intro to Computational Finance with R 8 | https://www.datacamp.com/courses/computational-finance-and-financial-econometrics-with-r 9 | * contains some time series 10 | * no quantmod 11 | * no factor models 12 | * no active portfolio management strategies 13 | * contains some CAPM portfolio analysis, but no optimizaton 14 | * no Machine Learning (backtesting and shrinkage) 15 | 16 | reproducible perform an operation from start to finish 17 | leverage my experience as PM 18 | practitioner approach 19 | 20 | model regularization shrinkage 21 | 22 | * Loading and scrubbing time series data: packages xts and quantmod, 23 | * Estimating risk and performance measures: volatility, skew, CVaR, risk-return ratios (Sharpe, Sortino, Calmar), package PerformanceAnalytics, 24 | * CAPM model: market portfolio, regressions of asset returns, alpha, beta, CML, SML, package PerformanceAnalytics, 25 | * Factor models: CAPM, Fama-French, Barra, statistical, 26 | * Asset pricing anomalies: size, value, momentum, volatility, 27 | * Investor risk preferences and utility functions: investor prudence and temperance, 28 | * Kelly and CAPM, 29 | * Performing rolling calculations using vectorized functions: package caTools, 30 | * Performing factor model regularization shrinkage 31 | * Constrained portfolio optimization: Akaike and Bayesian information criteria, coefficient shrinkage, 32 | * Out-of-sample performance of optimized portfolios, 33 | * Portfolio management strategies: risk parity, minimum correlation, minimum variance, maximum Sharpe, maximum CVaR, 34 | * Estimating model parameters, 35 | * Forecasting returns and volatility, 36 | * Active portfolio management strategies: tactical asset allocation, universal portfolios, 37 | * Strategy backtesting and metaparameter tuning: data snooping, cross-validation, model overfitting, parameter regularization, 38 | * High Frequency trading strategies: volatility pumping and harvesting, 39 | 40 | I envision each vignette would contain reproducible R code samples, relying on fast, vectorized code. The R code samples would use actual market data, and would be self-contained and include data loading, formatting and preparation, analysis, model building, and visualization. 41 | 42 | * Machine Learning for Systematic Investing 43 | * Investment Portfolio Optimization with R 44 | 45 | ##### comments: 46 | teach to use packages 47 | xts, PerformanceAnalytics, PortfolioAnalytics, 48 | backtesting framework 49 | backtesting 50 | 51 | 52 | Both are very good, and the course I envision would combine the concepts from these two and move beyond them, as a logical continuation. Each lecture would consist of several vignettes, each illustrating a particular technique or model. Here are some topics to start: 53 | 54 | 55 | I will be travelling over the next few weeks, but I will have time to refocus on this project starting in the second week of December. 56 | 57 | #### explore and adapt: 58 | * http://www.inside-r.org/pretty-r 59 | * https://developers.google.com/chart/ 60 |

61 | 62 | #### machine learning courses 63 | * CalTech 64 | http://home.caltech.edu/telecourse.html 65 | https://www.youtube.com/playlist?list=PLD63A284B7615313A 66 | * Stanford 67 | https://www.coursera.org/course/ml 68 | https://class.stanford.edu/dashboard 69 | * Toronto ANN 70 | https://www.coursera.org/course/neuralnets 71 |

72 | 73 | 74 | #### Python 75 | * create simple IPython notebook for interactive computing 76 | http://ipython.org/notebook.html 77 | * create simple Scikit-Learn file 78 | http://machinelearningmastery.com/get-your-hands-dirty-with-scikit-learn-now/ -------------------------------------------------------------------------------- /Emacs scraps.txt: -------------------------------------------------------------------------------- 1 | 2 | # To enable flashing matching parentheses 3 | M-x show-paren-mode 4 | http://www.gnu.org/software/emacs/windows/old/big.html#highlight-paren 5 | 6 | -------------------------------------------------------------------------------- /GNU wget.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/GNU wget.pdf -------------------------------------------------------------------------------- /High Frequency Investment Strategies.md: -------------------------------------------------------------------------------- 1 | #### Datacamp course *High Frequency Investment Strategies* -------------------------------------------------------------------------------- /Quantitative Finance.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/Quantitative Finance.txt -------------------------------------------------------------------------------- /README.txt: -------------------------------------------------------------------------------- 1 | Contains different source code files: 2 | R models 3 | alphaModel 4 | backups -------------------------------------------------------------------------------- /Rmodels.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/Rmodels.zip -------------------------------------------------------------------------------- /Systematic Investment Strategies.md: -------------------------------------------------------------------------------- 1 | ### Systematic Investment Strategies 2 | 3 | + [ ] in this course we will study both investment and speculation 4 | The main difference between investment and speculation lies in the time horizon. 5 | Investment is concerned with capturing maximum returns in the long-run with lower risk, while speculation is concerned with achieving returns over a short period of time. 6 | Speculation attempts to switch between investments to achieve the best return versus risk. 7 | Investment attempts to choose the best investments and hold onto them for longer periods, to achieve the best return versus risk over the long term. 8 | http://blogs.wsj.com/moneybeat/2015/12/24/this-simple-way-is-the-best-way-to-predict-the-market/ 9 | 10 | + [ ] get Andrew Ang book Asset Management: A Systematic Approach to Factor Investing 11 | 12 | The exclamation !!! marks signify very good papers 13 | 14 | !!! good course bullet points: 15 | http://www.londonfs.com/programmes/Modern-Asset-Allocation-Portfolio-Construction/Outline/ 16 | 17 | !!! ECON 424/CFRM 462: Computational Finance and Financial Econometrics 18 | C:\Research\R\Tutorials\Zivot 19 | 20 | !!! C:\Research\R\Tutorials\Zivot\research 21 | 22 | !!! Bloch ebook Quantitative Portfolio Management.pdf 23 | 24 | !!! Tourin dynport.zip 25 | 26 | !!! Cochrane Advanced Investments 27 | C:\Research\Academic\Cochrane Advanced Investments 28 | 29 | !!! Pfaff Package Development in R.pdf 30 | 31 | 32 | 33 | ### to-do list: 34 | 35 | + [ ] suggest to Josh Ulrich fixing HurstIndex() in PerformanceAnalytics 36 | HurstIndex() calculates range of returns, instead of range of prices (cumulative returns) 37 | HurstIndex() doesn't use OHLC data 38 | suggest adding to OHLC Hurst-like technical indicators to TTR 39 | 40 | + [ ] Piotr Orlowski high frequency option models 41 | Adapt code from package affineModelR as template for RCPP 42 | https://github.com/piotrek-orlowski/affineModelR 43 | 44 | + [ ] study Kozhan paper 45 | !!! Kozhan Skew Variance Swap Stock Forecasting.pdf 46 | 47 | + [ ] create simple quantstrat scripts 48 | http://timelyportfolio.blogspot.com/2011/06/reit-momentum-in-quantstrat.html 49 | 50 | + [ ] reproduce factors results 51 | http://timelyportfolio.blogspot.com/2014/04/all-factors-more-looks.html 52 | http://timelyportfolio.blogspot.com/2014/04/exploring-factors-with-rcharts-and.html 53 | 54 | + [ ] create R scripts for loading Reuters data 55 | 56 | + [ ] source ideas from lectures 57 | https://www.quantopian.com/lectures 58 | 59 | 60 | 61 | ### Loading and scrubbing time series data: packages xts and quantmod, 62 | 63 | + [x] download OHLC data from Quandl 64 | 65 | + [ ] adjust stock prices 66 | https://www.quandl.com/blog/guide-to-stock-price-calculation 67 | 68 | + [ ] Maintaining a database of price files in R 69 | http://www.thertrader.com/2015/12/13/maintaining-a-database-of-price-files-in-r/ 70 | 71 | + [ ] convert all synthetic t-series to log-normal process 72 | 73 | + [ ] Yollin tutorial rDataAccess 74 | 75 | + [ ] recreate CRSPpanel.txt fundamental financial data for 265 S&P 500 stocks 76 | trellis plots 77 | nice barchart, dotplot, bwplot, and data munging 78 | 79 | 80 | 81 | ### Estimating risk and performance measures: volatility, skew, CVaR, Cornish-Fisher VaR, Modified VaR, risk-return ratios (Sharpe, Sortino, Calmar), package PerformanceAnalytics, 82 | 83 | + [ ] Normal (Gaussian) distribution is a bad model for price returns, because extreme returns are frequent and determine the mean 84 | Risk and total return determined by a small number of data points 85 | For example, half of the return of the stock market over the past 50 years was associated with just 10 days with the greatest daily change (Taleb) ? 86 | if cumulative returns are mostly generated by a few large returns, then focusing on predicting small returns is a waste of time 87 | bin the returns according to their magnitude 88 | what are the cumulative returns for each return magnitude bucket? 89 | are the cumulative returns for small return magnitude almost zero most of the time? 90 | study the following statistic: cumulative returns of bucket divided by its magnitude 91 | large magnitude buckets should have very high variability because they have smaller number of elements 92 | 93 | + [ ] Matthieu Lestel article for PerformanceAnalytics reviews risk-return measures 94 | PerformanceAnalytics PA-Bacon.pdf 95 | 96 | + [ ] measures of dispersion: 97 | STDEV 98 | Maximum or median absolute deviation 99 | trailing range statistic 100 | Hurst exponent 101 | Show that ratio of STDEV over MAD is related to kurtosis 102 | 103 | + [ ] stock process is not stationary 104 | calculate rolling/running dispersion and moment estimators using vectorized functions: package caTools, 105 | show that stock volatility is time-dependent 106 | 107 | + [ ] create study of bias-variance tradeoff using volatility estimation example: 108 | http://scott.fortmann-roe.com/docs/BiasVariance.html 109 | create xts of random prices with changing time-dependent deterministic vol parameter, 110 | estimate volatility use look-back window parameter, 111 | too short look-back window increases variance, 112 | too long look-back window increases bias, 113 | tune filter parameters in-sample: study bias-variance tradeoff, 114 | create rCharts and shiny visualizations 115 | 116 | + [ ] estimate volatility using OHLC data 117 | demonstrate that estimator standard error is lower using OHLC data 118 | use bootstrap to determine estimator standard error confidence intervals 119 | use simulated data with constant volatility 120 | 121 | + [ ] range OHLC volatility estimation 122 | http://eranraviv.com/intraday-volatility-measures/ 123 | http://eranraviv.com/multivariate-volatility-forecasting-2/ 124 | http://eranraviv.com/multivariate-volatility-forecasting-3-exponentially-weighted-model/ 125 | http://eranraviv.com/multivariate-volatility-forecasting-5-orthogonal-garch/ 126 | Bennett review Range Volatility Estimators.pdf 127 | Brandt OHLC Range Volatility Estimators.pdf 128 | Chou Range OHLC GARCH Volatility Estimators.pdf 129 | Bencik Range OHLC HAR GARCH Volatility Estimators.pdf 130 | Yang OHLC Range Volatility Estimators.pdf 131 | 132 | + [ ] tail risk measures 133 | value-at-risk and conditional value-at-risk as function of skewness and kurtosis parameters 134 | show that value-at-risk is not subadditive 135 | subadditive risk measures, ETL (ES/ETL/CVaR), Omega, Hurst exponent, 136 | conditional value at risk (CVaR) 137 | VaR for generalized Pareto distribution 138 | !!! Maillard Cvar Cornish Fisher Portfolio.pdf 139 | http://www.capitalspectator.com/tail-risk-analysis-in-r-part-i/ 140 | https://gist.github.com/jpicerno1/c3af6285713c76a5d124 141 | 142 | + [ ] CVAR has a bigger standard error than VAR, and is therefore useless for very large number of risk factors estimated using short span of data 143 | Jon Danielsson and Chen Zhou have demonstrated that to accurately estimate CVAR at 5% confidence would require decades of price history, something that simply doesn't exist for many assets. 144 | Danielsson CVAR Estimation Standard Error 145 | http://www.bloomberg.com/view/articles/2016-05-23/big-banks-risk-does-not-compute 146 | 147 | + [ ] create Normal mixture model and show that it has fat tails, 148 | show that Normal mixture model is similar to t-distr 149 | create distribution with large skew - Poisson 150 | 151 | + [ ] demonstrate that a small change in the alpha parameter (less than its mean error) changes the CVaR by large amount (plot the relationship) 152 | https://edge.org/conversation/nassim_nicholas_taleb-the-fourth-quadrant-a-map-of-the-limits-of-statistics 153 | 154 | + [ ] stochastic volatility models: CEV, GARCH, 155 | Engle's ARCH volatility clustering permutation test 156 | http://www.burns-stat.com/documents/tutorials/the-statistical-bootstrap-and-other-resampling-methods-2/ 157 | demonstrate the persistence of volatility (autoregression) in real return data 158 | fit GARCH model into real return data 159 | define GARCH model using OHLC data, and demonstrate its better performance 160 | simulate stochastic volatility process 161 | show that when volatility is stochastic then STDEV is much higher than MAD 162 | create plot displaying ratio of STDEV over MAD as function of volatility of volatility 163 | http://stackoverflow.com/questions/9969962/simulation-of-garch-in-r?rq=1 164 | https://en.wikipedia.org/wiki/Stochastic_volatility 165 | http://jonathankinlay.com/index.php/2011/03/long-memory-and-regime-shifts-in-asset-volatility/ 166 | http://www.jonathankinlay.com/articles/Modeling%20Asset%20Volatility.pdf 167 | http://jonathankinlay.com/index.php/2011/03/regarch-option-pricing-models/ 168 | 169 | + [ ] simulate Heston model and calibrate it to S&P returns use package NMOF 170 | http://stackoverflow.com/questions/15579655/heston-simulation-monte-carlo-slow-r-code 171 | http://stackoverflow.com/questions/27429725/monte-carlo-simulation-in-r 172 | http://stackoverflow.com/questions/15534270/stock-price-simulation-r-code-slow-monte-carlo 173 | 174 | + [ ] Pareto distribution as model for stocks 175 | fit returns into Student t-distribution, Cauchy, and Pareto distribution 176 | Show that the Pareto distribution has infinite variance but has finite MAD. 177 | Shalizi: pareto.R 178 | http://edge.org/response-detail/25401 179 | 180 | 181 | 182 | ### Capital Asset Pricing Model CAPM: market portfolio, regressions of asset returns, alpha, beta, CML, SML, package factorAnalytics, 183 | 184 | + [ ] factor model and investing explained 185 | !!! Cazalet CAPM Factor Models.pdf 186 | Fernandez CAPM Stock Model Review.pdf 187 | Black CAPM Empirical Tests.pdf 188 | Steiner Alpha Misleading Performance Measure.pdf 189 | Ardia CAPM Portfolio Optimization Stock Forecasting.pdf 190 | 191 | + [ ] calculate rolling/running beta 192 | calculate beta confidence intervals using bootstrap 193 | http://eranraviv.com/bootstrap-example/ 194 | http://statistics.ats.ucla.edu/stat/r/library/bootstrap.htm 195 | Fox Regression Bootstrap.pdf 196 | C:\Research\R\Packages\returnanalytics\pkg\PerformanceAnalytics\R\FamaBeta.R 197 | 198 | + [ ] beta robust regression shrinkage-estimator-for-beta 199 | http://eranraviv.com/a-shrinkage-estimator-for-beta/ 200 | 201 | + [ ] lm() Model Variable selection 202 | shrinkage methods 203 | AIC, AIC, BIC 204 | update() 205 | 206 | + [ ] define Capital Market Line (CML) and Security Market Line (SML) 207 | 208 | + [ ] Markowitz’s Critical Line Algorithm (CLA) - function CCLA() 209 | http://rnfc.org/2015/06/05/Markowitz/ 210 | !!! Bailey Prado Critical Line Algorithm Portfolio Selection 211 | 212 | + [ ] Equity premium puzzle 213 | Returns on stocks are much higher than predicted by CAPM model using volatility of equity returns and returns on government bonds 214 | The fact that stocks are riskier than bonds doesn't explain the magnitude of the difference, 215 | https://en.wikipedia.org/wiki/Equity_premium_puzzle 216 | 217 | + [ ] define beta-adjusted risk-return measures 218 | Treynor ratio, Jensen's alpha 219 | Matthieu Lestel article for PerformanceAnalytics reviews risk-return measures 220 | PerformanceAnalytics PA-Bacon.pdf 221 | 222 | + [ ] Jensen alpha examples of how alpha can be generated: timing market and ex-post portfolios 223 | calculate Jensen alpha for SPX (for example) and demonstrate that it's close to zero 224 | calculate Jensen alpha for timed SPX: buy SPX at lows and sell at highs 225 | calculate Jensen alpha for ex-post portfolio: optimize portfolio in-sample to obtain highest alpha 226 | 227 | + [ ] Ormos Entropy Asset Pricing Model.pdf 228 | 229 | 230 | 231 | ### Factor models: CAPM, Fama-French, Barra, statistical, 232 | 233 | + [ ] Lewellen: momentum is cross-sectional ranking, meaning winners outperform losers 234 | Autocorrelation is longitudinal ranking, meaning past performance will continue 235 | Is it possible to have zero autocorrelation, but non-zero momentum? 236 | 237 | + [ ] Distinguish between cross-sectional regressions (in-sample), and predictive regressions (out-of-sample), 238 | 239 | + [ ] Statistical factor models examine returns over many time periods, and from them identify relationships between and among the different assets, unlike fundamental factor models, which from the outset group assets that are likely to experience similar returns. 240 | 241 | + [ ] Fama and French three-factor model tutorial 242 | http://www.bogleheads.org/wiki/Fama_and_French_three-factor_model 243 | https://www.bogleheads.org/wiki/Fama-French_three-factor_model_analysis 244 | https://www.bogleheads.org/wiki/CAPM_-_Capital_Asset_Pricing_Model 245 | https://www.bogleheads.org/wiki/Category:Financial_theory 246 | http://www.capitalspectator.com/portfolio-analysis-in-r-part-v-risk-analysis-via-factors/ 247 | http://jonathankinlay.com/index.php/2015/03/combining-momentum-mean-reversion-strategies/ 248 | 249 | + [ ] Zivot Factor Models 250 | C:\Research\R\Tutorials\Zivot\research\factorModels.r 251 | Zivot Factor Models.pdf 252 | 253 | + [ ] qmj factor package David Kane Hutchin Hill 254 | portfolio.pdf 255 | portfolio Vignette.pdf 256 | https://github.com/anttsou/qmj 257 | https://github.com/anttsou/qmjdata 258 | 259 | + [ ] AQR data library 260 | https://www.aqr.com/library 261 | https://www.aqr.com/library/data-sets/quality-minus-junk-factors-monthly 262 | http://stackoverflow.com/questions/28031008/reading-an-online-xlsx-file-into-r 263 | 264 | + [ ] Cochrane asset pricing 265 | C:\Research\Academic\Cochrane Advanced Investments 266 | Cochrane_asset_pricing_CH12_229-250.pdf 267 | https://github.com/shabbychef/coursera_ap2013 268 | 269 | + [ ] Fama-MacBeth two-pass regressions to explain cross-sectional returns/values by factors 270 | Campbell Market Factors Stock Forecasting.pdf 271 | http://quant.stackexchange.com/questions/16855/how-to-test-the-5-factor-capm-of-fama-french-2014 272 | http://quant.stackexchange.com/questions/17125/please-give-a-step-by-step-explanation-on-how-to-build-a-factor-model 273 | http://quant.stackexchange.com/questions/8697/r-fast-and-efficient-way-of-running-a-multivariate-regression-across-a-really 274 | factorAnalytics fitTsfm_vignette.pdf 275 | 276 | + [ ] Equity Factors with Principal Component Analysis 277 | http://www.calculatinginvestor.com/2013/03/01/principal-component-analysis/ 278 | http://www.calculatinginvestor.com/2013/03/18/pca-factors-vs-fama-french-factors/ 279 | http://www.calculatinginvestor.com/octave-code/calculating-fama-french-loading/ 280 | 281 | + [ ] Fama-French three factor model viewer 282 | http://systematicinvestor.wordpress.com/2012/06/20/factor-attribution/ 283 | https://systematicinvestor.wordpress.com/category/factor-model/ 284 | 285 | + [ ] Factor Attribution 286 | https://systematicinvestor.wordpress.com/2012/06/ 287 | 288 | + [ ] Barra and Northfield factor models 289 | https://systematicinvestor.wordpress.com/2012/02/21/multiple-factor-model-building-risk-model/ 290 | https://systematicinvestor.wordpress.com/2012/01/29/multiple-factor-model-fundamental-data/ 291 | 292 | + [ ] timely factors 293 | http://timelyportfolio.blogspot.com/2014/04/exploring-factors-with-rcharts-and.html 294 | http://timelyportfolio.github.io/rCharts_factor_analytics/factors_with_new_R.html 295 | 296 | + [ ] PCA factors 297 | CFA Stock Premium Factors.pdf 298 | CFM Principal Component Market Factors.pdf 299 | scatterplot of two stocks 300 | rotate axes to get PComps 301 | PCA: don't scale factors 302 | PCA: stock regressed against PCA factors 303 | bootstrap PCA analysis to obtain distribution of loadings 304 | https://tgmstat.wordpress.com/2013/11/28/computing-and-visualizing-pca-in-r/ 305 | apply ADF test to higher order PC's to demonstrate that higher order PC's are more stationary 306 | http://fabian-kostadinov.github.io/2015/01/27/comparing-adf-test-functions-in-r/ 307 | http://www.statmethods.net/advstats/factor.html 308 | http://davetang.org/wiki/tiki-index.php?page=Principal+component+analysis 309 | CFM Principal Component Market Factors.pdf 310 | Alexander Principal Component Multivariate GARCH Model.pdf 311 | 312 | + [ ] PCA as eigenvectors by hand 313 | http://eranraviv.com/multivariate-volatility-forecasting-4-factor-models/ 314 | https://en.wikipedia.org/wiki/Eigendecomposition_of_a_matrix 315 | 316 | + [ ] PCA Principal Components and Clustering 317 | http://systematicinvestor.wordpress.com/2012/12/22/visualizing-principal-components 318 | http://systematicinvestor.wordpress.com/2012/12/29/clustering-with-selected-principal-components 319 | http://systematicinvestor.wordpress.com/2013/01/17/optimal-number-of-clusters 320 | 321 | + [ ] Survey of multi-factor models 322 | https://factorinvestingtutorial.wordpress.com/ 323 | https://github.com/hkuhn/multifactor-models 324 | https://github.com/hkuhn/multifactor-models/blob/master/src/6-pca-factor-model/pca-factor-model.R 325 | 326 | + [ ] data mining for factors 327 | create synthetic time series with correlations using factors, and extract the factors 328 | how much data is needed to obtain accurate estimates? 329 | create synthetic time series without correlations 330 | show that bogus factors are extracted with high t-values 331 | perform bootstrap to reduce data mining for factors 332 | Harvey Factor Model Data Mining Bonferroni Adjustment.pdf 333 | Harvey Bootstrap Factor Models.pdf 334 | 335 | + [ ] significant PCA factors 336 | http://gestaltu.com/2015/11/tactical-alpha-in-theory-and-practice-part-ii-principal-component-analysis.html 337 | Guttman (1954) and Kaiser (1960, 1970), asserted that in order to be significant, "a factor must account for at least as much variance as an individual variable" (Nunnally and Bernstein, 1994). 338 | Horn proposed that factors should only be considered significant if they explain a greater proportion of variance than what might be expected from random chance. 339 | 340 | + [ ] factorAnalytics package vignettes 341 | https://r-forge.r-project.org/scm/viewvc.php/pkg/FactorAnalytics/vignettes/?root=returnanalytics 342 | https://r-forge.r-project.org/projects/factoranalytics/ 343 | http://rpackages.ianhowson.com/rforge/factorAnalytics/ 344 | http://timelyportfolio.blogspot.com/2014/08/famafrench-factors-in-1-line-of-code.html 345 | https://github.com/R-Finance/FactorAnalytics/blob/master/vignettes/fundamentalFM.Rnw 346 | 347 | + [ ] factorAnalytics fundamental factor model 348 | fitFundamentalFactorModel is is now called fitFfm 349 | ?fitFfm 350 | factorAnalytics YiAnChen.pdf 351 | https://r-forge.r-project.org/scm/viewvc.php/pkg/FactorAnalytics/?root=returnanalytics 352 | http://r.789695.n4.nabble.com/factoranalytics-vs-factoranalyticsuw-td4709951.html 353 | 354 | + [ ] factorAnalytics fundamental data and returns for 447 NYSE stocks 355 | stock (Stock.df) Fundamental and return data for 447 NYSE stocks 356 | stock is used by function fitFfm() 357 | ?Stock.df 358 | ls("package:factorAnalytics") 359 | data(package="factorAnalytics") 360 | factors.M (CommonFactors) Factor set of several commonly used factors 361 | factors.Q (CommonFactors) Factor set of several commonly used factors 362 | managers Hypothetical Alternative Asset Manager and Benchmark Data 363 | r.M (StockReturns) Stock Return Data 364 | r.W (StockReturns) Stock Return Data 365 | tr.yields (TreasuryYields) Treasury yields at different maturities 366 | 367 | + [ ] use following data: 368 | data(package="factorAnalytics") 369 | C:\Research\R\Packages\factorAnalytics\extdata 370 | data(package="GARPFRM") 371 | data(package="mpo") 372 | 373 | + [ ] factorAnalytics and rCharts 374 | http://timelyportfolio.blogspot.com/2014/04/exploring-factors-with-rcharts-and.html 375 | 376 | + [ ] BARRA factor model with factorAnalytics 377 | https://github.com/BradGalton/R-Factor-Models/blob/master/Barra%20Industry 378 | 379 | + [ ] factorAnalytics fundamentalFM.Rnw - BARRA fundamental factor model - can't find pdf 380 | https://github.com/R-Finance/FactorAnalytics/blob/master/vignettes/fundamentalFM.Rnw 381 | 382 | + [ ] factor data mining: 24 return factors forecast monthly stock returns 383 | Green Factor Models Stock Forecasting.pdf 384 | quote: 385 | Fama and French (1992, FF92) measured the dimensionality of the cross-section of expected monthly U.S. stock returns by regressing the potential factors beta, firm size, book-to-market, earnings-to-price and leverage. 386 | They found that beta was not explanatory of expected returns, but size and book-to-market were, and that they absorbed the explanatory power of 387 | earnings-to-price and leverage. 388 | FF92 concluded that the cross-section of expected monthly U.S. stock returns was two-factor, although neither factor was consistent with the CAPM. 389 | A third factor in the form of 12-month return momentum (Jegadeesh, 1990; 390 | Jegadeesh and Titman, 1993) was incorporated by Fama and French (1996) and 391 | Carhart (1997) to create the three-factor model of risks that explain equity returns. 392 | 393 | + [ ] Green: most predictive factors of monthly stock returns from Green Factor Models 394 | use standardized unexpected earnings 395 | bm book-to-market 396 | mom12m 12-month momentum 397 | mom36m 36-month momentum 398 | chfeps Change in forecasted annual EPS 399 | ear three-day return centered on the most recent earnings announcement 400 | sfe the ratio of forecasted annual earnings-to-price 401 | rsup quarterly sales growth 402 | indmom 12-month industry return momentum 403 | turn Share turnover 404 | dolvol trading volume in month t-2 405 | rsup Revenue surprise 406 | mve log of market cap at month-end immediately prior to signal date 407 | 408 | + [ ] factor data mining and stock forecasting additional sources for above Green Factor Models 409 | Lewellen Factor Models Stock Forecasting.pdf 410 | Harvey Factor Model Data Mining Bonferroni Adjustment.pdf 411 | Pukthuanthong Ranking Factor Models Stock Forecasting.pdf 412 | 413 | + [ ] demonstrate that the time variation of factors may lead to spurious evidence of additional risk factors 414 | 415 | + [ ] multiple regression 416 | variance inflation factor for multicollinearity in explanatory variables regression analysis 417 | https://en.wikipedia.org/wiki/Variance_inflation_factor 418 | LASSO reduces artefacts from multicollinearity of explanatory variables 419 | 420 | + [ ] factor model regularization (shrinkage) 421 | Regularization (shrinkage) is an example of Occam’s Razor, which was postulated by the fourteenth-century philosopher Sir William of Ockham. 422 | Occam’s Razor states that the most likely solution to be correct is the simplest solution, and that any solution should not be more complicated than necessary ("the law of parsimony"). 423 | 424 | 425 | 426 | ### Forecasting returns and volatility, 427 | 428 | + [ ] show that it's easier to forecast returns over longer horizons in the future 429 | compare forecasts of daily returns, weekly, monthly, annual, etc. using past returns over different horizons - weekly, monthly, annual, etc. 430 | perform apply loops over different horizons 431 | It's easier to forecast long-term returns (over next decade) than short-term returns (over next year), because long-term returns are determined mostly by economic fundamentals, while short-term returns are determined mostly by speculative returns 432 | Similarly, it's easier to forecast the weather over a longer term (next Summer) than over a shorter term (next week), but it's also easier to forecast the weather over a very short term (next day) 433 | 434 | + [ ] forecast a simulated time series 435 | simulate a time series of returns using the Vasicek or Heston models 436 | create a linear forecasting model of returns 437 | evaluate forecasting performance using various measures: MSE, sign of forecast versus realized returns, etc. 438 | use bootstrap to obtain a distribution of forecasting performance ? 439 | define objective function based on distribution of measures ? 440 | calibrate the forecasting model parameters to maximize the objective function 441 | demonstrate that Hurst measures the level of forecastability 442 | plot Hurst as function of model parameters 443 | 444 | + [ ] Using the LASSO to Forecast Returns 445 | http://www.alexchinco.com/using-the-lasso-to-forecast-returns/ 446 | 447 | + [ ] Bias in Time-Series Regressions 448 | http://www.alexchinco.com/bias-in-time-series-regressions/ 449 | 450 | + [ ] simulate GARCH model and forecast volatility 451 | demonstrate forecasting ability as function of GARCH parameters 452 | Goyal GARCH Volatility Forecasting.pdf 453 | 454 | + [ ] stochastic volatility and rebalancing - solve Hamilton-Jacobi-Bellman equation 455 | Goyal Cross Sectional Factors Stock Forecasting.pdf 456 | Rapach Equity Stock Forecasting.pdf 457 | DeMiguel VAR Model Stock Selection Forecasting.pdf 458 | correlation forecasting - is it possible? 459 | 460 | + [ ] is Hurst exponent forecastable? 461 | calculate running Hurst over sliding interval - is Hurst persistent? 462 | calculate Hurst for different assets, and sort them 463 | are stock indexes more forecastable than individual stocks? 464 | 465 | + [ ] Forecasting returns using momentum factor 466 | Vogel Absolute Momentum Stock Forecasting.pdf 467 | Gulen Absolute Momentum Stock Forecasting.pdf 468 | 469 | + [ ] Forecasting returns conditional on volatility 470 | Interaction between returns and volatility 471 | Sort stocks by volatility and test which deciles have highest momentum 472 | Vogel Volatility Momentum Stock Forecasting.pdf 473 | 474 | + [ ] forecast returns using volatility-adjusted momentum - just like Sharpe ranking 475 | Calculate volatility-adjusted momentum rankings by dividing the prior twelve month total return by the realized volatility over the same period and then ranking in the standard fashion. 476 | Clare Volatility Momentum Trend Following Asset Allocation.pdf 477 | Baltas Volatility Momentum Trend Following Asset Allocation.pdf 478 | Zakamulin Momentum Indicators Stock Forecasting.pdf 479 | 480 | + [ ] demonstrate negative correlation between the monthly return of S&P index versus monthly volatility of returns on the index 481 | unexpected volatility is the difference between the realized volatility minus the GARCH forecast 482 | unexpected volatility predicts future excess return and volatility 483 | two strategies that dynamically reallocate between stocks and the risk-free asset, depending on the value of unexpected volatility. 484 | Zakamulin Volatility Forecasting Asset Allocation.pdf 485 | Vogel Absolute Momentum Stock Forecasting.pdf 486 | 487 | + [ ] Testing forecasting accuracy using Diebold Mariano Test 488 | package forecast dm.test() for Diebold Mariano Test ROC curve 489 | Diebold Mariano Forecast Accuracy Test.pdf 490 | C:\Research\R\Tutorials\Zivot\Econ 584\dieboldMariano.pdf 491 | http://stats.stackexchange.com/questions/139462/diebold-mariano-test-for-predictive-accuracy 492 | http://stats.stackexchange.com/questions/143079/what-is-prediction-accuracy-auc-and-how-is-it-the-number-conducted-in-machi?rq=1 493 | 494 | + [ ] measuring predictive ability using bootstrapping 495 | Hansen Forecasting Cross-Validation Bootstrap.pdf 496 | Hansen test improves on White's Reality Check for Data Snooping 497 | Hambuckers Forecasting Cross-Validation Bootstrap.pdf 498 | http://thestatsgeek.com/2014/10/04/adjusting-for-optimismoverfitting-in-measures-of-predictive-ability-using-bootstrapping/ 499 | 500 | + [ ] Ian Kaplan (UofWash) Value Factors Do Not Forecast Returns for S&P 500 Stocks 501 | http://www.bearcave.com/finance/thesis_project/ 502 | http://www.bearcave.com/finance/etf2/index.html 503 | Kaplan Constructing ETF Portfolio.pdf 504 | Kaplan Value Factor Model Forecast Returns.pdf 505 | 506 | + [ ] demonstrate that beta and correlations are difficult to forecast 507 | calculate rolling/running beta 508 | forecast beta out-of-sample, and show it doesn't work 509 | The only thing we can do is to short correlation at +1 and buy it at -1. 510 | beta and correlations are as difficult to forecast as returns 511 | 512 | + [ ] steady momentum frog-in-the-pan indicator: number of winning periods minus number of losing periods 513 | steady momentum indicator should be related to skew: large gains in a short period should produce positive skew 514 | 515 | + [ ] Stroud C programs for forecasting returns, variance, skew, kurtosis, 516 | !!! Stroud High Frequency Forecasting Volatility VIX VXX Strategy.pdf 517 | http://www.jonathanrstroud.com/code.html 518 | 519 | + [ ] forecasting intraday returns after price jumps 520 | Zawadowski Intraday Reversal Stock Forecasting.pdf 521 | Grant Intraday Reversal Stock Forecasting.pdf 522 | Duyvesteyn Intraday Reversal Bond Forecasting.pdf 523 | Schneider Skew Fear Volatility Risk Premium Forecasting.pdf 524 | 525 | + [ ] implied variance and skew forecast realized variance and skew 526 | !!! Kozhan Skew Variance Swap Stock Forecasting.pdf 527 | Kozhan Skew Variance Swap Stock Forecasting SSRN.pdf 528 | Mijatovic VIX Market Factors Stock Forecasting SSRN.pdf 529 | 530 | + [ ] VIX squared minus the five-minute realized variance forecast stocks 531 | volatility risk premium forecasts stocks 532 | does it demonstrate negative relationship between volatility and future return ? 533 | Bollerslev Volatility Stock Forecasting.pdf 534 | Bollerslev Implied Realized Volatility Stock Forecasting.pdf 535 | 536 | + [ ] Hull kitchen sink forecasting 537 | Hull Indicators Stock Forecasting.pdf 538 | Hull Tactical US ETF (HTUS) 539 | http://www.thestreet.com/story/13349919/1/will-this-quant-based-eft-be-able-to-time-the-market.html 540 | 541 | + [ ] Neely combine fundamental and technical indicators 542 | Neely Indicators Stock Forecasting.pdf 543 | Rapach Short Interest Indicator Stock Forecasting.pdf 544 | https://sites.google.com/site/xiaoqiao10/ 545 | http://blog.alphaarchitect.com/2015/02/23/can-you-predict-stock-market-returns-with-short-interest/#.VPEI3EtN3wJ 546 | http://www.superforecasting.com/asset-return-forecasting/ 547 | 548 | + [ ] Do valuation ratios forecast stock returns ? 549 | The Campbell-Shiller identity connects current dividend yield to future returns, dividend growth, and dividend yield 550 | Campbell Stock Forecasting.pdf 551 | add constraints on coefficients to improve forecasting out-of-sample R2 is positive 552 | If R2 is large relative to S2, then an investor can use the information in the predictive regression to obtain a large proportional increase in portfolio return 553 | 554 | + [ ] changes in the analyst rankings of P/E ratios forecasts stocks 555 | Gray Price Earnings Ratio Stock Forecasting.pdf 556 | 557 | + [ ] Kakushadze Alpha Forecasting 558 | Kakushadze Factor Model Stock Alpha Forecasting.pdf 559 | Kakushadze Factor Models Alpha Streams.pdf 560 | 561 | + [ ] yield curve forecasting example 562 | http://eranraviv.com/yield-curve-forecasting/ 563 | 564 | + [ ] Kalman filter 565 | http://bilgin.esme.org/BitsBytes/KalmanFilterforDummies.aspx 566 | http://intelligenttradingtech.blogspot.com/2010/05/kalman-filter-for-financial-time-series.html 567 | http://stats.stackexchange.com/questions/8055/how-to-use-dlm-with-kalman-filtering-for-forecasting 568 | http://www.magesblog.com/2015/01/extended-kalman-filter-example-in-r.html 569 | Arnold Kalman Filter Expectation Maximization.pdf 570 | Sorensen Kalman Filter.pdf 571 | 572 | + [ ] Kalman filter 573 | Prado Kinetic Component Analysis Forecasting.pdf 574 | 575 | 576 | 577 | ### Backtesting: cross-validation, parameter regularization, model overfitting, data snooping, data mining, 578 | 579 | + [ ] verbiage 580 | cross-validation in machine learning is also called backtesting or walk forward analysis 581 | https://en.wikipedia.org/wiki/Backtesting 582 | terminology: formation period or lookback window (in-sample), evaluation period (out-of-sample) 583 | 584 | + [ ] backtesting rule of thumb is to accept a strategy only if out-of-sample (OOS) 585 | dictates that a system passes cross-validation if OOS performance is greater than 50% of in-sample (IS) performance. 586 | 587 | + [ ] two resampling methods: cross-validation and bootstrap 588 | C:\Research\R\Tutorials\Stanford Statistical Learning\cv_boot.pdf 589 | C:\Research\R\Tutorials\Zivot\Econ 424\bootStrapPowerPoint.pdf 590 | C:\Research\R\Tutorials\Shalizi Advanced Data Analysis\which-bootstrap-when.pdf 591 | 592 | + [ ] beta rolling regression: illustrate variance-bias tradeoff 593 | http://scott.fortmann-roe.com/docs/BiasVariance.html 594 | + [ ] create backtesting system for strategies - walk forward analysis 595 | !!! Peterson Developing Backtesting Systematic Strategies.pdf 596 | system should recalibrate forecasting model at lower frequency than the base data frequency 597 | system should apply forecasting model at base data frequency 598 | 599 | + [ ] quantstrat examples 600 | https://timtrice.github.io/backtesting-strategies/ 601 | https://quantstrattrader.wordpress.com/2014/09/09/nuts-and-bolts-of-quantstrat-part-i/ 602 | https://quantstrattrader.wordpress.com/2014/09/16/nuts-and-bolts-of-quantstrat-part-ii/ 603 | https://quantstrattrader.wordpress.com/2014/09/20/nuts-and-bolts-of-quantstrat-part-iii/ 604 | https://quantstrattrader.wordpress.com/2014/09/24/nuts-and-bolts-of-quantstrat-part-iv/ 605 | https://quantstrattrader.wordpress.com/2015/09/03/introduction-to-hypothesis-driven-development-overview-of-a-simple-strategy-and-indicator-hypotheses/ 606 | https://quantstrattrader.wordpress.com/2015/09/09/hypothesis-driven-development-part-ii/ 607 | https://github.com/milktrader/A-Mustering-of-Storks/tree/master/demo 608 | calculate turnover per year, 609 | measure timing performance, 610 | 611 | + [ ] create synthetic time series with autocorrelation and drift, and perform trend following strategy 612 | Nilsson Momentum Trend Following.pdf 613 | tune model parameters in-sample: study bias-variance tradeoff, 614 | study profitability as function of model parameters 615 | 616 | + [ ] ARIMA GARCH strategy 617 | !!! Halls-Moore ARIMA GARCH Strategy.pdf 618 | 619 | + [ ] portfolio backtest packages Jeff Enos and David Kane 620 | https://github.com/dgerlanc 621 | 622 | + [ ] strategery package strategy workflow, backtesting, optimization 623 | https://github.com/danielkrizian/strategery/ 624 | 625 | + [ ] packages ttrTests and fTrading for backtesting Technical Trading Rules 626 | White Strategy Backtesting Overfitting Data Mining Cross-validation Bootstrap.pdf 627 | http://www.inside-r.org/packages/cran/ttrTests/docs/dataSnoop 628 | https://www.linkedin.com/in/david-st-john-96798745 629 | 630 | + [ ] backtest with properly accounting for adjusted prices 631 | http://systematicinvestor.github.io/Backtest-Reality-Check/ 632 | 633 | + [ ] create rebalancing strategy for portfolio with two assets: stock index plus bond index 634 | http://www.capitalspectator.com/portfolio-analysis-in-r-a-6040-us-stockbond-portfolio/ 635 | create portfolio return scatterplot and show that it's negatively skewed, because rebalancing strategy is equivalent to selling put options 636 | demonstrate that a strategy using asset rebalancing to maintain constant market value adds risk 637 | Granger Portfolio Rebalancing Momentum Trend Following.pdf 638 | Qian Asset Allocation Portfolio Rebalancing Alpha.pdf 639 | Qian Asset Allocation Portfolio Rebalancing.pdf 640 | 641 | + [ ] GARCH volatility forecast trading 642 | http://systematicinvestor.wordpress.com/2012/01/06/trading-using-garch-volatility-forecast/ 643 | 644 | + [ ] rugarch ARFIMA ugarchroll rolling estimation forecasting 645 | https://theaverageinvestor.wordpress.com/2011/12/15/more-orthodox-armagarch-trading/ 646 | 647 | + [ ] ARMA Models for Trading - ARIMA backtesting 648 | http://www.quintuitive.com/2012/08/22/arma-models-for-trading 649 | http://www.quintuitive.com/2012/12/27/armagarch-experiences/ 650 | http://www.quintuitive.com/category/research/armagarch/ 651 | http://www.quintuitive.com/2013/03/24/automatic-armagarch-selection-in-parallel/ 652 | 653 | + [ ] SVM Models for Trading 654 | http://www.quintuitive.com/category/research/svm/ 655 | 656 | + [ ] distinguish single-asset strategies from cross-sectional strategies 657 | ranking and sorting stocks 658 | 659 | + [ ] Probit Model 660 | http://www.capitalspectator.com/a-partial-solution-for-narrative-risk-probit-modeling/ 661 | https://gist.github.com/jpicerno1/f8307d0c14cc39d25c53 662 | 663 | + [ ] XIV VXX ZIV strategies by Harry Long 664 | http://seekingalpha.com/article/2616495-a-weird-all-long-strategy-that-beats-the-s-and-p-500-every-year-ii 665 | http://seekingalpha.com/article/2627145-a-refined-all-long-strategy-iii 666 | + [ ] Ilya Kipnis backtesting Harry Long strategies 667 | http://quantstrattrader.wordpress.com/2014/10/08/structural-arbitrage-a-working-long-history-backtest/ 668 | http://quantstrattrader.wordpress.com/2014/11/02/its-amazing-how-well-dumb-things-get-marketed/ 669 | http://quantstrattrader.wordpress.com/2014/11/03/seeking-volatility-and-leverage/ 670 | + [ ] parameter heatmaps 671 | http://quantstrattrader.wordpress.com/2014/11/19/trading-the-odds-volatility-risk-premium-addressing-data-mining-and-curve-fitting/ 672 | + [ ] if VIX contango (VXV/VXMT<1), then long XIV (short VIX) - if VIX backwardation (VXV/VXMT>1), then long VXX (long VIX) 673 | http://quantstrattrader.wordpress.com/2014/12/04/a-new-volatility-strategy-and-a-heuristic-for-analyzing-robustness/ 674 | + [ ] same as above but delayed execution 675 | http://quantstrattrader.wordpress.com/2014/12/10/an-update-to-the-robustness-heuristic-and-a-variation-of-a-volatility-strategy/ 676 | 677 | + [ ] VIX strategies 678 | Donninger VIX Futures Skew Strategy.pdf 679 | Mixon VIX Futures Markets Review.pdf 680 | 681 | + [ ] VIX strategies 682 | http://systematicinvestor.github.io/TradingTheOdds/ 683 | http://quantstrattrader.wordpress.com/2014/12/12/the-zomma-warthog-index/ 684 | 685 | + [ ] volatility risk premium heatmap 686 | http://quantstrattrader.wordpress.com/2014/11/19/trading-the-odds-volatility-risk-premium-addressing-data-mining-and-curve-fitting/ 687 | http://volatilitymadesimple.com/chasing-the-volatility-risk-premium/ 688 | 689 | + [ ] volatility VXX XIV shiny app 690 | https://alphaminer.shinyapps.io/VolaStrat/ 691 | 692 | + [ ] create option selling strategy with position limits: 693 | double down as option premiums increase (this will increase position size) 694 | reduce position size when market turns 695 | this is a path-dependent strategy 696 | 697 | + [ ] create strategy using as inputs Treasury curve, VIX curve, stock momentum, etc. 698 | Gayed Treasury Curve Anomaly Asset Allocation.pdf 699 | 700 | + [ ] create strategy that forecasts returns over longer horizons 701 | should it rebalance over longer horizons too ? 702 | what if monthly returns are forecast but rebalancing is performed daily ? 703 | is it better to forecast monthly returns and rebalance daily, 704 | instead of forecasting daily returns and rebalancing daily ? 705 | compare best strategies over different horizons - change horizon parameter 706 | you can use three parameters: lookback window, forecast horizon, and rebalancing frequency 707 | 708 | + [ ] trading strategy with stochastic volatility 709 | Johannes Stock Forecasting Intertemporal Universal Portfolios Choice.pdf 710 | 711 | + [ ] create examples of strategies with great performance despite low Sharpe ratios (trend following?) and vice versa (mean reversion?) 712 | better Sharpe ratio: 713 | http://bettersystemtrader.com/sharpe-ratio-right-answer-wrong-question/ 714 | 715 | + [ ] distinction between long volatility strategies and short volatility strategies 716 | mean reverting strategies have natural profit caps (exit when price has reverted to mean) but no natural stop losses (we should buy more of something if it gets cheaper), so it is very much subject to left tail risk, but cannot take advantage of the unexpected good fortune of the right tail. 717 | On the contrary, momentum strategies have natural stop losses (exit when momentum reverses) and no natural profit caps (keep same position as long as momentum persists). 718 | 719 | + [ ] create league table of indicators from package TTR 720 | Green Indicators Stock Forecasting.pdf 721 | Zakamulin Indicators Stock Forecasting.pdf 722 | 723 | + [ ] check for data snooping (leaking or look ahead bias) in backtest 724 | propagate price spike in backtest 725 | feed random data into backtest 726 | 727 | + [ ] data mining (synonyms significance inflation, multiple testing), and false discovery rate 728 | https://en.wikipedia.org/wiki/Look-elsewhere_effect 729 | create example of data mining: create tech indicator with several parameters 730 | http://datagrid.lbl.gov/backtest/ 731 | http://www.financial-math.org/software/ 732 | 733 | + [ ] controlling the false-discovery rate using Bonferroni method Sidak correction 734 | http://www.alexchinco.com/screening-using-false-discovery-rates/ 735 | http://eranraviv.com/sample-data-snooping/ 736 | http://eranraviv.com/modern-statistical-discoveries/ 737 | Bailey Prado Deflated Sharpe Ratio Overfitting.pdf 738 | Bailey Prado Strategy Backtesting Overfitting Cross-validation.pdf 739 | Bailey Prado Strategy Backtesting Overfitting.pdf 740 | Harvey Backtesting Data Mining Bonferroni Adjustment.pdf 741 | Harvey Evaluating Trading Strategies.pdf 742 | White Strategy Backtesting Overfitting Data Mining Cross-validation Bootstrap.pdf 743 | 744 | + [ ] add transaction costs 745 | Donninger Overnight Momentum Seasonal Anomaly.pdf 746 | $12.5 broker fee per trade ($25 round-trip) 747 | for Nasdaq the money-value of 1 tick is $5 - 1 tick is also the typical bid-ask spread for NQ 748 | for ES E-mini futures the money-value of 1 tick is 12.5$ 749 | 750 | + [ ] metaparameter data mining increases false-discovery rate 751 | momentum indicators cross-validation for determining optimal filter parameters 752 | !!! Bruder Momentum Indicators Kalman Filter SVM.pdf 753 | Wojtow Momentum Trend Following.pdf 754 | create heatmap of model parameters using expand.grid 755 | 756 | + [ ] perform grid search of model parameters on heatmap 757 | find max and min and indices with arr.ind=FALSE 758 | http://sebastianraschka.com/Articles/heatmaps_in_r.html 759 | http://stackoverflow.com/questions/8421536/a-true-heat-map-in-r 760 | http://stat.ethz.ch/R-manual/R-patched/library/stats/html/heatmap.html 761 | http://hosho.ees.hokudai.ac.jp/~kubo/Rdoc/library/gplots/html/heatmap.2.html 762 | http://digitheadslabnotebook.blogspot.com/2011/06/drawing-heatmaps-in-r.html 763 | 764 | + [ ] plot grid heatmaps 3d charts 765 | use random data to show that optimal in-sample parameters are not best out-of-sample, because of noise in-sample 766 | show that the best out-of-sample parameters depend on level of noise 767 | with lower noise level, the best out-of-sample parameters is closer to the optimal in-sample parameters 768 | 769 | + [ ] System Parameter Permutation (SPP): 770 | we don't know the appropriate model parameters for the best future performance, so run the model using all possible parameter permutations, to obtain a distribution of possible future performance. 771 | SPP provides distribution of model performance 772 | worst-case contingencies must be tolerated in order to achieve the long-run expectation? 773 | Walton Backtesting Overfitting Parameter Permutation.pdf 774 | 775 | + [ ] calculate histogram of performance on model parameters 776 | the median serves as the best estimate of future strategy performance out-of-sample 777 | The median performance can be used as the best estimate of future strategy performance 778 | 779 | + [ ] data resampling: divide the data into non-overlapping intervals 780 | for each interval find the optimal in-sample strategy parameters 781 | create distribution of optimal in-sample strategy parameters from all the intervals, and calculate parameter standard error 782 | calculate distribution of strategy performance using the distribution of parameters 783 | the distribution of performance provides an estimate of possible future strategy performance 784 | summarize the distribution of strategy performance (mean and SD ?) 785 | this summary provides an estimate of the strategy's usefulness potential 786 | create benchmark random data with the same moments as the real data - shuffle real data ? 787 | compare the distribution of strategy performance for real data with that for random data 788 | random data should produce high mean performance but also very high SD of parameters 789 | random data should have slightly higher mean (?) but much higher SD 790 | create single performance measure defined as excess performance over random benchmark: 791 | decrease in SD minus wieghted decrease in mean (decrease in SD wieghs more than decrease in mean) 792 | 793 | + [ ] quantile optimization with data resampling: repeat the above, but instead of optimal in-sample strategy parameters, select median (quantile) parameters 794 | for each interval find the strategy parameters corresponding to the median (quantile) performance 795 | apply those parameters to calculate the strategy performance for all the data out-of-sample 796 | calculate the distribution of out-of-sample strategy performance 797 | which quantile corresponds to the best out-of-sample strategy performance? 798 | + [ ] in each interval select the parameters corresponding to a certain performance quantile 799 | apply the quantile parameters in other intervals, and collect performance distribution 800 | this way create performance distributions as function of performance quantile 801 | find the performance quantile with the best performance distribution - how does it change with level of noise ? 802 | this should demonstrate that the best in-sample parameters are far from the best out-of-sample parameters 803 | modify the above by using all the parameters in the full quantile (tail), instead of just the ones at the cutoff 804 | + [ ] perform model ensemble backtesting exercise 805 | perform backtesting, but at each step don't select the optimal parameters, because the optimal model likely outperforms because it is fit to noise 806 | instead select several models with parameters corresponding to a certain performance quantile (ensemble) 807 | the choice of performance quantile depends on the level of noise 808 | 809 | + [ ] the performance quantile with the best performance distribution corresponds to a distribution of parameters - which is an ensemble of models 810 | does this ensemble of models also have the best backtesting results ? 811 | this approach using ensembles of models defines a new backtesting paradigm 812 | 813 | + [ ] Perform futility analysis to determine if model is close to random 814 | Futility Analysis versus random benchmark (in clinical trials) 815 | When is enough data collected to conclude that a model is close to random ? 816 | Answer: when the likelihood that it's not random is very small 817 | http://onbiostatistics.blogspot.com/2012/03/futility-analysis-in-clinical-trials.html 818 | random prices as benchmark 819 | https://en.wikipedia.org/wiki/Sequential_analysis 820 | !!! Kuhn Parallel Adaptive Resampling.pdf 821 | !!! Kuhn Futility Analysis Cross-Validation Machine Learning Models.pdf 822 | + [ ] caret package by Max Kuhn for creating predictive models 823 | caret Predictive Modeling.pdf 824 | caret Predictive Modeling.R 825 | http://caret.r-forge.r-project.org/ 826 | http://appliedpredictivemodeling.com/data/ 827 | http://stackoverflow.com/users/1078601/topepo 828 | 829 | + [ ] Determine stop-loss policy parameters using sequential hypothesis testing 830 | Sequential hypothesis testing 831 | 832 | + [ ] mean reverting strategies 833 | Blitz Short-Term Residual Reversal.pdf 834 | 835 | + [ ] overfitting genetic programming models 836 | http://fabian-kostadinov.github.io/2015/01/14/evolving-trading-strategies-with-genetic-programming-punishing-complexity/ 837 | 838 | + [ ] backtesting fallacies 839 | http://www.philosophicaleconomics.com/2015/12/backtesting/ 840 | 841 | + [ ] get R code from Krauss 842 | Krauss Piotroski Score Value Stock Strategy.pdf 843 | 844 | + [ ] many quant indexes have underperformed compared to backtests 845 | Beware of optimistic results of backtesting hypothetical investment strategies! Past backtesting results are no guarantee of future performance, as they say. 846 | http://www.bloomberg.com/news/articles/2016-01-21/how-wall-street-finds-new-ways-to-sell-old-opaque-products-to-retail-investors 847 | 848 | 849 | 850 | ### Asset pricing anomalies: size, value, momentum, volatility, 851 | 852 | + [ ] equity risk premium anomalies 853 | Antti Ilmanen: The equity risk premium (ERP) refers to the expected return of a broad equity index in excess of some fixed-income alternative. 854 | Arnott (Research Affiliates): 855 | The ERP Puzzle: Stocks beat bonds by more than they should. 856 | Historical excess returns exhibit large negative correlation. 857 | The correlation between consecutive 10-year stock market excess returns over 10-year government bonds has been a whopping –38 percent. 858 | When stocks beat bonds by a wide margin in one decade, they reversed with 859 | reasonable reliability over the next decade. 860 | This correlation is both statistically significant and economically meaningful. 861 | 862 | + [ ] pricing anomalies papers 863 | !!! Bouchaud Momentum Volatility Market Anomalies.pdf 864 | Fama French Dissecting Anomalies.pdf 865 | C:\Research\Academic\Cochrane Advanced Investments\new_anomalies.pdf 866 | Vogel Factor Model Momentum Anomaly.pdf 867 | CFM Momentum Trend Following Strategy Anomaly.pdf 868 | Han Trend Factor Cross-Section Momentum Stock Returns.pdf 869 | Israel Size Value Momentum Anomalies.pdf 870 | DeBondt Stock Premium January Anomaly.pdf 871 | 872 | + [ ] Asness anomalies 873 | Asness Fama French Small-Cap Anomalies.pdf 874 | Asness data files in: Asness*.xlsx 875 | 876 | + [ ] Anomalies aren't persistent 877 | Edwards Market Anomaly Smart Beta Persistent Spurious.pdf 878 | 879 | + [ ] Low volatility anomaly 880 | Boudt Low Volatility Anomaly High Frequency Data.pdf 881 | Gray Low Volatility Anomaly.pdf 882 | Baker Low Volatility Anomaly.pdf 883 | Li Low Volatility Anomaly FAJ.pdf 884 | Han Volatility Decile Cross-Sectional Momentum Anomaly.pdf 885 | 886 | + [ ] Low beta anomaly caused by demand for positive skewness (lottery) which reduces future returns 887 | Bali Betting Against Beta Lottery Demand.pdf 888 | 889 | + [ ] Jacobs: momentum anomaly enhanced by skewness 890 | skewness enhanced momentum is about twice as large as traditional momentum 891 | skewness is among the most important cross-sectional determinants of momentum 892 | Jacobs Skewness Cross-Sectional Momentum Anomaly.pdf 893 | Amaya Skewness Momentum Equity Returns 894 | http://www.etf.com/sections/index-investor-corner/swedroe-keep-skewness-perspective 895 | 896 | + [ ] Show that the returns of momentum strategies have negative skewness: momentum strategies have positive returns but also experience infrequent but significant negative returns 897 | http://blog.alphaarchitect.com/2015/05/11/momentum-investing-skewness-enhanced-momentum-yields-double-alpha/#gs.YexM_xM 898 | 899 | + [ ] Schneider: CAPM betas overestimate true market risk 900 | demonstrate that if asset value follows a lognormal process, then the equity price in Merton model has a skewed distribution of returns 901 | demonstrate that equity returns in Merton model have positive skewness, since they are a call option 902 | high credit risk produces time-varying skewness in Merton model 903 | demonstrate that high credit risk produces time-varying skewness in Merton model 904 | Schneider Volatility Anomaly Skew Risk Premium.pdf 905 | Schneider Skew Anomaly Merton Credit Risk Forecasting.pdf 906 | 907 | + [ ] Ang Idiosyncratic Volatility Anomaly.pdf 908 | R code to replicate main results in Ang, Hodrick, Xing, and Zhang (2006) 909 | https://gist.github.com/alexchinco/d58ebd7750904db1b94c 910 | https://gist.github.com/alexchinco 911 | https://github.com/alexchinco 912 | 913 | + [ ] Treasury Curve Anomaly 914 | Gayed Treasury Curve Anomaly Asset Allocation.pdf 915 | 916 | + [ ] Value strategies can be implemented in many different ways, leading to widely different performance 917 | http://investorfieldguide.com/three-value-investors-meet-in-a-bar/ 918 | Stock value can be measured in several different ways including book value, earnings, and sales. 919 | The Russell 1000 Value has underperformed the Russell 1000 by -22% and the Russell 1000 Growth by -43% over the past decade (10 years ending 11/30/15). 920 | idea: apply value investing to different value indices: buy more of the cheap ones 921 | 922 | 923 | 924 | ### Seasonal Anomalies 925 | 926 | + [ ] demonstrate sell in May anomaly by subsetting S&P returns 927 | Bouman Sell in May Halloween Seasonal Anomaly.pdf 928 | Afik Sell in May Halloween Seasonal Anomaly 929 | Matilde Sell in May Halloween Seasonal Anomaly.pdf 930 | Dzhabarov Seasonal Anomalies.pdf 931 | 932 | + [ ] Cieslak Market Timing FOMC Calendar Seasonal Anomaly.pdf 933 | 934 | + [ ] daily overnight seasonal anomaly 935 | buy ES in last 30min, and sell ES next morning in first 30min - trade only on reversals 936 | Gray Lou Overnight Momentum Seasonal Anomaly.pdf 937 | Lou Overnight Momentum Seasonal Anomaly CAPM Factor Models.pdf 938 | Cliff Overnight Momentum Seasonal Anomaly.pdf 939 | Donninger Overnight Momentum Seasonal Anomaly.pdf 940 | http://jonathankinlay.com/index.php/2015/11/overnight-trading-in-the-e-mini-sp-500-futures/ 941 | http://www.priceactionlab.com/Blog/2015/11/overnight-trading-anomaly-backtesting-r/ 942 | http://blog.fosstrading.com/2015/11/overnight-spy-anomaly.html 943 | http://systemtradersuccess.com/overnight-edge/ 944 | http://systemtradersuccess.com/market-seasonality-study/ 945 | http://systemtradersuccess.com/seasonality-sp-market-session/ 946 | 947 | + [ ] daily overnight overreaction gap reversal anomaly 948 | create morning strategy based on open-close (daytime) and close-open (overnight) returns 949 | is there price gap in morning ? what is best rule based on combination of all three returns? 950 | Donninger Intraday Reversal Stock Forecasting.pdf 951 | Kudryavtsev Intraday Reversal Stock Forecasting.pdf 952 | Kudryavtsev abstract Intraday Reversal Stock Forecasting.pdf 953 | 954 | 955 | 956 | ### Investor risk preferences and utility functions: investor prudence and temperance, 957 | 958 | + [ ] derive CAPM from utility 959 | Show that logarithmic utility implies max Sharpe 960 | 961 | + [ ] skew demand causes underperformance, and creates stock premium factor 962 | Ilmanen Buying Selling Insurance Lottery Tickets.pdf 963 | Nekrasov Kelly Criterion Multivariate Portfolios.pdf 964 | 965 | 966 | 967 | ### Estimation of covariance and correlation matrices, Akaike and Bayesian information criteria, coefficient shrinkage, 968 | 969 | + [ ] estimating covariance and correlation matrices 970 | https://en.wikipedia.org/wiki/Estimation_of_covariance_matrices 971 | http://quant.stackexchange.com/questions/44/what-methods-do-you-use-to-improve-expected-return-estimates-when-constructing-a 972 | http://quant.stackexchange.com/questions/10101/portfolio-optimization-shrinkage-of-covariance-matrix-when-data-is-available 973 | 974 | + [ ] covmat package for asset return correlation matrix estimation 975 | https://github.com/rstats-gsoc/gsoc2015/wiki/Covariance-Matrix-Estimators 976 | https://github.com/arorar/covmat 977 | data(package="covmat") 978 | 979 | + [ ] correlation covariance estimation and shrinkage 980 | !!! https://bwlewis.github.io/covariance-shrinkage/ 981 | http://bwlewis.github.io/covar/missing.html 982 | + [ ] correlation parameter uncertainty 983 | demonstrate how correlation parameter uncertainty increases with smaller number of observations or larger number of assets. 984 | 985 | + [ ] indeterminate correlation matrix 986 | Cholesky decomposition fails when correlation matrix is mis-specified (not orthogonal and not positive definite) 987 | create example of mis-specified matrix and demonstrate how to fix it 988 | correlation matrix estimation error bands 989 | Kwan Correlation Estimation Error.pdf 990 | 991 | + [ ] SVD and covariance matrix inverse: 992 | inverse of covariance matrix using factors 993 | Karhunen-Loeve Decomposition 994 | 995 | + [ ] tawny package for regularizinging correlation matrices using random matrix theory and shrinkage estimation 996 | Rowe Random Matrix Shrinkage Covariance Estimation.pdf 997 | Gatheral Random Matrix Shrinkage Covariance Estimation.pdf 998 | Plerou Random Matrix Correlation Estimation.pdf 999 | 1000 | + [ ] package irlba 1001 | Lewis RFinance 2012 Cointegration SVD.pdf 1002 | C:\Research\R\R-Finance 2015\BryanLewis.html 1003 | 1004 | + [ ] Factor Augmented Regression for shrinking correlation matrix 1005 | Fit asset returns into multifactor model (start with CAPM), 1006 | Fitted asset returns should equal weighted sum of factors plus random uncorrelated residual, 1007 | Calculate correlation matrix of the fitted asset returns, 1008 | The correlation matrix should depend only on the factor correlations and asset betas, 1009 | Chiara Factor Model Forecasting.pdf 1010 | Kakushadze Correlation Shrinkage Factor Models.pdf 1011 | 1012 | + [ ] demonstrate that the term structure of correlation decreases with tenor 1013 | show that correlation depends on time scale, and decreases with shorter time scale 1014 | on short time scales correlation is very small 1015 | on intermediate time scales correlation is greater 1016 | on long time scales correlation is lower 1017 | study Lo and MacKinlay variance ratio test in: 1018 | Kinlaw Variance Ratio Correlation Term Structure.pdf 1019 | package vrtest 1020 | 1021 | + [ ] package corpcor for estimation of correlation for biostatistics 1022 | http://strimmerlab.org/software/corpcor/ 1023 | 1024 | + [ ] Multivariate volatility and correlation forecasting DCC GARCH model 1025 | http://eranraviv.com/multivariate-volatility-forecasting-1/ 1026 | 1027 | + [ ] estimate correlation using OHLC data 1028 | Bannouh Range High Frequency Covariance Estimators.pdf 1029 | Rogers OHLC Range Covariance Estimators.pdf 1030 | 1031 | + [ ] introduce the Gerber Statistic 1032 | Gerber Statistic Portfolio Optimization.pdf 1033 | http://nextlevelanalytics.github.io/2016/05/26/Gerber/ 1034 | 1035 | 1036 | 1037 | ### Portfolio optimization: package PortfolioAnalytics, 1038 | 1039 | + [ ] Efficient Frontier Portfolios 1040 | http://zoonek.free.fr/blosxom/R/2012-06-01_Optimization.html 1041 | https://gist.github.com/jpicerno1/565be39ca4226ecd004c 1042 | http://www.capitalspectator.com/efficient-frontier-portfolios-impractical-but-still-useful/ 1043 | http://moderndata.plot.ly/portfolio-optimization-using-r-and-plotly/ 1044 | 1045 | + [ ] Show that any convex combination of efficient frontier portfolios is also an efficient frontier portfolio. 1046 | The efficient frontier consists of convex combinations of any two efficient frontier portfolios. 1047 | 1048 | + [ ] Optimizing portfolios under different correlation assumptions 1049 | create risk/return scatterplot for portfolios with two assets: stocks plus bonds 1050 | create vector of weights and plot line from stocks to bonds 1051 | simulate stock and bond returns using different correlations, and study effect on the line 1052 | solve for the most efficient portfolios (highest Sharpe) and create plot of bond percentage as function of correlation 1053 | create xts plot with slider for bond weight, display how Sharpe ratio changes 1054 | 1055 | + [ ] proporties of the Market Portfolio under the CAPM model 1056 | the Market Portfolio is assumed to be the optimal portfolio with the highest utility under the CAPM model, 1057 | the Market Price of Risk equals the highest Sharpe ratio of the optimal portfolio 1058 | How can Market Portfolio be obtained ? 1059 | What is Market Portfolio isn't it the same as highest Sharpe portfolio ? 1060 | Market Portfolio can be obtained by optimizing Sharpe ratio ? 1061 | The Market Portfolio isn't necessarily equal to the cap-weighted portfolio of all assets 1062 | 1063 | + [ ] CAPM holds by construction when market portfolio is the efficient frontier portfolio. 1064 | When individual stock returns are regressed on the efficient portfolio returns, then their residuals are uncorrelated, because if they weren't then a more efficient portfolio could be constructed. 1065 | If the residuals of returns in SML were correlated with each other, then a different Market Portfolio would exist portfolios on the CML satisfy the SML equation 1066 | provide reasons why CAPM may not hold? 1067 | Can Security Market Line (SML) be derived from Capital Market Line (CML)? 1068 | Yes, because if we choose the most efficient portfolio as the reference portfolio for CAPM, then an asset's idiosyncratic returns will on average have mean equal to zero 1069 | 1070 | + [ ] "Zivot portfolio.r" from econ424 1071 | http://faculty.washington.edu/ezivot/econ424/portfolio.r 1072 | Zivot Efficient Portfolios in R 1073 | C:\Research\R\Tutorials\Zivot\Econ 424\bootstrapPortfoliosPowerpoint.pdf 1074 | C:\Research\R\Tutorials\Zivot\Econ 424\bootstrapPortfolio.R 1075 | 1076 | + [ ] portfolio optimization using optim 1077 | can mean variance portfolio optimization be converted to min variance optimization ? 1078 | library(quadprog) 1079 | solve.QP 1080 | different objective functions, 1081 | constraints 1082 | + [ ] DEoptim 1083 | Ardia DEoptim Portfolio Optimization.pdf 1084 | Boudt DEoptim Portfolio Optimization.pdf 1085 | Boudt Asset Allocation Conditional Value-at-Risk Budgets.pdf 1086 | 1087 | + [ ] use MC and bootstrap to create scatterplot of optimal portfolios or weights, due to parameter uncertainty 1088 | place the zero correlation optimal portfolio on that scatterplot to show that it's as good as the optimal portfolio 1089 | 1090 | + [ ] portfolio optimization with different objective functions - VaR, CVaR, 1091 | Ian Kaplan (UofWash) minimum variance and tangency portfolios, CVaR portfolio optimization, ETF portfolios, Wharton Research Data Service (WRDS) data set and Factor Model Factors 1092 | http://www.bearcave.com/finance/ 1093 | Shaw Portfolio Optimization CVaR Omega Utility.pdf 1094 | 1095 | + [ ] Guy Yollin’s "effFrontier" and "maxSharpe" functions use the core function of "portfolio.optim" in the "tseries" R package 1096 | http://blog.streeteye.com/blog/2012/01/portfolio-optimization-and-efficient-frontiers-in-r/ 1097 | C:\Research\R\Tutorials\Guy Yollin Presentations 1098 | Levy Alpha Sharpe Portfolio Optimization.pdf 1099 | 1100 | + [ ] package NMOF PMwR 1101 | Schumann Take the Best Portfolio Selection Heuristic.pdf 1102 | portfolio optimization adds no incremental value because correlation forecast error is so large that best to rely on marginal risk for portfolio choice. 1103 | pick assets that are good on their own, not for diversification, 1104 | simple sorting rules or cutoff rules are likely "more optimal" than is sometimes thought. 1105 | C:\Research\R\Packages\NMOF\doc 1106 | C:\Research\R\Packages\NMOF\book 1107 | DEopt 1108 | PSopt 1109 | NMOF Portfolio Optimization Threshold Accepting.pdf 1110 | quadprog package 1111 | solve.QP 1112 | TAopt 1113 | 1114 | + [ ] nice formulas Global Minimum Variance Weights 1115 | http://www.bearcave.com/finance/portfolio_equations/ 1116 | 1117 | + [ ] package fPortfolio in Rmetrics for portfolio optimization 1118 | 1119 | + [ ] constrained portfolio optimization shrinkage 1120 | http://www.finance-r.com/s/efficient_frontier_fPortfolio/complete/ 1121 | http://www.finance-r.com/s/simple_portfolio_optimization_tseries/complete/ 1122 | http://www.portfolioprobe.com/2011/04/28/a-test-of-ledoit-wolf-versus-a-factor-model 1123 | http://quant.stackexchange.com/questions/10101/portfolio-optimization-shrinkage-of-covariance-matrix-when-data-is-available 1124 | https://systematicinvestor.wordpress.com/2011/11/11/resampling-and-shrinkage-solutions-to-instability-of-mean-variance-efficient-portfolios/ 1125 | https://systematicinvestor.wordpress.com/2013/10/29/updates-for-proportional-minimum-variance-and-adaptive-shrinkage-methods/ 1126 | http://quant.stackexchange.com/questions/1504/robust-portfolio-optimization-re-balancing-with-transaction-costs 1127 | Golts Constrained Shrinkage Portfolio Optimization.pdf 1128 | Demiguel Shrinkage Estimators Portfolio Optimization.pdf 1129 | Ledoit Wolf Covariance Shrinkage Estimators Portfolio Optimization.pdf 1130 | 1131 | + [ ] SharpeR and MarkowitzR packages by Steven Pav 1132 | Sharpe ratio as Hotelling's t-squared distribution 1133 | https://github.com/shabbychef 1134 | Pav Sharpe Ratio Notes Hotelling Statistic 1135 | Pav Strategy Overfit 1136 | Pav code for Cochrane Asset Pricing 1137 | https://github.com/shabbychef/coursera_ap2013 1138 | SharpeR Vignette.pdf 1139 | MarkowitzR Vignette.pdf 1140 | MarkowitzR AsymptoticMarkowitz.pdf 1141 | finding optimal portfolio in-sample is the same as finding optimal strategy in-sample - both are over-fit and require shrinkage 1142 | Britten-Jones Sampling Error Mean-Variance Efficient Portfolio Weights 1143 | 1144 | http://blog.fosstrading.com/2014/03/intro-to-portfolioanalytics.html 1145 | + [ ] demo_efficient_frontier.R 1146 | portfolio object specifies the constraints and objectives for the optimization 1147 | 1148 | + [ ] PortfolioAnalytics package for portfolio optimization 1149 | PortfolioAnalytics Bennett Random Portfolios Swarm Optimization.pdf 1150 | C:\Research\R\Packages\PortfolioAnalytics Bennett 1151 | https://github.com/rossb34/PortfolioAnalyticsPresentation2015 1152 | 1153 | + [ ] visualize portfolio optimization 1154 | chart.VaRSensitivity 1155 | chart.RiskReward(risk.col="StdDev") or (risk.col="ES") 1156 | combine portfolios into list and chart: chart.EfficientFrontierOverlay 1157 | 1158 | + [ ] create portfolios satisfying combinations of constraints and objectives: 1159 | objectives: maxSR, maxSRES, minVAR, minVARES, 1160 | constraints: long-only, long-short, neutral, box, leverage (=sum of absolute values of weights), 1161 | mean-ES (Expected Shortfall) portfolio 1162 | min-ES (Expected Shortfall) portfolio 1163 | mean-variance portfolio 1164 | mean-variance long-only portfolio 1165 | min-variance long-only portfolio 1166 | Maximize portfolio mean return per unit of ES/ETL/CVaR=STARR Ratio 1167 | ES=Expected Shortfall=Conditional VaR=CVaR=STARR (Stable Tail Adjusted Return Ratio) 1168 | method="historical", method="gaussian" or method="modified" 1169 | 1170 | + [ ] optimize.portfolio: study and explain effect of choosing different 1171 | optimize_method="DEoptim", "random", "ROI", 1172 | ROI package=R Optimization Infrastructure 1173 | 1174 | + [ ] optimize simultaneously several portfolios with different constraints and objectives 1175 | optimize.portfolio.rebalancing 1176 | 1177 | + [ ] introduce Hierarchical Risk Parity (HRP), the Gerber Statistic, and the Critical Line Algorithm (CLA) 1178 | http://gallery.rcpp.org/articles/HRP/ 1179 | https://github.com/RcppCore/rcpp-gallery/blob/gh-pages/src/2016-05-27-HRP.Rmd 1180 | http://nextlevelanalytics.github.io/2016/05/30/Gerber_Statistic_and_Hierarchical_Risk_Parity/ 1181 | 1182 | + [ ] Michaud Resampled Efficiency Portfolio Optimization (patented) 1183 | https://newfrontieradvisors.com/Research/Articles/MichaudResampledEfficiency.html 1184 | https://systematicinvestor.wordpress.com/2011/11/11/resampling-and-shrinkage-solutions-to-instability-of-mean-variance-efficient-portfolios/ 1185 | 1186 | + [ ] Random Subspace Optimization is a generalization of the random forest algorithm 1187 | https://systematicedge.wordpress.com/2013/10/14/random-subspace-optimization-max-sharpe/ 1188 | 1189 | 1190 | ### Active portfolio management strategies: out-of-sample performance of optimized portfolios, tactical asset allocation, risk parity, minimum correlation, minimum variance, maximum Sharpe, maximum CVaR, universal portfolios, 1191 | 1192 | + [ ] simulate terminal distribution of stock prices 1193 | simulate 500 correlated stocks time series random lognormal with positive drift, 1194 | use them for random portfolios 1195 | create a value-weighted index 1196 | show that cap-weighted index investors are inherently trend-following because index keeps buying more of the outperforming stocks 1197 | compare to equally weighted index 1198 | which investors perform better? 1199 | expand on: cap-weighted indices have large concentrations and undesirable factor exposures to momentum 1200 | 1201 | + [ ] demonstrate that active managers are likely to underperform index, unless they have extraordinary skill 1202 | http://www.bellmanoptimality.com/programming/ 1203 | http://www.bellmanoptimality.com/ 1204 | Heaton Stock Index Selection Active Portfolio Management.pdf 1205 | 1206 | + [ ] Grinold fundamental law of active management 1207 | Grinold Synopsis Active Portfolio Management.pdf 1208 | 1209 | + [ ] Bogle's message is: it's better to invest in indices, unless you're a genius stock picker or a genius speculator. 1210 | http://blogs.wsj.com/moneybeat/2015/12/24/this-simple-way-is-the-best-way-to-predict-the-market/ 1211 | Bogle Investing Factor Models.pdf 1212 | Bogle postulates that long-term returns on investments consist of an "investment return" (initial yield plus earnings growth) plus the "speculative return" (discount factor determined by investor psychology and risk appetite). 1213 | The cumulative investment return is positive, while the cumulative speculative return is close to zero. 1214 | 1215 | + [ ] Merton model: simulate dynamic investment and consumption strategies 1216 | Merton Dynamic Consumption and Portfolio Choice 1217 | simulate Merton consumption wealth model 1218 | Guasoni Merton Optimal Consumption Utility Shortfall Aversion.pdf 1219 | An Merton Utility Asset Allocation.pdf 1220 | https://en.wikipedia.org/wiki/Intertemporal_portfolio_choice 1221 | https://en.wikipedia.org/wiki/Merton%27s_portfolio_problem 1222 | 1223 | + [ ] Intertemporal portfolio choice 1224 | calculate out-of-sample performance of optimized portfolios, 1225 | perform rolling portfolio optimization and study stability of weights over time 1226 | 1227 | + [ ] optimize portfolio assuming zero or constant asset correlations 1228 | demonstrate that this portfolio outperforms out-of-sample 1229 | Sivaramakrishnan Intertemporal Portfolio Choice.pdf 1230 | Garleanu Intertemporal Portfolio Choice.pdf 1231 | 1232 | + [ ] simulate static asset allocation strategies 1233 | all weather portfolios 1234 | Faber Arnott Portfolio Asset Allocation.pdf 1235 | 1236 | + [ ] Risk Parity Portfolios 1237 | !!! Roncalli Risk Parity Factor Models.pdf 1238 | Steiner Risk Parity Portfolios.pdf 1239 | Griveau-Billion Risk Parity Portfolio Cyclical Coordinate Descent Algorithm.pdf 1240 | 1241 | + [ ] simulate CPPI strategy: CPPI strategy is similar to Kelly betting strategy 1242 | http://epchan.blogspot.com/search/label/Book%20reviews 1243 | the only way to ensure that our maximum drawdown will not exceed a certain limit is through Constant Proportion Portfolio Insurance (CPPI): trading risky assets with Kelly-leverage in a limited liability company, putting money that you never want to lose in a FDIC-insured bank, with regular withdrawals from the LLC to the bank (but not the other way around). 1244 | Jacquier Merton Kelly Bayesian Utility Asset Allocation.pdf 1245 | 1246 | + [ ] factor investing 1247 | Blitz Investing Asset Allocation Factor Models.pdf 1248 | Bender Smart Beta Asset Allocation Investing Factor Models.pdf 1249 | 1250 | + [ ] Andrew Ang at Columbia book Asset Management: A Systematic Approach to Factor Investing 1251 | !!! Ang Factor Models Investing.pdf 1252 | http://factorinvestingbook.com/ 1253 | http://factorinvestingbook.com/book.html 1254 | 1255 | !!! Richard Smart Beta Minimum Variance Factor Models.pdf 1256 | Maillard Risk Parity Minimum Variance Portfolios.pdf 1257 | Goldberg Value Minimum Variance Portfolio Factor Models 1258 | Hsu Minimum Variance Portfolio Factor Models.pdf 1259 | Clarke Risk Parity Minimum Variance Portfolios.pdf 1260 | Chow Minimum Variance Stock Strategy.pdf 1261 | 1262 | + [ ] Smart Beta doesn't outperform 1263 | Jacobs: 1264 | Glushkov found the Sharpe ratios of smart beta funds and their benchmarks to be nearly identical, at 0.46 versus 0.48, respectively, while the average information ratio was 0.08, inconsistent with the idea that smart beta ETFs offer a distinct advantage over traditional cap-weighted indexes. Furthermore, according to an analysis performed for Reuters by ETF.com, and reported in Barlyn [2015], recent smart beta performance results have been disappointing. 1265 | Gestalt Adaptive Asset Allocation.pdf 1266 | Gestalt Smart Beta Factor Models Active Portfolio Management 1267 | Malkiel Smart Beta Dumb Factor Models.pdf 1268 | Glushkov Smart Beta Factor Models.pdf 1269 | Richard Smart Beta Minimum Variance Factor Models.pdf 1270 | Amenc Smart Beta Investing Factor Models.pdf 1271 | Amenc Smart Beta Factor Models.pdf 1272 | Amenc Smart Beta Factor Models JPM.pdf 1273 | 1274 | + [ ] Russell factor model 1275 | Barber Russell Smart Beta Factor Models.pdf 1276 | Blitz Factor Models Investing.pdf 1277 | 1278 | + [ ] Beta Rotation 1279 | Bilello Utilities Sector Indicator Beta Rotation Strategy.pdf 1280 | Bilello Lumber Gold Indicator Beta Rotation Strategy.pdf 1281 | 1282 | + [ ] create strategy for betting against beta 1283 | Asness Betting Against Beta.pdf 1284 | Frazzini Betting Against Beta.pdf 1285 | https://gist.github.com/timelyportfolio/11148198 1286 | https://gist.github.com/timelyportfolio/11232439 1287 | http://blog.alphaarchitect.com/2014/06/09/betting-beta-demand-lottery/ 1288 | 1289 | + [ ] Minimum Variance Strategy 1290 | even better: Minimum Variance minus High Variance Strategy ? 1291 | what about time-dependent beta? 1292 | 1293 | + [ ] Tactical Asset Allocation simple script 1294 | http://blog.fosstrading.com/2009/11/tactical-asset-allocation-using-blotter.html 1295 | http://petewerner.blogspot.com/2012/04/mebane-faber-tactical-asset-allocation.html 1296 | https://github.com/petewerner/misc/blob/master/gtaa-script.R 1297 | + [ ] Tactical Asset Allocation Faber 1298 | http://unstarched.net/2013/06/18/the-fallacy-of-1n-and-static-weight-allocation/ 1299 | 1300 | + [ ] Elastic Asset Allocation using package !!! IKTrading 1301 | Keller (2014) Elastic Asset Allocation 1302 | https://quantstrattrader.wordpress.com/2015/01/30/comparing-flexible-and-elastic-asset-allocation/ 1303 | + [ ] Flexible Asset Allocation returns algorithm 1304 | Keller Elastic Asset Allocation.pdf 1305 | 1306 | + [ ] momentum e-book 1307 | http://www.investfy.co/little-book-of-momentum/ 1308 | 1309 | + [ ] the 12M-1M momentum is the 11-month return up to one month ago 1310 | 12-month-1-month momentum strategy 1311 | Practically, it can be viewed as an 11-month momentum strategy executed with a one-month delay. 1312 | A third factor in the form of 12-month return momentum (Jegadeesh, 1990; 1313 | Jegadeesh and Titman, 1993) was incorporated by Fama and French (1996) and 1314 | 1315 | + [ ] Ross Bennett: Momentum with R 1316 | http://rbresearch.wordpress.com/2012/08/23/momentum-with-r-part-1 1317 | http://rbresearch.wordpress.com/2012/10/20/momentum-in-r-part-2 1318 | http://rbresearch.wordpress.com/2012/11/18/momentum-in-r-part-3 1319 | http://rbresearch.wordpress.com/2013/02/19/momentum-in-r-part-4-with-quantstrat/ 1320 | 1321 | + [ ] AQR "Dispelling Myths of Momentum": replicate paper with R and rCharts: 1322 | http://timelyportfolio.github.io/rCharts_factor_analytics/aqr_fact_fiction_momentum.html 1323 | https://github.com/timelyportfolio/rCharts_factor_analytics/ 1324 | http://timelyportfolio.blogspot.com/2014/06/dispelling-myths-of-momentum-aqr.html 1325 | 1326 | + [ ] is momentum waning? 1327 | http://www.philosophicaleconomics.com/2015/12/momentum/ 1328 | 1329 | + [ ] Momentum crashes 1330 | Barroso Momentum Volatility Crash Forecasting.pdf 1331 | https://quantstrattrader.wordpress.com/2015/09/16/hypothesis-driven-development-part-iv-testing-the-barrososanta-clara-rule/ 1332 | 1333 | + [ ] invest in portfolio with highest momentum or one year trailing Sharpe Ratio 1334 | Gogerty Portfolio Optimization Momentum Asset Allocation.pdf 1335 | !!! Keller Momentum Markowitz Asset Allocation.pdf 1336 | https://quantstrattrader.wordpress.com/2015/06/05/momentum-markowitz-and-solving-rank-deficient-covariance-matrices-the-constrained-critical-line-algorithm/ 1337 | https://systematicinvestor.wordpress.com/2013/03/22/maximum-sharpe-portfolio/ 1338 | https://github.com/drquant/R_Finance/blob/master/Momentum_and_Markowitz/kellerCLAfun.R 1339 | http://systematicinvestor.github.io/Review-Momentum-Markowitz/ 1340 | 1341 | + [ ] similar to above, but applies shrinkage 1342 | !!! Keller Momentum Markowitz Shrinkage Asset Allocation.pdf 1343 | 1344 | + [ ] use ETFs from: 1345 | Antonacci Optimal Momentum.pdf 1346 | 1347 | + [ ] PerformanceAnalytics portfolio rebalancing 1348 | PerformanceAnalytics Return.portfolio.pdf 1349 | http://tradeblotter.wordpress.com/2014/09/25/aggregate-portfolio-contributions-through-time/ 1350 | Omega ratio 1351 | Adjusted Sharpe ratio 1352 | add various table.* 1353 | table.SpecificRisk() 1354 | table.Distributions() 1355 | table.DrawdownsRatio() 1356 | table.DownsideRiskRatio() 1357 | 1358 | + [ ] examples: 1359 | http://seekingalpha.com/article/3222126-the-world-country-top-4-etf-strategy-a-way-to-fight-rising-rates-and-a-stalling-u-s-stock-market 1360 | http://seekingalpha.com/article/3536476-lower-risk-versions-of-a-dual-momentum-fixed-income-strategy 1361 | http://seekingalpha.com/article/3578136-a-paradigm-shift-for-tactical-strategies-trading-mutual-funds-on-a-monthly-basis 1362 | 1363 | 1364 | 1365 | ### Benchmarking portfolio management skill: 1366 | 1367 | + [ ] luck versus skill by Michael Mauboussin, head of financial strategies at Credit Suisse and adjunct professor at Columbia Business School 1368 | The null hypothesis should be that outperformance is due to luck only. 1369 | https://www.dimensional.com/famafrench/essays/luck-versus-skill-in-mutual-fund-performance.aspx 1370 | https://hbr.org/2011/02/untangling-skill-and-luck 1371 | 1372 | + [ ] paradox of skill by Michael Mauboussin 1373 | Mauboussin Paradox of Skill.pdf 1374 | The standard deviation of skill goes down over time. 1375 | As skill improves in the population, luck becomes more important in producing outperformance. 1376 | The paradox of skill states that in fields where there is no offsetting interaction (for example, pitcher versus hitter) and no luck, we should see absolute results improve and relative results cluster. 1377 | The variance of quality in consumer goods has narrowed over time, another finding that’s consistent with the paradox of skill. 1378 | 1379 | + [ ] use: data(edhec) from library(PerformanceAnalytics) 1380 | chart.CumReturns(edhec) 1381 | 1382 | + [ ] demonstrate that: terminal lognormal asset price distribution is very skewed 1383 | most paths are below expected value 1384 | if we start with a portfolio of 500 stocks, most will underperform 1385 | therefore most randomly selected portfolios will underperform the index 1386 | therefore most PMs who randomly select portfolios will underperform the index 1387 | 1388 | + [ ] Benchmark portfolio management skill using random portfolios 1389 | http://gestaltu.com/2015/10/apples-and-oranges-a-random-portfolio-case-study.html 1390 | Novomestky package: rportfolios 1391 | Stein Random Portfolios Fund Analysis.pdf 1392 | Resampling Methods Bootstrap Cross Validation Random Portfolios 1393 | http://www.capitalspectator.com/using-random-portfolios-to-test-asset-allocation-strategies/ 1394 | https://quantstrattrader.wordpress.com/2015/09/10/monte-carlo-in-asset-allocation-tests/ 1395 | https://gist.github.com/jpicerno1/fbc2e589023be56dde42 1396 | http://www.capitalspectator.com/skewed-by-randomness-testing-arbitrary-rebalancing-dates/ 1397 | https://gist.github.com/jpicerno1/af88861bcbbb80687cfb 1398 | http://www.burns-stat.com/documents/tutorials/the-statistical-bootstrap-and-other-resampling-methods-2/ 1399 | 1400 | + [ ] random portfolios can outperform market if they're equally weighted - because they're overweight value and small-cap stocks 1401 | Research Affiliates indexes (known as RAFIs) rank stocks based on book value as well as trailing five-year average cash flow, sales and dividends. 1402 | 1403 | + [ ] not a single of the 1000 random portfolios of size 50 delivers a annualized return below the S&P 500 index 1404 | https://predictivealpha.wordpress.com/2015/12/24/towards-a-better-equity-benchmark-random-portfolios/ 1405 | http://robotwealth.com/benchmarking-backtest-results-against-random-strategies/ 1406 | 1407 | + [ ] random portfolios indicate additional factors not included in FF4 1408 | Arnott Random Portfolios Factor Models.pdf 1409 | Amenc Random Portfolios Factor Models.pdf 1410 | 1411 | + [ ] Benchmarking portfolio management skill using bootstrapping random investment choices 1412 | for a given model, simulate random investment choices who make random decisions to buy or sell at the same time as the model does 1413 | calculate the distribution of random manager performance, and calculate the measure of model outperformance compared to the random managers 1414 | Harvey Bootstrap Factor Models.pdf 1415 | 1416 | + [ ] benchmarking investor timing skill Merton 1417 | Roy D. Henriksson and Robert C. Merton. 1418 | 1419 | + [ ] benchmark investor skill using portfolio convexity skewness 1420 | create scatterplot of returns of managed strategy versus benchmark strategy 1421 | should illustrate convexity profile 1422 | 1423 | + [ ] Performance attribution 1424 | PerformanceAnalytics PA-Bacon.pdf 1425 | !!! pa package Kane Performance Attribution.pdf 1426 | pa package Lu Performance Attribution.pdf 1427 | performance attribution: asset allocation, asset picking, and timing 1428 | Stubbs Portfolio Performance Attribution Factor Models.pdf 1429 | Guasoni Alpha Actively Managed Funds.pdf 1430 | Ferson Portfolio Performance Attribution Bootstrap Factor Models.pdf 1431 | 1432 | 1433 | 1434 | ### Cointegration, pairs trading, statistical arbitrage 1435 | 1436 | + [ ] consider a seasonal process that is the sum of two AR processes 1437 | for example in the AM a process with Hurst=0.4, and in the PM a process with Hurst=0.6 1438 | what is the Hurst for such a process? 1439 | 1440 | + [ ] consider a process for which the Hurst depends on the level of volatility 1441 | for example the Hurst=0.6 for high volatility, and the Hurst=0.4 for low volatility 1442 | what is the Hurst for such a process? 1443 | 1444 | + [ ] simulate Ornstein-Uhlenbeck process AR(1) model and trade it 1445 | forecast returns and demonstrate that forecasting is easier with stronger mean-reversion 1446 | http://robotwealth.com/exploring-mean-reversion-and-cointegration-with-zorro-and-r-part-1/ 1447 | http://robotwealth.com/exploring-mean-reversion-and-cointegration-part-2/ 1448 | 1449 | + [ ] perform Engle-Granger Cointegration test 1450 | find cointegrated pairs and demonstrate that cointegration fails out-of-sample 1451 | package egcm: Engle-Granger Cointegration Models 1452 | package PairTrading.pdf 1453 | http://denizstij.blogspot.com/2013/11/stationary-tests-of-time-series-within-r.html 1454 | 1455 | + [ ] Granger Causality 1456 | http://davegiles.blogspot.com/2011/04/testing-for-granger-causality.html 1457 | 1458 | + [ ] using historical data calculate average returns after reaching peak 1459 | calculate distribution of mean-reversion times 1460 | fit to OU decay model 1461 | 1462 | + [ ] cointegration and VAR models 1463 | C:\Research\R\Tutorials\Zivot\Econ 584\cointegration.pdf 1464 | ADF test for cointegration 1465 | Phillips-Ouliaris test for cointegration 1466 | package urca 1467 | cointegrationPowerPoint.pdf 1468 | cointegrationslides.pdf 1469 | cointegrationslides2.pdf 1470 | 1471 | + [ ] cointegration package irlba 1472 | Lewis RFinance 2012 Cointegration SVD.pdf 1473 | C:\Research\R\R-Finance 2015\BryanLewis.html 1474 | apply Doornik’s method using the SVD to solve the cointegration problem 1475 | 1476 | + [ ] pairs trading 1477 | Krauss Statistical Arbitrage Pairs Trading Review.pdf 1478 | Krauss Copula Pairs Trading Cointegration.pdf 1479 | Steffen Hurst Cointegration Pairs Trading.pdf 1480 | Leung Pairs Trading Stop-loss Rule.pdf 1481 | Clegg Cointegration Pairs Trading.pdf 1482 | Miao Statistical Arbitrage Cointegration.pdf 1483 | Grabovsky Statistical Arbitrage Pairs Trading.pdf 1484 | Kakushadze Statistical Arbitrage.pdf 1485 | Kakushadze Pairs Trading Factor Models.pdf 1486 | Rudy Pairs Trading Stocks ETFs.pdf 1487 | QUSMA ETF Daily Mean Reversion.pdf 1488 | C:\Research\Stat Arb Peter\Pairs Trading Cointegration\ 1489 | Gatev, Goetzmann, and Rouwenhorst 2006.pdf 1490 | Tourin Pairs Trading HJB Stochastic Control.pdf 1491 | 1492 | + [ ] demonstrate that the pairs trading returns have negative skewness 1493 | because upside returns are capped by trade exit rule 1494 | while there can be large negative returns if the trade moves against you 1495 | 1496 | + [ ] high frequency data cointegration 1497 | Krauss High Frequency Cointegration 1498 | 1499 | + [ ] index arbitrage 1500 | Avellaneda Statistical Arbitrage 2008.pdf 1501 | C:\Research\Academic\Avellaneda Quantitative Investment Strategies 1502 | 1503 | + [ ] combine mean reversion and momentum strategies 1504 | !!! Velissaris Statistical Arbitrage Momentum Strategies.pdf 1505 | 1506 | + [ ] residual momentum strategy 1507 | Blitz Short-Term Residual Reversal.pdf 1508 | https://factorinvestingtutorial.wordpress.com/9-residual-momentum-david-blitz/ 1509 | 1510 | + [ ] yield curve butterfly strategy 1511 | futures butterfly strategy 1512 | 1513 | 1514 | 1515 | ### High Frequency trading strategies: volatility pumping and harvesting, 1516 | 1517 | 1518 | -------------------------------------------------------------------------------- /Systematic Trading Brokers.txt: -------------------------------------------------------------------------------- 1 | ### Systematic Trading Brokers 2 | 3 | ########### 4 | ### Exchanges 5 | 6 | # Lykke distributed exchange using blockchain, founded by Richard Olsen founder of OANDA 7 | https://lykke.com/ 8 | 9 | # Quantitative Brokers by Robert Almgren - friend of Neil Chriss - high frequency volatility, order book 10 | http://quantitativebrokers.com/ 11 | http://www.courant.nyu.edu/~almgren/ 12 | 13 | 14 | ########### 15 | ### Social Trading 16 | 17 | http://www.intjcapital.com/algorithmic-trading-autotrading-universe/ 18 | 19 | # Social Trading portal 20 | http://socialtradingguru.com/ 21 | # leading social trading platforms 22 | http://socialtradingguru.com/networks/social-trading-networks 23 | 24 | # FX largest social trading network 25 | http://socialtrading.zulutrade.com/ 26 | 27 | http://social.ayondo.com/en/home 28 | 29 | https://zercatto.com/ 30 | 31 | # spinoff from PDT Partners (Process Driven Trading Partners) led by quantitative trader Peter Muller 32 | http://extractalpha.com/models/ 33 | 34 | # eToro social investment network for trading CFD's (contract for difference) 35 | http://www.etoro.com/ 36 | http://socialtradingguru.com/etoro-scam-or-not 37 | 38 | # London social trading network 39 | https://www.tradecrowd.com 40 | 41 | # Quantocracy blog of blogs 42 | http://quantocracy.com/ 43 | 44 | 45 | ########### 46 | ### algo systematic trading robots 47 | 48 | # Quantopian, Quantiacs, and Numerai funds are creating crowdsourced hedge funds 49 | http://www.ft.com/cms/s/0/0a706330-5f28-11e6-ae3f-77baadeb1c93.html 50 | 51 | # very basic article 52 | http://www.forbes.com/sites/jeremybogaisky/2013/09/04/quants-r-us-algorithmic-trading-trickles-down-to-individual-investors/ 53 | 54 | http://en.wikipedia.org/wiki/Algorithmic_trading 55 | 56 | # The Autotrading Universe 57 | http://www.intjcapital.com/algorithmic-trading-autotrading-universe 58 | 59 | # World of Algorithmic Trading - news machup by Pavel Curda 60 | http://paper.li/f-1361958382 61 | 62 | # Low latency trading strategies 63 | https://www.linkedin.com/pulse/how-set-up-your-own-high-frequency-trading-firm-ariel-silahian 64 | Liquidity rebate capture: providing liquidity by making a market on a security or contract. 65 | Automated market making: using low-latency algorithms to make markets. 66 | Latency arbitrage: exploiting delays in orders submitted to different exchanges. 67 | Automatic index benchmarking: using an algorithm to correlate a price to an market index, such as the S&P 500. 68 | 69 | # Quantconnect trading platform with C# IDE 70 | https://www.quantconnect.com/ 71 | http://www.intjcapital.com/2013/04/11/quantopian-and-quantconnect/ 72 | http://www.forexthink.com/platforms/quantconnect-cloud-based-algorithm-trading-service-community/ 73 | 74 | # technical indicators plus machine learning - generates MetaTrader4 code 75 | https://www.inovancetech.com/ 76 | 77 | # Quantlabs.net with IDE in Python, Matlab, and R, Simulink, - R courses paywall - Bryan Downing 78 | http://quantlabs.net/ 79 | 80 | # collective2 trading platform with undefined IDE 81 | # Developers can sell their trading system 82 | http://www.collective2.com/ 83 | http://www.thesystematictrader.com/2013/05/21/survival-of-the-fittest-on-collective2/ 84 | http://www.intjcapital.com/2013/01/29/collective2-a-review/ 85 | 86 | 87 | 88 | 89 | ########### 90 | ### Interactive Brokers 91 | 92 | # Interactive Brokers 93 | https://www.interactivebrokers.com/en/main.php 94 | # Marketplace@IB 95 | https://www.interactivebrokers.com/en/?f=2277 96 | 97 | # IB paper trading account 98 | https://individuals.interactivebrokers.com/en/index.php?f=tws&p=papertrader 99 | http://quant.stackexchange.com/questions/8744/what-is-the-difference-between-the-interactive-brokers-demo-account-and-a-person 100 | 101 | # IB historical data 102 | https://www.interactivebrokers.com/en/software/api/apiguide/tables/historical_data_limitations.htm 103 | https://www.interactivebrokers.com/en/software/api/apiguide/excel/historical_data_page.htm 104 | https://www.interactivebrokers.com/en/index.php?f=marketData&p=qbooster 105 | 106 | # IB manuals 107 | https://www.interactivebrokers.com/download/newMark/PDFs/APIprintable.pdf 108 | http://www.interactivebrokers.com/download/ExcelApiBeginners.pdf 109 | 110 | # Interactive Brokers TWS API Discussion 111 | https://groups.yahoo.com/neo/groups/TWSAPI/info 112 | https://www.interactivebrokers.com/en/software/tws_FAQs.php 113 | 114 | # Python IBPy 115 | http://www.quantstart.com/articles/Using-Python-IBPy-and-the-Interactive-Brokers-API-to-Automate-Trades 116 | 117 | # swigibpy Python package for Interactive Brokers API 118 | http://qoppac.blogspot.co.uk/2014/03/using-swigibpy-so-that-python-will-play.html 119 | # (weak) Automated Trading System Interactive Brokers 120 | http://www.investopedia.com/university/automated-trading-systems-using-interactive-brokers/automated-trading.asp 121 | 122 | # TradeKing - broker 123 | https://www.tradeking.com/ 124 | https://developers.tradeking.com/documentation/r 125 | # R interface to authenticate via OAuth to any server 126 | http://cran.r-project.org/web/packages/ROAuth/index.html 127 | 128 | 129 | ########### 130 | ### Quantopian 131 | 132 | # Quantopian trading platform with Python IDE 133 | https://www.quantopian.com 134 | # lectures and trading ideas 135 | https://www.quantopian.com/lectures 136 | https://www.quantopian.com/posts/trading-strategy-ideas-thread 137 | # Trading costs - slippage 138 | https://www.quantopian.com/posts/slippage 139 | https://www.quantopian.com/posts/questions-regarding-bid-slash-ask-spread 140 | https://www.quantopian.com/posts/custom-slippage-modeling-transaction-costs-for-algorithmic-strategies 141 | https://www.quantopian.com/posts/trade-at-the-open-slippage-model 142 | # Search queries sentiment indicators 143 | https://www.quantopian.com/posts/market-sentiment-market-mood-finsents-signals-detection 144 | http://techcrunch.com/2013/10/02/quantopian 145 | http://www.forbes.com/sites/petercohan/2013/10/04/is-quantopian-the-next-bloomberg 146 | http://online.barrons.com/news/articles/SB50001424052748704551504578489963625123642 147 | # latent states using a Gaussian Hidden Markov Model 148 | https://www.quantopian.com/posts/inferring-latent-states-using-a-gaussian-hidden-markov-model 149 | # Machine Learning from Streaming Data 150 | https://www.quantopian.com/posts/machine-learning-from-streaming-data 151 | 152 | # Zipline, a Pythonic Algorithmic Trading Library 153 | https://github.com/quantopian/ 154 | https://github.com/quantopian/zipline 155 | 156 | # Quantopian fund received $250 million investment from Steven Cohen 157 | http://www.wsj.com/articles/steven-a-cohens-newest-bet-do-it-yourself-computer-traders-1469592001 158 | Millennium Management and QuantConnect also have systems that allow amateur quants to submit their algorithms for potential use in trading. 159 | 160 | # Quantopian fund outperformed S&P500 index in 2016 161 | http://www.ft.com/intl/cms/s/0/0808729a-faa6-11e5-b3f6-11d5706b613b.html 162 | http://www.bloomberg.com/news/articles/2016-03-16/barbarian-coders-at-the-gate-the-inexorable-rise-of-diy-quants 163 | Quantopian fund returned 1.93% in 1Q2016, while the S&P500 rose 0.8%. 164 | Quantopian plans to increase fund capital from $500k to $1mm in 2016. 165 | Quantopian fund has eight PMs, but plans to eventually use 20-30 PMs. 166 | 167 | # Quantopian using machine learning to pick best algos 168 | http://blog.quantopian.com/using-machine-learning-to-predict-out-of-sample-performance-of-trading-algorithms/ 169 | http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2745220 170 | https://www.datarobot.com/ 171 | Quantopian looked the out-of-sample performance of 888 user strategies, and found very low R²=0.02. 172 | Quantopian picked algos using machine learning to select those with potential best OOS Sharpe ratio. 173 | Quantopian used datarobot by Xavier Conort. 174 | 175 | # Barron's: Algorithms for the Masses and Quantopian 176 | http://online.barrons.com/article/SB50001424052748704551504578489963625123642.html 177 | 178 | 179 | 180 | 181 | ########### 182 | ### PortfolioEffect high frequency risk system 183 | 184 | # Aleksey Zemnitskiy Snowfall Systems PortfolioEffect 185 | # PortfolioEffect real-time HFreq performance metrics, portfolio optimization, and backtesting, but no order execution yet 186 | # API in C++/Java/.NET plus R package 187 | https://www.portfolioeffect.com/ 188 | http://www.volatility.io/ 189 | https://www.portfolioeffect.com/account.php 190 | algoquant 191 | OKsleib15 192 | 193 | # dataset covers 2 years, for 8,000+ stock symbols (NYSE and NASDAQ), at 1 second bars. 194 | # Intraday aggregations: return, vol, skew, kurtosis, Hurst, etc. 195 | # Intraday factor model, alpha, beta and portfolio moments, 196 | # Intraday portfolio/strategy construction using server-side HF data through our R & Matlab backtesting interfaces. 197 | https://www.portfolioeffect.com/docs/platform/quant/manuals/portfolio-construction 198 | # continuous portfolio optimization with multiple constraints based on the global multi-start optimization algorithm. 199 | 200 | Intraday Optimization Intro 201 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/portfolio-optimization 202 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/portfolio-metrics 203 | 204 | Realistic Efficient Frontiers 205 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/efficient-frontier 206 | 207 | # PortfolioEffect presentations 208 | https://www.portfolioeffect.com/workspace_viewer.php?link=Fp9A1rxUMX 209 | https://www.portfolioeffect.com/docs/platform/quant/manuals/portfolio-construction 210 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/lf-hf-strategy 211 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/portfolio-optimization 212 | https://www.portfolioeffect.com/docs/platform/quant/tutorials/efficient-frontier 213 | 214 | 215 | 216 | ########### 217 | ### Blogs and Forums 218 | 219 | # QuantStart with great detailed Python info 220 | http://www.quantstart.com/ 221 | # book 222 | http://www.quantstart.com/successful-algorithmic-trading 223 | http://www.quantstart.com/articles/Free-Quantitative-Finance-Resources 224 | http://quantstart.com/articles/How-to-Identify-Algorithmic-Trading-Strategies 225 | http://www.quantstart.com/articles/Successful-Backtesting-of-Algorithmic-Trading-Strategies-Part-I 226 | http://www.quantstart.com/articles/Best-Programming-Language-for-Algorithmic-Trading-Systems 227 | http://www.quantstart.com/articles/Choosing-a-Platform-for-Backtesting-and-Automated-Execution 228 | 229 | http://prezi.com/cssll3e1svsn/how-to-build-your-own-algo-trading-fund/ 230 | 231 | http://www.traderji.com/ 232 | 233 | # Giles Heywood 234 | http://amberalpha.com/rfinance/0menu.htm 235 | http://amberalpha.com/ 236 | 237 | http://geektrader.me/ 238 | # Interactive Brokers bar data from R 239 | http://geektrader.me/2013/08/29/fetch-1-second-bar-data-from-interactive-brokers-with-r/ 240 | 241 | # Quantitative Trading by Ernie Chan (also wrote book "Algorithmic Trading") 242 | http://epchan.blogspot.com/ 243 | 244 | http://www.quantshare.com/ 245 | 246 | http://www.flextrade.com/ 247 | 248 | http://adaptivetradingstrategies.com/ 249 | 250 | http://tradersplace.net/ 251 | 252 | http://www.iq-challenge.org/ 253 | 254 | http://code.google.com/p/jbooktrader/ 255 | 256 | http://www.smart-algo.com/ 257 | 258 | http://www.strategyquant.com/ 259 | 260 | http://answers.yahoo.com/question/index?qid=20110719062248AAgo5Gu 261 | 262 | http://code.google.com/p/algo-trader/ 263 | 264 | http://quantivity.wordpress.com/ 265 | 266 | http://www.fcm360.com/financial-industry-solutions/algorithmic-trading/ 267 | 268 | http://www.etnasoft.com/solutions/automated-trading-robot 269 | 270 | http://www.cxoadvisory.com/ 271 | http://www.cxoadvisory.com/investing-demons/ 272 | 273 | # Frank D. Francone Genetic Programming System 274 | http://tradingsystemlab.com/ 275 | 276 | http://www.tradesignalonline.com/default.aspx 277 | 278 | http://www.geckosoftware.com/index.htm 279 | 280 | http://www.automated-trading-system.com/ 281 | 282 | http://www.seykota.com/ 283 | 284 | http://www.geneticfinance.com/ 285 | 286 | http://prodigiorts.com/ 287 | 288 | http://www.linkedin.com/groupItem?view=&gid=1813979&type=member&item=252127572&qid=5ded7b68-806b-415c-8d37-05fc8250e226&trk=group_items_see_more-0-b-ttl 289 | 290 | http://www.biocompsystems.com/products/profit 291 | 292 | http://www.linkedin.com/groupItem?view=&gid=1813979&type=member&item=258221690&qid=8239bbd1-0635-4f21-ae2d-1e802d1fdaa5&trk=group_items_see_more-0-b-ttl 293 | 294 | http://www.interactivedata.com/index.php/productsandservices/content/id/Reference+Data 295 | 296 | http://www.quantf.com/ 297 | 298 | 299 | ########### 300 | ### Starting a Fund 301 | 302 | # Incubator funds 303 | http://www.investmentlawgroup.com/hedge-fund-formation 304 | http://www.investmentlawgroup.com/incubator-fund-formation 305 | http://www.investmentlawgroup.com/launching-an-incubator-hedge-fund 306 | 307 | http://capitalmanagementservicesgroup.com/incubatorhedgefunds.html 308 | http://capitalmanagementservicesgroup.com/startahedgefund/hedgefundchecklist.html 309 | 310 | http://www.greencompany.com/HedgeFunds/HedgeFundIncubatorFunds.shtml 311 | 312 | 313 | 314 | # Legal creation 315 | http://www.strategicfundformation.com 316 | http://www.strategicfundformation.com/packages.html 317 | 318 | 319 | # Starting a traditional fund 320 | http://howdoyoustartahedgefund.com/ 321 | http://howdoyoustartahedgefund.com/start-a-hedge-fund 322 | 323 | # Generic advice 324 | http://www.lifeonthebuyside.com/start-a-hedge-fund/ 325 | http://www.moneyscience.com/pg/pages/view/1018/how-to-start-a-hedge-fund 326 | 327 | http://www.bnymellon.com/assetservicing/fundstartup.html 328 | http://www.mergersandinquisitions.com/start-hedge-fund-part-1/ 329 | http://www.investopedia.com/articles/financial-careers/08/become-a-hedge-fund-manager.asp 330 | 331 | 332 | # Fund administration 333 | 334 | 335 | # Website for fundraising - List of startups 336 | https://angel.co/investment-management 337 | 338 | 339 | # Eze Castle IT and technology consulting for hedge funds 340 | http://www.eci.com/about_us/index.html 341 | http://www.eci.com/knowledge-center/lhfkc10.html 342 | 343 | 344 | https://sumzero.com/ 345 | https://www.finect.com/ 346 | https://www.nesteggwealth.com/ 347 | 348 | -------------------------------------------------------------------------------- /Systems and Programs.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/Systems and Programs.txt -------------------------------------------------------------------------------- /ToDoList.txt: -------------------------------------------------------------------------------- 1 | ############ 2 | # ToDo list in C:\Develop 3 | 4 | ### everyday tasks to-do 5 | 6 | # Key Link signup 7 | 8 | # BofA set email for Oksana 9 | 10 | # Change Verizon primary email to dirac2010@gmail.com 11 | 12 | # Jonnett email about TA for DataCamp 13 | 14 | # request 2015 NYU check 15 | 16 | # pay master Bruce 17 | 18 | # verify NYU tax withholding amounts 19 | 20 | 21 | ########### 22 | ### explore 23 | 24 | Internal and Primitive Functions 25 | internal C functions 26 | 27 | http://www.zerohedge.com/news/2013-09-27/when-bubbles-fail-albert-edwards-what-happens-when-fed-can-no-longer-contain-fury-99 28 | http://www.zerohedge.com/news/2013-09-13/bernankes-helicopter-warming-larry-summers-first-pilot 29 | 30 | # interview with Jim Simons 31 | https://www.youtube.com/watch?v=U5kIdtMJGc8 32 | 33 | 34 | ########### 35 | ### tasks NYU to-do 36 | 37 | - [ ] Arman first steps: 38 | I spoke with professor Barry Blecherman about your capstone project 39 | need to apply to professor Agnes Tourin in October 40 | send updated script: load design matrix and roll pca 41 | ask Arman to create project repository 42 | what do I need to install? 43 | 44 | - [ ] get student to create DataCamp courses 45 | 46 | - [ ] obtain Professional Development grant 47 | 48 | - [ ] apply for Professional Development Funds 49 | 50 | - [ ] apply for Professional Development Funds 51 | 52 | 53 | 54 | ########### 55 | ### tasks NYU teaching to-do 56 | 57 | - [ ] invite winners to course 58 | http://engineering.nyu.edu/news/2015/12/21/triumphs-trading 59 | 60 | - [ ] ask Barry to waive prerequisite FRE6123 for FRE7241 61 | 62 | - [ ] ask students to take Datacamp courses 63 | 64 | - [ ] take Portfolio Analysis Datacamp course 65 | 66 | - [ ] upload to NYU Classes: Gandrud book Reproducible Research with R and RStudio.pdf 67 | 68 | - [ ] ask students to answer question on stackoverflow 69 | 70 | - [ ] ask students to publish in R Markdown on rpubs 71 | 72 | - [ ] ask students to publish their plotly interactive plots on plotly 73 | 74 | - [ ] ask students to publish their CV in R Markdown on GitHub Pages 75 | https://plot.ly/r/github-getting-started-for-data-scientists/ 76 | 77 | - [x] Create LinkedIn group for jobs for students 78 | 79 | - [x] Send email invitation to LinkedIn group for jobs for students 80 | 81 | - [x] give names to students: Joe Pimbley, Naresh, Ken Walker kwalker@newoak.com 82 | Jonathan Stein jstein@hess.com 83 | 84 | - [ ] create Datacamp courses - developed by Filip Schouwenaars and Vincent Vankrunkelsven 85 | martijn.theuwissen@datacamp.com 86 | https://github.com/filipsch 87 | https://github.com/vincentvankrunkelsven 88 | https://www.datacamp.com/teach/ 89 | https://www.datacamp.com/community/ 90 | https://www.datacamp.com/community/blog/create-your-own-r-tutorials-with-github-datacamp 91 | https://www.datacamp.com/community/blog/building-your-own-datacamp-course-with-github 92 | https://github.com/datacamp/datacamp-light 93 | # create new branches of courses 94 | https://www.datacamp.com/teach/documentation#tab_repository_overview 95 | # legacy datacamp R package 96 | https://github.com/datacamp/datacamp 97 | 98 | - [ ] create datacamp group 99 | https://www.datacamp.com/groups/business 100 | 101 | 102 | 103 | ########### 104 | ### tasks quant models to-do 105 | 106 | - [ ] create github repository develop 107 | 108 | - [ ] read Norman Matloff book Parallel Computing for Data Science in R C++ and CUDA 109 | VitalSource book reader 110 | https://www.vitalsource.com/ 111 | jp3900@nyu.edu 112 | Tw!nkle16 113 | 114 | - [ ] create simple example using package RcppRoll 115 | Kevin Ushey packages RcppRoll and RcppParallel 116 | https://github.com/kevinushey/RcppRoll 117 | https://kevinushey.github.io/ 118 | 119 | - [ ] create simple example using package RcppParallel 120 | Kevin Ushey packages RcppRoll and RcppParallel 121 | https://github.com/kevinushey/RcppRoll 122 | https://kevinushey.github.io/ 123 | 124 | - [ ] PCA and regression analysis 125 | https://www.analyticsvidhya.com/blog/2016/03/practical-guide-principal-component-analysis-python/ 126 | https://www.analyticsvidhya.com/blog/2016/07/deeper-regression-analysis-assumptions-plots-solutions/ 127 | https://www.analyticsvidhya.com/blog/2016/07/making-predictions-test-data-principal-component-analysis/ 128 | https://www.analyticsvidhya.com/blog/2016/05/h2o-data-table-build-models-large-data-sets/ 129 | 130 | - [ ] Jason Foster package roll 131 | https://cran.r-project.org/web/packages/roll/index.html 132 | https://github.com/jjf234/roll 133 | 134 | - [ ] create .Rmd document for analyzing periods around volatility spikes 135 | 136 | - [x] create interaction terms from most significant factors in design matrix 137 | 138 | - [x] select only those design matrix columns that are most significant 139 | 140 | - [x] apply function roll::roll_scale() to normalize (demean and standardize) the design matrix using past data 141 | apply rolling dimensional reduction (PCA) 142 | http://quant.stackexchange.com/questions/7921/how-to-normalize-technical-indicators-for-machine-learning 143 | http://quant.stackexchange.com/questions/4434/gradient-tree-boosting-do-input-attributes-need-to-be-scaled 144 | 145 | - [x] create design matrix called SPY_design containing multiple columns of aggregations using package HighFreq 146 | use differences of volume, variance, and skew 147 | 148 | - [x] develop forecasting model using principal component regressions (PCR) 149 | 150 | - [ ] create forecasting model using LASSO 151 | https://gist.github.com/alexchinco/467325abbf11d5c8f565 152 | http://www.alexchinco.com/using-the-lasso-to-forecast-returns/ 153 | https://quantmacro.wordpress.com/2016/04/26/fitting-elastic-net-model-in-r/ 154 | https://quantmacro.wordpress.com/2016/01/07/lasso-model-example-lmes-aluminium-futures-price/ 155 | 156 | - [ ] develop backtesting system as follows: 157 | create forecasting model: produce xts of forecasts 158 | create learning meta-model: adjust parameters of forecasting model 159 | https://timtrice.github.io/backtesting-strategies/ 160 | 161 | - [ ] apply package kernlab for Support Vector Machines 162 | 163 | - [ ] analyze Feng Zhang backtest project 164 | 165 | - [ ] analyze Fan Wang projects 166 | C:\Lecturing and Conferences\Polytech\recruit\Fan Wang projects\Momentum 167 | C:\Lecturing and Conferences\Polytech\recruit\Fan Wang projects\Stat Arb 168 | C:\Lecturing and Conferences\Polytech\recruit\Fan Wang projects\Text Mining 169 | 170 | - [ ] adapt code from: investment_strategies.Rnw 171 | 172 | - [ ] implement Constrained Critical Line Algorithm 173 | http://rnfc.org/2015/06/05/Markowitz/ 174 | 175 | - [ ] create data project called high_freq_data, using ProjectTemplate for importing WRDS data 176 | http://projecttemplate.net/ 177 | http://blog.rtwilson.com/in-praise-of-projecttemplate-for-reproducible-research/ 178 | # ProjectTemplate/Markdown/RStudio/knitr Routine 179 | http://nksbarker.blogspot.com/2013/07/my-projecttemplatemarkdownrstudioknitr.html 180 | # Customising ProjectTemplate in R 181 | http://jeromyanglim.blogspot.com/2014/05/customising-projecttemplate-in-r.html 182 | https://github.com/johnmyleswhite/ProjectTemplate 183 | 184 | - [ ] introduce unit testing to all packages 185 | https://github.com/hadley/testthat 186 | https://rpubs.com/manishb/t345 187 | https://cartesianfaith.com/2016/06/30/how-to-write-good-tests-in-r/ 188 | 189 | - [ ] implement simple Shiny app and take tutorial 190 | http://shiny.rstudio.com/ 191 | http://rmarkdown.rstudio.com/authoring_shiny.html 192 | http://shiny.rstudio.com/articles/ 193 | 194 | - [ ] create simple ggvis 195 | https://github.com/rstudio/ggvis 196 | http://patilv.github.io/Interactive-Anscombe-Viz/ 197 | http://blog.ouseful.info/2011/08/30/the-visual-difference-%E2%80%93-r-and-anscombe%E2%80%99s-quartet/ 198 | 199 | - [ ] set up RSS reader 200 | 201 | - [ ] contribute to: 202 | https://bl.ocks.org/ 203 | https://bl.ocks.org/mbostock/1353700 204 | 205 | - [ ] create R notebook 206 | http://data-steve.github.io/setting-up-r-notebook/ 207 | 208 | - [ ] publish interactive plots on rpubs 209 | https://rpubs.com/ 210 | 211 | - [ ] demonstrate how to run R from Google sheets and Excel: package excel.link 212 | https://cran.r-project.org/web/packages/excel.link/vignettes/CallingRFromExcel.html 213 | https://www.linkedin.com/pulse/integrating-r-solutions-excel-russ-penlington 214 | http://stackoverflow.com/questions/11597626/running-r-scripts-from-vba 215 | http://stackoverflow.com/questions/19170237/running-r-from-excel-vba-without-rexcel 216 | http://sharpstatistics.co.uk/stats/more-than-macros/ 217 | http://sharpstatistics.co.uk/sharp-r/ 218 | http://blog.revolutionanalytics.com/2015/09/using-the-googlesheets-package-to-work-with-google-sheets.html 219 | 220 | - [ ] read 221 | https://www.quandl.com/blog/interview-with-a-quant-part-one 222 | https://www.quandl.com/blog/interview-with-a-quant-part-two 223 | https://www.quandl.com/blog/interview-with-a-quant-part-three 224 | 225 | - [ ] write SSRN paper and send emails to: 226 | Keren Shen, The University of Hong Kong 227 | 228 | - [ ] 229 | https://about.me/ 230 | 231 | - [ ] 232 | http://metacademy.org/ 233 | 234 | - [ ] H2O prediction engine, sponsored by Stephen Boyd, Rob Tibshirani, Trevor Hastie 235 | http://0xdata.com/ 236 | 237 | - [ ] 238 | https://www.instapaper.com/ 239 | 240 | - [ ] Pocket for Chrome 241 | https://getpocket.com/ 242 | 243 | - [ ] create weekly development diary 244 | 245 | - [ ] study tenor (maturity) dependence of mean, variance, skewness, and kurtosis 246 | show that skewness and kurtosis decay with time 247 | 248 | - [ ] calculate tail shape of return frequency distribution and demonstrate power law 249 | 250 | - [x] analyze code in functions: 251 | rmOutliers 252 | loadInstruments 253 | getSymbols.FI - done 254 | 255 | - [x] adopt .Rdata file and directory conventions 256 | 257 | - [x] analyze code in: 258 | scripts_hist.R - done 259 | Rhistory 07-12-14.txt - done 260 | copy anything useful and then delete files - done 261 | 262 | 263 | ########### 264 | ### tasks finished 265 | 266 | - [x] install Ruby devkit 267 | 268 | - [x] install gcc 269 | 270 | - [x] create IB account 271 | 272 | 273 | -------------------------------------------------------------------------------- /datacamp.txt: -------------------------------------------------------------------------------- 1 | #### Structure of a DataCamp course 2 | ----------------- 3 | 4 | [DataCamp github repo](https://github.com/Data-Camp/datacamp) 5 | [How to create a DataCamp course](https://www.datacamp.com/create/how) 6 |

7 | 8 | - [ ] 5 chapters at 50 minutes/chapter = 4 hours, 10 minutes total 9 | - [ ] Each 50-minute chapter contains 10 | 4 videos at 3.5 minutes/video = 14 minutes 11 | 12 interactive exercises (multiple choice + coding) at 3 minutes/exercise = 36 minutes 12 | - [ ] Each chapter begins with a video and videos are separated by 3 interactive exercises 13 |

14 | 15 | General course concept: 16 | - each chapter should contain a collection of vignettes, 17 | - each vignette should explain a particular topic relating to investment management practice, 18 | - the topics should be illustrated using examples of numerical techniques and investment strategies using historical market data, 19 | - the vignettes should contain complete R code allowing users to reproduce all the calculations from start to finish, including data loading, formatting, model building, and visualization, 20 | - all R code samples should rely on fast, vectorized code, 21 | - the course should teach users how to use popular R packages, such as xts, PerformanceAnalytics, PortfolioAnalytics, 22 |

23 | 24 | Potential course themes: 25 | - Machine Learning for Systematic Investing 26 | - Investment Portfolio Optimization with R 27 |

28 | 29 | #### explore and adapt: 30 | - http://www.inside-r.org/pretty-r 31 | - https://developers.google.com/chart/ 32 |

33 | 34 | 35 | #### Datacamp course *Systematic Investment Strategies* 36 | ================= 37 |

38 | 39 | #### Chapter 1: Asset pricing 40 | ----------------- 41 | Estimating risk measures: dispersion (volatility, MAD), skewness, tail risk (VaR, CVaR), 42 | Calculating confidence intervals using bootstrap 43 | Estimating risk-return performance ratios: Sharpe, Sortino, Calmar, package PerformanceAnalytics, 44 | CAPM model: regressions of asset returns, alpha, beta, 45 | Deriving the Capital Market Line (CML) and Security Market Line (SML) 46 | Beta-adjusted risk-return measures: Treynor ratio, Jensen's alpha, 47 | Fundamental factor models: Fama-French, Barra, 48 | Statistical factor models: principal component factors 49 | Estimating covariance and correlation matrices 50 | Applying factor model regularization (shrinkage) 51 |

52 | 53 | 54 | #### Chapter 2: Forecasting returns and volatility 55 | ----------------- 56 | Models of asset returns: t-distribution, Pareto distribution 57 | Performing rolling (running) risk and regression calculations over a sliding interval 58 | Calculating rolling aggregations over a sliding interval 59 | Forecasting returns and volatility using stochastic volatility models: CEV, GARCH, Heston, 60 | Calibrating the forecasting model parameters to maximize forecasting performance 61 | Forecasting returns using value, size, and momentum factors 62 | Forecasting returns using the momentum factor and volatility 63 | Measuring forecastability using the Hurst exponent 64 | Performing rolling PCA analysis over a sliding interval 65 | Constructing highly forecastable portfolios 66 |

67 | 68 | 69 | #### Chapter 3: Backtesting techniques (cross-validation) 70 | ----------------- 71 | Performing cross-validation (backtesting) of forecasting models 72 | Creating heatmaps of model parameters using expand.grid 73 | Performing grid search of model parameters on heatmap 74 | Using random model parameters to determine worst case losses 75 | Using data resampling to determine distribution of possible future model performance 76 | Performing regularization of model parameters to control overfitting 77 | Backtesting with quantile optimization 78 | Controlling data snooping (leaking) 79 | Controlling data mining (significance inflation, multiple testing) and the false discovery rate using the Bonferroni method and Sidak correction 80 | Performing metaparameter selection: lookback window, forecast horizon, and rebalancing frequency 81 | Controlling metaparameter data mining to decrease false-discovery rate 82 |

83 | 84 | 85 | #### Chapter 4: Portfolio optimization 86 | ----------------- 87 | Estimating covariance and correlation matrices 88 | Calculating correlation coefficient uncertainty using bootstrap 89 | Performing correlation matrix shrinkage 90 | Optimizing portfolios under different correlation assumptions 91 | Calculating optimal portfolio uncertainty using bootstrap 92 | Performing constrained portfolio optimization with weight shrinkage 93 | Constructing efficient frontier portfolios 94 | Proporties of the Market Portfolio under the CAPM model 95 | Optimizing portfolios under different asset constraints and objective functions 96 |

97 | 98 | 99 | #### Chapter 5: Active investment strategies 100 | ----------------- 101 | Simulating the terminal distribution of stock prices 102 | Comparing performance of equal-weighted and cap-weighted stock indexes 103 | Performing single-period portfolio selection 104 | Simulating passive asset allocation strategies: all weather, dollar parity, risk parity, portfolio rebalancing, CPPI, minimum variance, low beta, 105 | Simulating dynamic investment and consumption strategies 106 | Simulating smart beta and factor investing strategies 107 | Benchmarking portfolio management skill using random portfolios 108 | Performing rolling portfolio optimization over a sliding interval 109 | Measuring out-of-sample performance of optimized portfolios 110 | Simulating active investment strategies: beta rotation, momentum, tactical asset allocation, 111 | Performing performance attribution of investment strategies 112 | Measuring manager market timing skill 113 | Benchmarking portfolio management skill using random investment choices 114 | Determining stop-loss policy parameters using sequential hypothesis testing 115 |

116 | -------------------------------------------------------------------------------- /datacamp_old.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/datacamp_old.txt -------------------------------------------------------------------------------- /fund startup.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/fund startup.txt -------------------------------------------------------------------------------- /quantopian.txt: -------------------------------------------------------------------------------- 1 | # quantopian main page 2 | https://www.quantopian.com/ 3 | https://www.quantopian.com/faq 4 | https://www.quantopian.com/help 5 | 6 | # add account 7 | https://www.quantopian.com/account#trading 8 | 9 | # github home 10 | https://github.com/quantopian 11 | https://github.com/quantopian/zipline 12 | http://zipline.io/ 13 | 14 | # Contribution Requests 15 | https://github.com/quantopian/zipline/wiki/Contribution-Requests 16 | # quantopian algos - old 17 | https://github.com/quantopian/quantopian-algos 18 | 19 | # Zipline in the Cloud - code for presentation by Thomas Wiecki 20 | # describes Bayesian Optimization via Gaussian Processes 21 | http://nbviewer.ipython.org/github/twiecki/zipline_in_the_cloud_talk/blob/gh-pages/Zipline%20in%20the%20Cloud%20--%20PyData%2013.ipynb 22 | 23 | # Jessica Stauth - VP Quant Strategy @quantopian 24 | https://www.quantopian.com/users/50f97faeaa4b3d78fd0000ee 25 | 26 | # Alisa Deychman 27 | adeychman@quantopian.com 28 | https://www.quantopian.com/posts/assigning-max-notional-to-value-of-total-cash-in-portfolio 29 | 30 | 31 | # Grant Kiehne - active user 32 | https://www.quantopian.com/users/4f005d1b5e32ee000b000001 33 | https://github.com/gkiehne/quantopian 34 | https://www.quantopian.com/posts/finite-state-machine-in-python 35 | 36 | # Anony Mole - sounds experienced 37 | https://www.quantopian.com/users/50e91684917ddce675000101 38 | https://www.quantopian.com/posts/another-way-to-rebalance-simple-price-and-volume-return 39 | 40 | # censix on quantopian 41 | https://www.quantopian.com/users/51349dedd08eef63e500012a 42 | 43 | # Peter Cawthron - active user 44 | https://www.quantopian.com/users/50b24ec26d284c0200000088 45 | 46 | # Alexander Izydorczyk - student at Wharton 47 | https://www.quantopian.com/users/505cd9730106e00002000057 48 | http://blog.quantopian.com/upgrade-capital-competitor-alexander-izydorczyk/ 49 | https://www.linkedin.com/pub/alexander-izydorczyk/59/907/863 50 | https://www.quantopian.com/posts/can-naivebayes-tell-us-anything-about-momentum-trading#51265f83f9d6c327a00001ff 51 | # code for machine learning training and validation sets 52 | https://www.quantopian.com/posts/machine-learning 53 | 54 | http://blog.quantopian.com/upgrade-capital-competitor-neal-basumullick 55 | 56 | # Upgrade Capital is a talent scout - partnership with Fortress 57 | http://upgradecapital.com/ 58 | http://blog.quantopian.com/algorithm-development-competition-with-upgrade-capital/ 59 | 60 | # good strategies 61 | http://blog.quantopian.com/5-basic-quant-strategies-implemented-by-the-quantopian-community/ 62 | https://www.quantopian.com/posts/mebane-faber-relative-strength-strategy-with-ma-rule 63 | https://www.quantopian.com/posts/rules-based-sector-rotation-strategy-based-on-mebane-faber-research 64 | https://www.quantopian.com/posts/ernie-chans-ewa-slash-ewc-pair-trade-with-kalman-filter 65 | https://www.quantopian.com/posts/modern-portfolio-theory-minimum-variance-portfolio 66 | 67 | # building custom indicator 68 | https://www.quantopian.com/posts/building-custom-indicator-in-quantopian 69 | 70 | # Random Forest 71 | https://www.quantopian.com/posts/machine-learning-turn-$10k-into-2-dollars-dot-25m-in-two-years-plus-22407-percent-returns-by-trading-brk-a-berkshire-hathaway-with-random-forest 72 | 73 | # paper trading 74 | https://www.quantopian.com/help#overview-papertrading 75 | # live trading 76 | https://www.quantopian.com/posts/paper-trading-with-interactive-brokers-open-beta-launch 77 | # algo simple monthly rebalance 78 | https://www.quantopian.com/posts/diversified-portfolio-monthly-rebalance-for-live-trading 79 | 80 | # Live results vs. backtest results at a glance 81 | https://www.quantopian.com/posts/live-results-vs-backtest-results-at-a-glance 82 | 83 | # fetcher from Quandl 84 | https://www.quantopian.com/posts/how-to-use-the-fetcher-from-quandl-dataset-to-backtest-the-strategy-via-quantopian#535866dc2715c337bf0000be 85 | 86 | 87 | # major contributor: Eddie Hebert 88 | https://github.com/ehebert 89 | 90 | # major contributor: Thomas Wiecki 91 | https://github.com/twiecki 92 | 93 | # Tutorial scripts for PyData Boston 2013 94 | https://github.com/twiecki/financial-analysis-python-tutorial 95 | # Pandas replication of Google Trends paper 96 | https://github.com/twiecki/financial-analysis-python-tutorial/blob/master/2.%20Pandas%20replication%20of%20Google%20Trends%20paper.ipynb 97 | 98 | # PyMC3 Bayesian fitting and estimation of statistical models to data 99 | https://github.com/twiecki/pymc3_talk 100 | 101 | 102 | # Theano Python compiler for multi-dimensional arrays 103 | http://deeplearning.net/software/theano/ 104 | https://pypi.python.org/pypi/Theano 105 | 106 | 107 | # A community for developers and users of Python data tools 108 | http://pydata.org/ 109 | 110 | # PyrexGsl provides a Pyrex interface for the GNU Scientific Library (GSL). 111 | # Pyrex is a language for writing code that mixes Python and C data types, and compiles it into a C extension module for Python. 112 | http://wwwteor.mi.infn.it/~pernici/pyrexgsl/pyrexgsl.html 113 | 114 | 115 | https://sites.google.com/a/brown.edu/lncc/home/members/thomas-wiecki 116 | http://twiecki.github.io/ 117 | 118 | 119 | # The ideal system 120 | 121 | user can define strategies in R language 122 | 123 | screening on fundamental data 124 | 125 | econometric time series data 126 | 127 | strategies can consume a variety of time series data 128 | price quotes and ticks 129 | price bars OHLC 130 | 131 | sentiment indicators 132 | Google trends 133 | 134 | aggregations 135 | VWAP 136 | median 137 | 138 | regularization 139 | 140 | 141 | validation in rolling window 142 | 143 | be tested 144 | 145 | 146 | 147 | 148 | -------------------------------------------------------------------------------- /render_scripts.R: -------------------------------------------------------------------------------- 1 | ### script for extracting R chunks from all *.Rnw files, 2 | # except those that contain "FRE". 3 | sapply(Sys.glob("*.Rnw")[-grep("FRE", Sys.glob("*.Rnw"))], 4 | knitr::purl, documentation=0) # end sapply 5 | 6 | ### script for rendering all the *.Rmd files in the cwd into *.md and *.html files. 7 | # loop over all the *.Rmd files in the cwd, and render them into *.md and *.html files. 8 | sapply(Sys.glob("*.Rmd"), 9 | function(x) rmarkdown::render(input=file.path(getwd(), x), clean=FALSE) 10 | ) # end sapply 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /temp.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JFD3D/develop/c22d8674c3ccc85d1bc7b29010f0384efcb75a82/temp.txt --------------------------------------------------------------------------------