Back

How to access last 5 TradeBars?

Hello

I am trying to access last 5 trade bars (aka rolling window or bars). I have created a custom class with a custom array that stores last 5 bars and I run my logic using these 5 bars in the OnData method but its not working. I have couple of questions:

1. Is there an easier method to look at ochlv data of latest 5 bars?

2. Can we create custom classes (in python) and use them in the main algorithm class ?

 

Thanks

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.


In your OnData method, are you adding the TradeBar to the RollingWindow (of TradeBars)?

1

No, I am not using the Rollingwindow, I am creating my custom class object from bars and maintaining an array. 

0

Hi Bhargav,

Following up on Michael’s comment, for an easier way to store the past 5 bars of OHLCV, we can use a RollingWindow (docs here) object, which stores only the number of items specified by the user. I've attached a backtest showing how to use a RollingWindow to store TradeBars.

As for (2), since we can just use a RollingWindow class to store the last n elements of something, we no longer need a custom class to do this. However, in general, it is possible to use custom classes (say, if someone wanted to create a custom Execution Model), just be sure to import them in they are stored in a file other than main.py.

Best,
Shile Wen

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.


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