Я хочу автоматизировать свои стратегии ручной торговли. Однако для начала я попытался воспроизвести простой пример Zipline о покупке акций Apple. Я с трудом выполнял алгоритм с run_algorithm()
. Когда я пытался запустить «пересечение двойных скользящих средних», возникла точно такая же ошибка. Я также пробовал IPython и Terminal, но все равно получаю эту ошибку. Я не нашел ничего, связанного с этим, на этом форуме. Буду очень признателен за любые подсказки. Спасибо.
Я использую Python 3.6 в macOS и Zipline версии 1.1.1.
Это код:
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 (начало = 2015-1-1, конец = 2017-1-1, инициализация = инициализировать, capital_base = 10000) Файл "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/utils/run_algo.py", строка 360, в run_algorithm environmental = environmental, File "/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, environmental = environmental) Файл "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/zipline/finance/trading.py", строка 99, в init self.bm_symbol, File "/ 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, в sure_treasury_data i f not has_data_for_dates (data, first_date, last_date): File "/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'