kianti wrote:I have not read Hill's book and never back-tested a system using the actual contracts. I would like to hear any opinion and experience.
I have a custom proprietary backtesting engine that fits that description. It was designed from the ground up to test on actual contracts and vary rollover according to a number of conditions. For instance, it can roll to most popular contracts skipping less popular ones, or roll in advance of FND according to time and/or volume, etc. Roll policies were set on a per market basis (e.g. Crude rolls every month, while Eurodollar could roll on December-to-December contract). The goal was to simulate real trading decisions as close as possible.
I did find a big difference between actual and continuous contract, mainly in costs (which means that continuous contracts can introduce fantom compounding over actual trading). This type of impact can be simulated atop continuous contract by including roll factor costs, like VeriTrader does. This is the direction I've moved myself, simply because there are other complications from using individual contracts. I still get the ability to customize roll policies on a per-market basis.
One complication is correcting the discontinuity in long-range indicators. For instance, it's relatively easy to adjust a Channel Breakout system between contracts, it's much more difficult to adjust an 80-period moving average when the new contract may not have sufficient back data, or the price movement in the new contract doesn't accurately capture prior volatility. I've considered a hybrid use of continuous and actual contracts, but that still has the following problems ...
Another complication is dealing with vendor data errors. Face the facts, ALL VENDORS
have some data errors. It is much more difficult to find and correct these errors when they are spread among thousands of individual contracts than it is to check a basket of 40 continuous contracts. As a result, backtesting on actual contracts are more susceptable to data errors.
I'd like to see more study around types of continuous contract and type of trading system. A system based on support/resistance prices probably requires different data than long-range indicators or even pattern studies. There are compromises made at every point in trading simulation. Trading data is an interesting study all in itself.