Backtrader - IndexError:列表索引超出范围

问题描述 投票:0回答:0

我正在尝试从我通过“backtrader_impact.py”下面的脚本生成的名为“impact.csv”的 csv 文件加载自定义数据源。

但是,在“cerebro.adddata(data)”处,我收到一个 IndexError:列表索引超出范围。

  File "C:\...\backtrader\feeds\csvgeneric.py", line 151, in _loadline
    csvfield = linetokens[csvidx]
IndexError: list index out of range

backtrader_impact.py:

import backtrader as bt

class ImpactCSVData(bt.feeds.GenericCSVData):
    lines = ('impact_score',)
    
    params = (
        ('dtformat', '%Y/%m/%d %H:%M:%S'),  # Datetime format
        ('datetime', 0),  # Index of the datetime column in the CSV
        ('impact_score', 1),  # Index of the impact_score column in the CSV
        ('timeframe', bt.TimeFrame.Minutes),  # Timeframe (adjust accordingly)
    )

data = ImpactCSVData(
    dataname='alpaca_backtrader/impact.csv',  # Path to your CSV file
)

cerebro = bt.Cerebro()
cerebro.adddata(data)

# cerebro.addstrategy(YourStrategy)

cerebro.run()

# cerebro.plot()

影响.csv:

datetime,impact_score
2023/01/13 00:00:00,96
2023/01/13 00:15:00,75
2023/01/13 00:30:00,58

我通过在 backtrader eed 中添加一些打印语句尝试了一些调试

python index-error back-testing backtrader
© www.soinside.com 2019 - 2024. All rights reserved.