History Request For Expired Futures

Back

I am attempting to warm up indicators/rolling windows with historical futures data. The goal is to use the data from the front-month contract to warm up the indicator. For example, if I wish to warm up a 200-day moving average, I will need to grab price data for the front-month contract over the past 200 days. Some of those contracts may have expired at the time of warm-up (algorithm start).

There doesn't seem to be a way to receive data for contracts that may have expired at the time of algorithm start, which would mean our warmup length is limited for indicators on futures. 

Is there any way to work around this?

I've attached an example that reproduces the behavior I'm referring to. You'll find that the only contracts available are the ones with expiries greater than the algorithm start date. 
 

Update Backtest






The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.



 
0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Hi Rahul,

One way to tackle this problem is to store past data and save this data to ObjectStore, then set the start date to one day after and rerun the algorithm, with code to retrieve the data stored in the ObjectStore from the previous run of the algorithm. This method also works for making algorithms ready for live trading. I've shown this in the attached backtest. Alternatively, you could set one date for the start of the algorithm so the algorithm can collect the data, and identify a second date that will start the trading.

Best,
Shile Wen
 

1

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Update Backtest





0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Loading...

This discussion is closed