I do not try to start a debate on which one is better Technical Analysis (TA) or Quantitative Analysis (QA), QA also referred as Quantitative Finance/Mathematics Finance or Machine Learning (ML). I am more interested in how can I utilise TA/QA/ML to predict the price in near future. In addition of these three, also fundamental analysis (FA) Problem definition: At time t, if we know all information of what everyone is going to do, we can compute what would be the price at time t + delta t. The larger delta t, the harder to predict. The question is how should we utilise TA,QA,FA and ML to predict the price at t + delta t? By the way I am working on future emini SP500 contract. TA provides indicators then show how these indicators work in a chart without doing statistical analysis, so only work on limited cases (see Aronson's book). An excellent source for indicators is Ehlers's book. QA discuss value at risk, pricing model, ARIMA, metric like Sharpe ratio, covariance matrix of the portfolio, I believe I can use QA for risk calculation and portfolio diversification. My current thinking is to use QA to calculate my risk, to ensure it is statistically sound and aligned with my risk appetite. Then code TA indicators in Scala, probably thousands of indicators, apply the usual ML techniques (e.g. regularisation to avoid overfitting, cross validation etc), spawn hundreds of AWS Hadoop nodes to run Apache Spark, applied Gradient Boosting Machines (GBM) to build the predictive model. Test the model on paper trading then start with one future contract, monitor the slippage, feed the slippage into the ML algorithm, recalculate and restart. Then the next steps (not in near future, a lot more work to be done before these steps) are - Apply Natural Language Processing (NLP) to understand the macro economic fundamental news, so it is about FA, feed this to the ML algorithm (see Ferruci article below). - Collocated in Aurora,e.g. cme-aurora-vps, Quad Core E5-2630/ 24GB, for $399 any one know a cheaper option? - Buy xilinx or altera then implement algorithmic trading on FPGA, collocated in Aurora So in summary, Technical Analysis (TA) for indicators, Fundamental Analysis (FA)+Natural Language Processing (NLP) for more advanced indicators, Quantitative Analysis for Risk & Money Management, then use the indicators in Machine Learning framework, finally put all implementation in collocated servers. Any thoughts? Did I miss anything? Anything could be improve on the plan? References: Cycle Analytics for Traders A technical resource for self-directed traders who want to understand the scientific underpinnings of the filters and indicators used in trading decisions, by John Ehlers. Evidence-Based Technical Analysis In this thought-provoking work, David Aronson tests more than 6,400 technical analysis rules and finds that none of them offer statistically significant returns when applied to trading the S&P 500. david-ferrucci-life-after-watson “predictive systems that fit perfectly with my interests. How cool is it to imagine a machine that can combine deductive and inductive processes to develop, apply, refine and explain a fundamental economic theory?”
You suggesting you want to use them all (TA/FA/QA/ML) as a single trading plan or you suggesting you plan on testing them all to determine which one is best to use ?
Use them all, TA&(FA+NLP) to build indicators, ML to select indicators that work then build the predictive model, QA to calculate the risk, providing confidence that the whole plan is statistically sound. ML is good to select indicators that work, then combine these indicators into predictive model.
It can't hurt to try it considering you're in the "theory" mode and there will be a lot of backtesting after completion. As Nike would say...go for it.
I am writing code to build indicators now, it will take the whole Xmas break to finish. Then apply ML techniques, follow by a lot of backtesting.
If you plan to co-locate to be able to compete on speed, forget it.. There may be other reasons for co-locating though (like stability / redundancy).
I will stay on the hobby side In Scala I can do moving average recent 5 minutes, 10 minutes....3 months,...12 months, I got hundreds indicators, then moving average 5 minutes > moving average 10 minutes, construct these sort of combination automatically. So coding thousands of indicators is achievable.
I prefer not to analyze anything but to trust my hunch. And the golden rule of investing/trading. of course. In fact - even two of them. 1) Never invest in something that you don't understand. 2) Buy low - sell high. They never failed me as of yet.