As discussed in “Garbage In => Garbage Out”, the data series used for back-testing is critical to good system design. In particular, I want to use the data series for an attempt at regime characterization.
When I read Stridsman‘s “Trading Systems the Work” I was struck by his discussion in Chapter 3 of various methods of back-adjusting data series for analysis. I was sold on the idea of Ratio Adjusted Data as contrasted with Panama Adjusted Data.
Ratio adjusted data has 2 key advantages:
- You never end up with negative valued contracts.
- Percentage relationships are preserved in the data series.
CSI Unfair Advantage offers a ratio-adjustment option for creating price-series, and they credit Stridsman for the idea. I am currently down-loading the free CSI data from the TradingBlox website. This data has already been back-adjusted using the Panama method. I wrote an R script to process each file and create ratio-adjusted series.
If you want to back-test a system I see no way of doing it without using what I refer to as Rad-Contracts. If you use Panama-adjusted contracts (Pan-Contracts) your position sizes will be wrong, your draw-downs will be wrong, your portfolio composition will be wrong, etc, etc.
To convince yourself of the wisdom of using Rad-Contracts consider oil’s drop from it’s Pan-High of $178 to it’s low of $56: down 68%. The Pan-High for oil was $266 followed by a low of $50 for a declne of 81%. The Rad-Contract is more reflective of the economic cost of holding oil futures during that period than is the Pan-Contract.
Aside: Compare this to the decline in the OIL etf from $119 to $23 (-81%) – despite the criticism that these etf’s “do not track the ‘price’ of oil” they do track the true economic cost of holding commodities.
Another aside: I assumed that this stuff was taken as read in the system trading field, but at least a couple of firms I have spoken to say they DO NOT use Rad-Contracts in their back-testing!
I would be very interested in arguments against using Rad-Contracts.
This post is part of a longer series:
- Garbage In => Garbage Out
- This post
- Data Validation
- Generalized Extreme Value Distribution
- Some additional protocols.