Well I was using OnEndofDay(self) in an algorithm, just to get the open, high, low, close. Like this
def OnEndOfDay(self)->None:
self.previous_close = self.Securities[self.symbol.Value].Close
self.previous_vol = self.Securities[self.symbol.Value].Volume
self.previous_high = self.Securities[self.symbol.Value].High
self.previous_low = self.Securities[self.symbol.Value].Low
self.previous_open = self.Securities[self.symbol.Value].Open
Then I saw this warning message
‘def OnEndOfDay(self, symbol: str) -> None
def OnEndOfDay(self, symbol: typing.Union[QuantConnect.Symbol, str]) -> None
def OnEndOfDay(self) -> None
End of a trading day event handler. This method is called at the end of the algorithm day (or multiple times if trading multiple assets).
This method is deprecated and will be removed after August 2021. Please use this overload: OnEndOfDay(Symbol symbol)
Full name: QuantConnect.Algorithm.QCAlgorithm.OnEndOfDay’.
So I'm wanting to learn how to use the new method. Does one have to setup a loop somewhere in the program to loop through all the securities and send them to ‘def OnEndOfDay(self, symbol: str) -> None’ Kind of makes it seem more like just a standard scheduled event? Like how am I suppose to know when to call this without scheduling it?
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!