Back

Algorithm attribute

I could not attach a failing backtest to this post; so here it is.

Runtime Error: AttributeError : 'QCAlgorithmFramework' object has no attribute 'Consolidators'

This error shouldn't occur, as I create the Consolidators attribute on the algorithm well before any alphas are instantiated. Both `OnSecuritiesChanged` and `Update` have this issue. I even tried passing through a reference to the algorithm instance via the __init__ method of the alpha and the consolidators still aren't available. This issue has been plaguing me since the start (2 weeks ago) and I won't be able to develop this any further until it's solved.

The setup is such that my algo has a composite alpha model, and each alpha has a set of indicators tied to consolidated timeframes. Timeframe-specific insights will be generated inclusive of (relative to) higher timeframe insights.

Any help you can provide would be great.

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.


Indicated in another post, this is an issue as Python is embedded in C#. The `algorithm` argument that is sent to these functions isn't actually the algorithm that we make, but it is the QCAlgorithmFramework. So if you want your actualy algorithm to be accessible to your alphas, you need to pass it in through the alpha's __init__.

0

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