取引されたシリーズとベンチマークを手動で提供する再現可能なサンプルを作成したいと思います。これは、ziplineに近づいている人々の人生を信じられないほど容易にするでしょう。事実、Yahoo!Finance APIの最近のシャットダウンを考えると、Yahooから^ GSPCベンチマークをバックグラウンドでインポートしようとするとHTTPエラーが返されるため、ziplineの導入例はもう機能しません。結果として、現在、AFAIKで動作する公式チュートリアルのコードスニペットは1つではありません。Ziplineでベンチマークを手動で提供する方法
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
質問:ベンチマークとして取引資産及びSPYとしてAAPLを使用して動作するための戦略を作るためにどのように? 制約:例のようにAAPLとSPYを手動で提供する必要があります。
Ziplineは代わりにGoogle Financeを使用しましたが、最新のリリースではありません。マスターから再インストールすることができますhttps://github.com/quantopian/zipline – user748455
ZiplineのベンチマークはデフォルトでS&P 500のGoogleティッカーSPYになりました。 – user748455