如何在backtrader中检查美联储数据?

2024-05-18 23:25:45 发布

您现在位置:Python中文网/ 问答频道 /正文

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)

如何检查水数据是否正确输入?比如打印{}和{}?如何绘制它(蜡烛)


Tags: importdatadatetimedateasdtnotpass
1条回答
网友
1楼 · 发布于 2024-05-18 23:25:45

您可以通过打印来自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.plot()

相关问题 更多 >

    热门问题