问题标签 [backtrader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
83 浏览

python - 反向交易者的风筝代码提要

我正在使用 backtrader 来测试我的策略,但我的经纪人,即 kite api 并不直接得到 backtrader 的支持。我想使用动态 CSV 或使用 kite websocket/ticker 和 backtrader 进行实时交易

0 投票
2 回答
522 浏览

python - 如何使用 ccxt 为 backtrader 创建 pandasData

我正在尝试使用 backtrader 对策略进行回测。我看到的大多数示例都使用 csv 文件。我想知道是否可以从交易所获取数据并将其转换为 pandas 数据框,然后使用 backtrader?当我运行它时,我得到一个错误AttributeError: 'numpy.int64' object has no attribute 'lower',它是指pandafeed.py

如果我使用列名并将代码更改为以下

我收到这个错误

AttributeError:“int”对象没有属性“to_pydatetime”

熊猫饲料.py

我的问题是:如何将列表变成可以用来运行反向交易者的东西?谢谢你。

PS返回的示例数据结构klines将类似于

[ [1621152000000, 49375.28, 49795.89, 48656.0, 49014.99, 10956.006583], [1621166400000, 49014.99, 49249.06, 47566.01, 47727.26, 14166.961995], [1621180800000, 47727.26, 48097.59, 44444.44, 45549.26, 36819.653456], [1621195200000, 45553.24, 46480.0, 43825.39, 46431.5, 28724.055984], [1621209600000, 46426.83, 46686.0, 42777.0, 42915.46, 28171.858447], [1621224000000, 42915.46, 45400.0, 42196.97, 45149.18, 40557.45817], [1621238400000, 45143.28, 45800.0, 44291.84, 45731.39, 23851.50751], [ 1621252800000, 45733.55, 45791.04, 43156.0, 43362.75, 23137.989315], [1621267200000, 43357.0, 44400.0, 42001.0, 44197.73, 30883.162039], [1621281600000, 44197.73, 44939.2, 42500.0, 43538.04, 20055.197255], [1621296000000, 43538.02, 45281.34, 43150.79, 44779.83、19252.919453]、[1621310400000、44774.78、45799.29、44738.26、45172.7、17218.430549]、[1621324800000、45172。69、45420.0、44607.08、45225.71、8427.020047]]

0 投票
0 回答
170 浏览

python - Backtrader TradeAnalyzer 为空 - 其他分析器工作

我正在尝试使用 backtrader 进行回测。当我尝试从 TradeAnalyzer 打印结果时,我只得到这个:

夏普比率等其他分析器也可以工作。我能做些什么?

我的代码:

似乎 TradeAnalyzer 并没有真正“倾听”或者可能是什么问题?

0 投票
2 回答
630 浏览

python - AttributeError:“int”对象没有属性“to_pydatetime”

我无法理解错误 - AttributeError: 'int' object has no attribute 'to_pydatetime',我将不胜感激,如果有人能帮我解决这个问题?

数据和堆栈跟踪:

数据馈送图像

错误图像

0 投票
1 回答
64 浏览

algorithmic-trading - 问题,使用 backtrader 和 btalib 进行回测,这不是我尝试过的操作,如果 sma5>sma10 则想作为订单购买并在 sma5 时出售

我非常努力地在 sma5>sma14 时下单买入并在 sma5<sma14 时卖出,但它不起作用我使用 backtrader 作为回测库并使用 btalib 作为指标 o 在“btalib.sma(df, period)”处生成信号

脑功能是什么回测模块

有时是每天买卖,今天买明天卖


您需要先从 zoho 应用程序授予读取、写入、编辑权限

0 投票
3 回答
1559 浏览

python - 在 Backtrader 问题中获取数据

我正在尝试用 Python 在 Backtrader 上编写回测策略,下面是给我错误的代码。截至 2021 年 7 月 2 日,我正在使用最新版本的 backtrader。

我得到的错误是

Traceback(最近一次调用最后一次):文件“c:\Users\risha\PycharmProjects\PythonDataScience\BacktraderBacktesting\TestingData.py”,第 9 行,在 cerebro.run() 文件“C:\Users\risha\anaconda3\lib\ site-packages\backtrader\cerebro.py”,第 1127 行,运行中 runstrat = self.runstrategies(iterstrat) 文件“C:\Users\risha\anaconda3\lib\site-packages\backtrader\cerebro.py”,第 1210 行,在运行策略 data._start() 文件“C:\Users\risha\anaconda3\lib\site-packages\backtrader\feed.py”中,第 203 行,在 _start self.start() 文件“C:\Users\risha \anaconda3\lib\site-packages\backtrader\feeds\yahoo.py”,第 355 行,在 start super(YahooFinanceData, self).start() 文件“C:\Users\risha\anaconda3\lib\site-packages\ backtrader\feeds\yahoo.py",第 94 行,在 start super(YahooFinanceCSVData, self).start() 文件中"C:\Users\risha\anaconda3\lib\site-packages\backtrader\feed.py",第 674 行,在 start self.f = io.open(self.p.dataname, 'r') FileNotFoundError: [Errno 2 ] 没有这样的文件或目录:'SPY'

我很困惑为什么会这样。我也尝试通过在 Cebro 中添加策略来运行它,但这仍然会导致相同的错误。有人可以帮我解决这个问题吗?

0 投票
2 回答
236 浏览

python - 如何在 Backtrade 中处理 GenericCSVData 中的日期格式

我正在尝试一个简单的示例,该示例从我的 csv 打印日期时间和收盘价。它正确打印日期,但23:59:59仅打印时间。你能帮我检查一下我做错了什么吗?

这是我的代码:

输出 :

预期输出:

这是我的 csv

0 投票
1 回答
592 浏览

python - Backtrader '找不到文件错误 [ERRNO 2]'。Backtrader Github 页面的示例代码出错

我在尝试运行在 github 上找到的 backtrader 示例设置代码时遇到了这个错误。在做了一些研究后,我发现错误可能源于 Yahoo Finance API 已过时或不再与 backtrader 包兼容。我计划使用在线数据馈送进行我想做的回测,所以有人知道我可以如何解决雅虎数据馈送问题吗?一些在线资源建议深入研究源代码。我已经尝试了这些建议,但无济于事。

错误堆栈:

0 投票
1 回答
207 浏览

python - backtrader 上的 Cerebro.run() 不输出任何内容?

我正在尝试在 Backtrader 上运行示例策略,但是我没有收到错误代码,只是没有输出,除了 [< main .SmaCross at 0x12543a880>]

在此处输入图像描述

有人可以帮我吗?非常感谢。

编码:

我没有使用 YahooFinanceData 和 yfinance,因为服务器最近似乎不稳定并且没有在 python 上运行。所以我尝试使用传统的 read_csv(file) 作为将数据提供给 bt 的一种方式,我不确定这是否是它不输出任何内容的原因

0 投票
1 回答
60 浏览

python - 打开 HTML 文件并将其保存为字符串变量的最简单方法

我正在使用 python 中的一个文件并尝试将其保存到一个字符串变量中,这样我就可以使用 Flask 将它传递到一个 html 文件中。

这是过程:

  1. 运行回测并将结果保存为 HTML 文件。
  2. 获取 HTML 文件并将其设置为 python 中的字符串变量。
  3. 使用烧瓶将字符串变量传递到 HTML 中(我知道该怎么做)

这是将文件保存到模板文件夹到 backtest.html 文件中的代码行。我无法更改该过程,我想要做的是获取整个文件,将其设置为 python 中的一个变量,然后我可以将它与烧瓶一起传递给 HTML 文件中的模式。