0

我有一个交易算法,我正在 zipline 上进行回测。我已经成功地从 csv 文件中提取了美国普通股捆绑包。展望未来,我想在每个交易日结束时对其进行连续回测。

因此,我想通过从 Interactive Brokers 下载每个美国股票的每日 OHLCV 价格附加到我现有的捆绑包中(我已经编写了一个执行此操作的 python 脚本)。

现在我的问题是:如何将每个资产的新一天数据行附加到我现有的滑索捆绑包中?

具体来说,我不想创建新的捆绑包。

4

1 回答 1

0

我碰巧自己也在调查这个问题,我的结论是这是不可能的。如果有任何zipline开发者正在播出,如果我错了,请纠正我。

每次摄取基本上都会创建一个新的 SQLite 表,这些很容易在~/.zipline/data.

假设您有三个不同的 CSV 用于三个不同的交换,您必须在三个不同的摄取中分别导入它们。

令人失望的是(显然,也许我们错过了假定的用法)是,在运行回测时,它被限制在一个单一的摄取宇宙中。如果我的交易品种列表是分散的——即不同交易所的产品——那么就不可能对这种算法进行回测。

如果您依赖默认quandle空间,那么您不会遇到此问题,前提是您的注册具有足够的可见性(免费 API 密钥非常有限)。

一种解决方案是在一个通用交易日历下将所有 CSV 文件一起导入。这听起来是人为的,但对评估非日间策略的影响应该可以忽略不计。

因此,例如,如果您有三组 CSV ,AS只需将它们作为通用导入到三个日历之一。详细过程在此处进行了说明。DEMIyahoo

谢谢,

于 2019-08-02T22:00:36.037 回答