Hi QC community!We are working on normalizing the Algorithm API, starting by the following changes:
- We are normalizing the algorithm's History API, by having all of them receive all the parameters to customize the history requests, as in this existing overload. We are starting with the `fillForward` parameter and will work on the remaining parameters progressively.
- We are also normalizing common parameters naming, For consistency we are also updating the AddSecurity/Data API to also use `fillForward` instead of `fillDataForward`. We understand this is a breaking change and apologize for the trouble, please update your algorithms to use `fillForwad` starting from version 15414
As always, please let us know any issues or concerns you may have about this announcement so we can look into it ASAP.
Enjoy!
Yuri Lopukhov
I think you should have some more reliable way to notify users about breaking changes. I only got this message, because I subscribed to receive notifications of all new posts on the forum. I don't think many people do that.
Arthur Asenheimer
I agree with Yuri.
I think you should inform users about breaking changes via email, preferably in advance, so that they have the chance to prepare for it. Thanks.
Jared Broad
Understood; sorry about that Arthur. We decided it impacted a sufficiently small surface of the API, and those using the explicitly named endpoints could easily adjust their code.
We'll update just one more endpoint shortly 😬: two methods using extendedMarket => extendedMarketHours—the announcement to follow shortly.
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.
Echoes McCarthur
Hey Jared, Is this to say that the code within the AddFuture subscription that is:
Should now just be simply:
As this was the change for the previous update. If so would like to preempt any changes to avoid any errors.
Thanks
Jim Shorts
Jared, your response here indicates that you knowingly pushed breaking code without notifying users. I'm sorry, but this is unacceptable. You very well could have cost anyone trading futures a solid bit of money. Are you saying that your service costing users money is acceptable? Not only do we pay to use this service, but it's fine for your platform to make us lose money? Your attitude about that is astonishing.
My suggestion going forward. Send an email to those that who may be financially impacted by changes. You already have mailing lists. When I set up the live trading I set up to receive emails notifications. You can use that. Or if that doesn't work, you should probably be logging which users are currently live trading simply from an internal metrics perspective, use that.
I understand accidents happen, but this was willful negligence/laziness that could very well have cost people money. In short I agree with both Arthur and Yuri
Jared Broad
Hi Jim,
None of our breaking changes are accidents. We have hundreds of regression algorithms and excellent engineers on the team who provide risk assessments. We count the live trading algorithms impacted as a percentage of users live.
Beyond that, the impacts are felt at compile time and don't impact anything running live. Once the algorithm is stopped and recompiled, it will show the build error, and the user will be prompted to fix it. There is no way a user can “lose money” based on this work.
If you're interested we have a feature allowing Trading Firm organizations to pin their LEAN versions and control when they migrate to the next version. Researcher seats cannot do this due to the support burden it creates (reporting/encountering bugs that were fixed in previous versions of LEAN).
Regarding specific announcement formats, I appreciate the suggestion, and we'll find a way to do special email alerts for forum posts tagged "announcements". To make sure you get those emails ensure you've set your email notification preferences with the forum settings below.
Best
Jared
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.
Shawn Emhe II
Breaking changes like this could be avoided by maintaining overloads with the legacy names and providing deprecation warnings at build times. And then you use planned release updates to give users more time in advance to review upcoming breaking changes and determine where they need to make updates.
Jhonathan Abreu
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.
To unlock posting to the community forums please complete at least 30% of Boot Camp.
You can continue your Boot Camp training progress from the terminal. We hope to see you in the community soon!