Its been almost a month since my last post. How time flies.
In the mean time I've been busy coding up a systematic trading environment in Python with futures stitching, backtesting at the portfolio level and bootstrapping to measure statistical significance. I've been reading through Systematic Trading by
@globalarbtrader which is a fantastic book and gives a really good framework for risk management and diversification of both instruments and trading rules.
Speaking of books Algorithmic Trading by Ernest Chan has some interesting ideas. However there are a few big liberties taken, for example the performance of mean reversion pairs trading is done on the same data set that was used to compute the hedge ratios that formed the stationary portfolio. This is major overfitting / curve fitting. In general the book gives specific examples where the techniques presented worked, which may or may not be cherry picked, but it would have been nice to see more extensive backtesting. I'm also a little concerned about the negative skew of mean reversion which is the basis for most of the trading strategies in the book.
So back to the plan. I'm going to be focusing on futures to start, since they're a relatively affordable way to trade in terms of spread, leverage and tax treatment. Quandl has turned out to be a great source of free historical data for futures.
I'll be using interactive brokers, executing trades manually initially based on the algorithm output. I'm trading on quite slow time frames so the latency isn't really an issue here. Once things are up and running I might consider automating the execution.
I'm starting out with a small account of around $20k to exercise the system. Most contracts are pretty large so are out of the question given my target volatility of around 25%. Now I need to decide whether to trade a single future like Hang Seng index minis. This would be simple, although given the large contract size I'd really only be trading 1 or 2 contracts which will make things pretty lumpy.
Alternatively I could use a portfolio of futures with smaller contract sizes for better diversification. Some promising options are e-micro currencies, mini-corn, Globex euro-dollars, 2 year T-notes and Nikkei minis and volatility. Because these are much smaller I could trade several contracts of each future as part of a portfolio and have similar volatility as with a single Hang Seng index mini.
There's still a bit of work to be done to come up with some reasonable portfolio weights and backtest to see if the added diversification of the second route will lead to a higher Sharpe ratio. With an account of this size I'd be happy to achieve a post-cost Sharpe of 0.5. Getting 0.6 would be fantastic.
Anyway, that's it for now. My funds will clear at Interactive Brokers next week so I have a fair bit of work to do between now and then to fully backtest.