how do you handle futures roll-over?

Hi folks,

In your backtest, how do you handle futures expiration and roll-over?

It's very hard to programmatically keep track of the roll-over, anybody share some experiences on this issue?

Thanks
 
Quote from Arthur Deco:

I don't "roll-over" in back-testing until the day the volume in the new contract exceeds that of the old.

This is the correct method; use volume not a hard date.
 
Quote from zgtrader:

This is the correct method; use volume not a hard date.

Arthur & ZG:

Which software do you prefer to conduct your backtesting? Tradestation? I think there are betters but I was wondering your thoughts.

Thanks!
 
Quote from GCSICLRBC:

Arthur & ZG:

Which software do you prefer to conduct your backtesting? Tradestation? I think there are betters but I was wondering your thoughts.

Thanks!

If you want to backtest reliably you should do that only with your own code. Most programs operate based on assumptions you do not even know what they are. Some skip trades, others take trades they should not. Try testing a few different backtesting programs with the same system and data and you will see what I mean. I never got the same results.
 
Pinnacle data provide their own chosen rollover dates for their continuous futures; with CSI you can select how you want the system to rollover.

The three methods of stitching a series together are

non-adjusted (like it sounds)
back adjusted ... e.g. the front contract changes and increases by 5 points, go back and increase everything before by 5 points
ratio adjusted ... similar to back adjusted, but shift by a percentage move, in order to avoid negative data.
 
Quote from zgtrader:

This is the correct method; use volume not a hard date.

Have you compared the performance of the same system under different roll methods?
 
Back
Top