Quantopian had a blog post a while ago about parameter optimization when building a trading algorithm. What is parameter optimization? In the simplest sense, it’s selecting the variable settings that go into your algorithm. For example, when using a moving average, one must choose a number of days over which to calculate the moving average, and different lengths will have different effects on the outcome of the trading strategy. So how does one choose the best parameters? Quantopian discusses the pros and cons of the two most common methods, which are batch optimization (i.e. brute force) and walk-forward optimization.
Over at QuantStart is an article on algorithmic trading for beginners, broken down into sections explaining strategy identification, strategy backtesting, execution, and risk management. It’s a broad overview without much in the way of specifics, but a good first read if you’re interested in algorithmic trading and want to learn more. Afterwards, you can visit The Algorithmic Trading and Autotrading Universe to see the myriad tools available to the algorithmic trader.
Continue reading QuantStart Explains Algorithmic Trading
Sanz Prophet has a great tutorial on how to set up tactical asset allocation tracking in the cloud using Google Spreadsheets. It’s a great place to start in looking at automating your strategies (and I continue to use Google Spreadsheets and Google Apps Script to automate my Collective2 trading), so check it out.
While it appears I rehash this topic several times, it’s important to continually learn and expose oneself to new perspectives when one is involved in trading system development. For quants, this typically involves reading new research that seems to be coming out all the time. For fundamental traders, it involves learning about new ways to value companies and examining the strengths and weaknesses of the classical models. My systems are based on technical analysis, but I take ideas from the quant side and the fundamental side wherever I can to test on my own systems. More often than not, I find that these ideas either directly improve my systems or give me ideas for how to develop new filters or techniques on my own.
Continue reading A Guide to Trading System Development
Over at Abnormal Returns is an interview that Tadas Viskanta had with Dr. Wesley Gray of Turnkey Analyst about his book, Quantitative Value. It makes a great case for systematic investing (i.e. investing based on rules, not intuition) and why removing emotion from the investing process is really the best way to success in the investment world. However, he goes a step farther by differentiating between investing based on logic and based on empirical data. The argument focuses on value investing, but I think the case presented is applicable to all styles of investment.
Continue reading Systematic Investing
Jay Kaeppel at Optionetics.com has a semi-humorous post about a new algorithmic trading system that he invented today (appropriately called JK Today). On the surface, at least, it appears to be a viable system with good profit potential. In short, he uses the 4% Zweig swing as a directional indicator, and semiconductor to inverse Nasdaq-100 ratio as an overbought/oversold indicator. Again, see the post for the details and his calculations. However, the real point of his post is to show some of the thought process involved in developing a set of rules for a trading system, and what is required of the trader to ensure that the trading system is a success. Here are the performance stats, just to entice you to read it all.
Matt Radtke at Tradingmarkets.com has a nice 6 part series on how to build a trading strategy, from conceptualization to implementation. This is a great place to start for those just beginning to learn about the world of algorithmic trading. Make sure to try out the techniques detailed by writing down your trading rules or testing them on data in Excel.
- Central Thesis
- Defining a Universe
- Additional filters
- Exit methods and stop losses
You can download historical stock data from Yahoo Finance to get started.