INNER CODE UNIT · Python
log
WISEPLAT/Learn-BackTrader · Strategy2_44.py:35
def log(self, txt, dt=None):
"""Вывод строки с датой на консоль"""
dt = bt.num2date(
self.datas[0].datetime[0]) if dt is None else dt # Заданная дата или дата последнего бара первого тикера ТС
print(f'{dt.strftime("%d.%m.%Y %H:%M")}, {txt}') # Выводим дату и время с заданным текстом на консоль
def log_csv(self, ticker=None, signal=None, signal_price=None, order=None, order_price=None,
size=None, status=None, cost=None, comm=None, amount=None, pnl=None, dt=None):
"""Собираем логи для csv файла"""
tradedate = bt.num2date(self.datas[0].datetime[0]) if dt is None else dt # Заданная дата или дата последнего бара первого тикера ТС
depo = f"{self.cerebro.broker.get_cash():.2f}"
amount = f"{(self.cerebro.broker.get_value()):.2f}" # - (self.cerebro.broker.get_cash()):.2f}"
strategy_name = self.p.name
info = ""
if order == "BUY" and float(cost) < 0: info = "Warning"
self.my_logs.append([tradedate, ticker, signal, signal_price, order, order_price, size, status,