I have a concern about the rollover dates for the CBOT agricultural futures (e.g., corn, @C#, and soybeans, @S#). These are listed as "roll on expiration date" in the symbol guide:http://www.iqfeed.net/symbolguide/index.cfm?symbolguide=guide&displayaction=support§ion=guide&web=iqfeed&guide=commod&web=IQFeed&symbolguide=guide&displayaction=support§ion=guide&type=cbot&type2=cbotmini&type3=cbot_gbx
I'm trying to use these symbols to backtest a strategy that runs on minute bars. The problem is that these contracts roll on their expiration date, but the volume for these contracts falls off a cliff roughly two weeks before the expiration, as traders move to the next contract. This means that the trading volume for these symbols is highly inconsistent.
With the continuous corn contract (@C#C), for example, the typical daily volume is roughly 100,000 contracts/day. However, this volume starts to decline one month before the rollover. By the last week, the volume is in the low thousands.
You can see this in the attached charts, which show daily bars and 5-minute bars for @C#C. In the daily chart, note how the volume falls consistently every two months, such as around late February/early March, late April/early May, and late June/early July.
The two five-minute charts show the bars for the period just before and just after the July rollover date. The "before" chart shows very low volume, with only a handful of trades and many bars with zero trades. The "after" chart shows normal volume, with hundreds of contracts per bar.
This inconsistent volume is a real problem for backtesting, particularly on minute-based bars. If I backtest a strategy on this data, then I'll get inconsistent results with the days that have low volume, since there isn't enough trading volume for any strategy to work on those days.
This could be fixed if the symbols had earlier rollover dates -- i.e., if they rolled over to the next contract around the time that the actual trading volume moves towards the next contract. (This seems to be about one month prior to the rollover date.)
Is there a reason that these symbols are set to "roll on expiration date"? Would it be possible to change this, or perhaps to create another set of symbols for these contracts that are the same, but have earlier rollover dates?
Thanks very much.Edited by Xyzzy on Aug 4, 2013 at 02:29 PMEdited by Xyzzy on Aug 4, 2013 at 02:31 PM