【问题标题】:How to check fed data in backtrader?如何在 backtrader 中检查馈送数据?
【发布时间】:2021-04-20 11:38:03
【问题描述】:
import backtrader as bt
cerebro = bt.Cerebro()
data = bt.feeds.GenericCSVData(
    dataname='data.csv',
    # Do not pass values before this date
    fromdate=dt.datetime(2000, 1, 1),
    # Do not pass values after this date
    todate=dt.datetime.now().date(),
    datetime=0,
    high=5,
    low=6,
    open=4,
    close=8,
    volume=10,
    openinterest=-1
)
cerebro.adddata(data)

如何检查小麦数据是否正确输入?比如打印openclose?如何绘制它(蜡烛)?

【问题讨论】:

    标签: python backtrader


    【解决方案1】:

    您可以通过打印来自next 的日志来查看您的数据。这是我使用的标准设置。

    class TestPositions(bt.Strategy):
        def __init__(self):
            pass
    
        def log(self, txt, dt=None):
            """ Logging function fot this strategy"""
            dt = dt or self.data.datetime[0]
            if isinstance(dt, float):
                dt = bt.num2date(dt)
            print("%s, %s" % (dt, txt))
    
        def print_signal(self):
            self.log(
                f"o {self.datas[0].open[0]:7.2f} "
                f"h {self.datas[0].high[0]:7.2f} "
                f"l {self.datas[0].low[0]:7.2f} "
                f"c {self.datas[0].close[0]:7.2f} "
                f"v {self.datas[0].volume[0]:7.0f} "
            )
    
        def next(self):
            self.print_signal()
            
    

    要在运行 cerebro 后使用 cerebro.plot() 进行绘图。

    【讨论】:

      猜你喜欢
      • 2021-09-30
      • 2021-09-14
      • 2011-05-27
      • 1970-01-01
      • 2013-02-23
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多