INNER CODE UNIT · Python
next
WISEPLAT/Learn-BackTrader · 03 - Timeframes v3.py:31
def next(self):
"""
Приход нового бара тикера
"""
# if self.p.name != '': # Если указали название торговой системы, то будем ждать прихода всех баров
# lastdatetimes = [bt.num2date(data.datetime[0]) for data in self.datas] # Дата и время последнего бара каждого тикера
# if lastdatetimes.count(lastdatetimes[0]) != len(lastdatetimes): # Если дата и время последних баров не идентичны
# return # то еще не пришли все новые бары. Ждем дальше, выходим
# print(self.p.name)
for data in self.datas: # Пробегаемся по всем запрошенным тикерам
if self.p.symbols == '' or data._dataname in self.p.symbols: # Если торгуем все тикеры или данный тикер
self.log(data, f'{data._name} - {bt.TimeFrame.Names[data.p.timeframe]} {data.p.compression} - Open={data.open[0]:.2f}, High={data.high[0]:.2f}, Low={data.low[0]:.2f}, Close={data.close[0]:.2f}, Volume={data.volume[0]:.0f}',
bt.num2date(data.datetime[0]))
# if data._name == "_m60":
# print("M60")
# print("D1", bt.num2date(self.datas[1].datetime[0]))
def notify_data(self, data, status, *args, **kwargs):