gpt4 book ai didi

python-3.x - 如何在 zipline 中手动提供基准

转载 作者:行者123 更新时间:2023-12-03 17:47:34 24 4
gpt4 key购买 nike

我想创建一个可重复的示例,其中手动提供交易系列和基准。这将使接近高空滑索的人们的生活变得异常轻松。事实上,考虑到最近 Yahoo!Finance API 的关闭,即使是带有 zipline 的介绍性示例也不再起作用,因为在幕后尝试从 Yahoo 导入 ^GSPC 基准测试时将返回 HTTP 错误。因此,现在官方教程中没有一个代码片段可以运行 AFAIK。

import pytz
from pandas_datareader import DataReader
from collections import OrderedDict
from zipline.algorithm import TradingAlgorithm
from zipline.api import order, record, symbol, set_benchmark
# Import data from yahoo
data = OrderedDict()
start_date = '01/01/2014'
end_date = '01/01/2017'
data['AAPL'] = DataReader('AAPL',
data_source='google',
start=start_date,
end=end_date)
data['SPY'] = DataReader('SPY',
data_source='google',
start=start_date,
end=end_date)
# panel.minor_axis is ['Open', 'High', 'Low', 'Close', 'Volume'].
panel = pd.Panel(data)
panel.major_axis = panel.major_axis.tz_localize(pytz.utc)

def initialize(context):
set_benchmark(data['SPY'])

def handle_data(context, data):
order(data['AAPL'], 10)
record(AAPL=data.current(data['AAPL'], 'Close'))

algo_obj = TradingAlgorithm(initialize=initialize,
handle_data=handle_data,
capital_base=100000)
perf_manual = algo_obj.run(panel)

返回: HTTPError: HTTP Error 404: Not Found
问题 :如何使用 AAPL 作为交易 Assets 和 SPY 作为基准来制定策略?
约束 :必须像示例中那样手动提供 AAPL 和 SPY。

最佳答案

免责声明:我是 Zipline 的维护者。

您可以使用 csvdir bundle 以摄取 csv 文件(教程 here),然后调用 set_benchmark()在您的 initialize()功能。我也在工作一个分支,它允许 zipline 算法在没有基准的情况下运行,因此即使您无法获得基准数据,您的算法也不应该崩溃。

关于python-3.x - 如何在 zipline 中手动提供基准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44199678/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com