我想自动化我的手动交易策略。然而,一开始,我试图重现 Zipline 购买苹果股票的简单例子。我努力运行算法run_algorithm()
。当我试图运行“双移动平均线交叉”时,出现了完全相同的错误。我也尝试了 IPython 和终端,但仍然出现该错误。我在这个论坛中也找不到与此相关的任何内容。我将非常感谢任何提示。谢谢你。
我在 macOS 和 Zipline 版本 1.1.1 上使用 Python 3.6。
那是代码:
import zipline as zl from zipline.api import order, record, symbol
def initialize(context):
pass
def handle_data(context, data):
order(symbol('AAPL'), 10)
record(AAPL=data.current(symbol('AAPL'), 'price'))
zl.run_algorithm(start='2015-1-1', end='2017-1-1', initialize=initialize, capital_base=10000)
这就是追溯:
回溯(最后一次调用):文件“/Users/SOL/Desktop/Python/backtest.py”,第 13 行,在 zl.run_algorithm(start=2015-1-1, end=2017-1-1, initialize=初始化,capital_base=10000)文件“/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/utils/run_algo.py”,第360行,在run_algorithm environ=environ,文件“/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/utils/run_algo.py”,第 132 行,在 _run env = TradingEnvironment(asset_db_path=connstr, environ=environ)文件“/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/finance/trading.py”,第 99 行,在 init self.bm_symbol,文件“/Library/Frameworks/ Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/data/loader.py",第 173 行,在 load_market_data 环境中,文件“/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/data/loader.py”,第 287 行,在 ensure_treasury_data 如果没有 has_data_for_dates(数据,第一个日期,最后一个日期):文件“/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/data/loader.py”,第 87 行,在 has_data_for_dates dts = series_or_df。 index AttributeError:“NoneType”对象没有属性“index”6/site-packages/zipline/data/loader.py",第 87 行,在 has_data_for_dates dts = series_or_df.index AttributeError: 'NoneType' 对象没有属性 'index'6/site-packages/zipline/data/loader.py",第 87 行,在 has_data_for_dates dts = series_or_df.index AttributeError: 'NoneType' 对象没有属性 'index'