Mebane Faber puts an ancient asset allocation strategy to the test. Interesting results, and I agree that individual investors can and should take advantage of these sorts of strategies themselves, and not just leave them up to the professionals.
Mebane Faber has done us the favor of distilling and summarizing a lot of research around asset allocation strategies into a simple post. He lists the types and compositions of the most popular asset allocation strategies, such as 60/40, David Swensen’s Portfolio (made famous by its use at Yale University), the Permanent Portfolio, the Ivy Portfolio, etc. He also kindly provides a performance table with the key statistics. As expected, the Permanent Portfolio and the Risk Parity Portfolio do best at minimizing drawdown, but the CAGR across the strategies is surprisingly close. As always, read the whole thing.
Neural networks and genetic algorithms are among the most important topics in algorithmic trading and drive much of the research and allocation of computing resources of hedge funds today. Equametrics recently posted two great articles to explain neural networks and genetic algorithms, and their application to trading. Why are they important for the rest of us to know about?
I recently came across a few articles about using market regime indicators in one’s algorithmic trading strategies. Market regimes are trending periods in the market, namely, a bullish market or a bearish market. Depending on one’s trading style, having a quantitative way of ascertaining whether the market is trending up or down is important and can help manage risk.
QuantStart has a second part to its backtesting of algorithmic trading strategies series. This time, they discuss more nuanced aspects of creating an accurate (and thus useful) backtest. This means including commissions and fees; slippage and latency; and market impact and liquidity. QuantStart also explores transaction cost models, including flat or fixed cost models, and linear, piecewise linear, and quadratic transaction cost models. Finally, they discuss common strategy backtest implementation issues, including using market vs. limit orders, and OHLC data issues. Read all of the details here.
Very often, retail traders are intimidated by the idea of “algorithmic trading,” often equating it with high frequency trading. Algorithmic trading simply means trading by fixed rules, and since computers are better and faster than humans at calculating the rules, we often hand off the task to computers for the trading rules to be automated. On the lower-speed end of the scale, which I personally favor, it’s possible to trade these rules manually. ETF HQ has a great example of this in their twist on Dow Theory, Market Timing Through Market Dominance — TransDow. It describes a system that uses the ratio of the Dow Jones Transportation Average to the Dow Jones Industrial Average to determine whether the transports are leading the market (dominant) or lagging the market, and goes long or to cash accordingly. Since it uses weekly prices, anyone can download the data from Yahoo Finance, throw it into a spreadsheet, and enter orders over the weekend. These sorts of simple algorithmic trading models are a great place to start before tackling daily or intra-day strategies. Read the article here.
Update: Woodshedder is trying to implement the system in Amibroker, for those who use it. It appears to produce different results from the system shown by ETF HQ, but may be a good starting point.
As a follow-up to yesterday’s post, I wanted to provide some more background about back-testing. As usual, I won’t re-invent the wheel, so let me present some great posts from others. QuantStart gives an overview of back-testing, including the key reasons why back-testing is important (filtration, modeling, optimization, and verification) as well as the biases that create misleading back-testing results (optimization bias, look-ahead bias, survivorship bias, and psychological tolerance bias). and finally the pros and cons of some of the software tools available for back-testing (Excel / OpenOffice; Matlab / Octave / SciLab; Python / Ruby / Erlang / Haskell; R / SPSS / Stata; and C++ / C# / Java / Scala). The whole article is here.