pandas DataFrame にロードした、米国以外の日中のデータを使用してジップラインを動作させようとしています。
BARC HSBA LLOY STAN
Date
2014-07-01 08:30:00 321.250 894.55 112.105 1777.25
2014-07-01 08:32:00 321.150 894.70 112.095 1777.00
2014-07-01 08:34:00 321.075 894.80 112.140 1776.50
2014-07-01 08:36:00 321.725 894.80 112.255 1777.00
2014-07-01 08:38:00 321.675 894.70 112.290 1777.00
ここの移動平均チュートリアルに従い、「AAPL」を独自のシンボルコードに置き換え、履歴呼び出しを「1d」ではなく「1m」データに置き換えました。
algo_obj.run(DataFrameSource(mydf))
次に、を使用して最終呼び出しをmydf
行います。 は上記のデータフレームです。
ただし、 TradingEnvironmentに関連して発生するあらゆる種類の問題があります。ソースコードによると:
# This module maintains a global variable, environment, which is
# subsequently referenced directly by zipline financial
# components. To set the environment, you can set the property on
# the module directly:
# from zipline.finance import trading
# trading.environment = TradingEnvironment()
#
# or if you want to switch the environment for a limited context
# you can use a TradingEnvironment in a with clause:
# lse = TradingEnvironment(bm_index="^FTSE", exchange_tz="Europe/London")
# with lse:
# the code here will have lse as the global trading.environment
# algo.run(start, end)
ただし、コンテキストを使用しても完全には機能しないようです。たとえば、タイムスタンプが市場が開く前であると述べているなど、まだエラーが発生します (実際、trading.environment.open_and_close
時間を見るのは米国市場のものです。
私の質問は、米国以外の日中データでジップラインを使用できた人はいますか? リソースと理想的にはこれを行う方法のサンプルコードを教えていただけますか?
nb取引カレンダー (tradincalendar_lse.py、tradingcalendar_tse.py など) に関連していると思われる github でいくつかのテストがあるのを見てきましたが、これは日次レベルでのみデータを処理するようです。私は修正する必要があります:
- 開園・閉園時間
- ベンチマークの参考データ
- そしておそらくもっと...