Upgrade to Pro — share decks privately, control downloads, hide ads and more …

zipline のカスタムデータバンドルを自作する

2casa
December 17, 2017
1.5k

zipline のカスタムデータバンドルを自作する

Quantopianが主導して開発しているpythonベースのアルゴリズムトレーディングライブラリであるziplineに、日本株の株価データを取り込む際の工程とポイントをかいつまんで紹介。

2casa

December 17, 2017
Tweet

Transcript

  1. zipline ͬͯʁ •Quantopian ͷΦʔϓϯιʔε൛ •python3 ରԠʢਖ਼֬ʹ͸3.5ʣ •QuantopianͷΑ͏ͳIDE͸ͳ͍͕ɺjupyter notebook্ Ͱಈ͔͢͜ͱ΋Ͱ͖Δɻ •גՁσʔλϕʔεʢʹσʔλόϯυϧʣΛಠࣗʹߏங͢

    Δ͜ͱ͕Ͱ͖Δ ೔ຊגσʔλͰΧελϜσʔλόϯυϧΛ࡞ͬͯΈΑ͏ʂ ؀ڥɿpython3.5 + zipline 1.1.1 (pip install -e <path>) ʢmacos + conda ʹΑΔԾ૝؀ڥʣ
  2. OHLCVϑΝΠϧ࡞੒࣌ͷ ͭ·͖ͮϙΠϯτ open, high, low, close, volume ͷϔομ໊Ͱ࡞੒͢Δඞཁ͕͋Δɻ ̐ຊ஋ͷج४࣌ࠁΛɺJST ͔Β

    UTC ʹมߋ͢Δɻมߋ͠ͳ͍ͱσʔλऔΓࠐΈ࣌ʹࣦഊ͢Δɻ Before After ݩͱͳΔλΠϜκʔϯ ม׵ઌλΠϜκʔϯ
  3. औҾॴ৘ใͷߏங ΧελϜΧϨϯμʔΛ৽ن࡞੒͢Δɻ • औҾॴجຊΫϥε • औҾॴ໊ • λΠϜκʔϯ • ཱձ͍։࢝࣌ࠁ

    • ཱձ͍ऴྃ࣌ࠁ • ٳ೔৘ใ • ౔೔Ҏ֎ͷٳ৔೔෇Λఆٛ exchange_calendar_tse.py ൈਮ
  4. όοΫςετ(on jupyter) [όοΫςετظؒ] 2017/01/01 - 2017/01/11 [σʔλͷස౓] minute(෼଍) 00:00 ͔Β෼଍Ͱ஋ஈ͕औಘͰ͖͍ͯΔ

    ʢJST = UTC + 9ʣ ॕ೔੍ޚͷ͓͔͛Ͱ ਖ਼݄ࡾ͕೔ʢॕ೔Ͱ͸ͳ͍͕ٳ৔ʣ ੒ਓͷ೔ʢॕ೔ʣ ΛεΩοϓͰ͖͍ͯΔ
  5. jupyter notebook্Ͱ όοΫςετ͢Δࡍͷ஫ҙ఺ “%load_ext zipline” ͱɺ“%%zipline —start= …” ͸ηϧΛ෼͚ͳ͍ͱਖ਼͘͠ಈ࡞͠ͳ͍ —trading-calendar=TSE

    ͷࢦఆΛ๨ΕΔͱɺΧϨϯμʔ͕NYSEʢถࠃגࣜࢢ৔ʣͱͯ͠Ξϧΰ͕ಈ ͨ͘ΊגՁσʔλ͕र͑ͳ͍ɻ ηϧΛ෼͚Δ —trading-calendarͷࢦఆΛ๨Εͳ͍ όοΫςετظؒࢦఆ όοΫςετ࣌ؒ࣠ʢσϑΥϧτɿdailyʣ
  6. ࠷ޙʹ • ࣮ࡍʹόοΫςετΛ͢ΔͨΊʹ͸ɺ࣮͸͜ΕͰ͸ෆे෼ • גࣜ෼ׂ΍഑౰ࢧ෷͍ͳͲͷʮݖརམͪʯʹΑΔגՁमਖ਼͕ඞཁ • csvdir ʹ͸ิਖ਼ػೳ΋͍͍ͭͯΔ͕ɺσʔλΛ༻ҙ͠ͳ͍ͱ͍͚ͳ͍ • खܰʹ೔ຊגͰΞϧΰϦζϜτϨʔυΛࢼ͍ͨ͠ͷͰ͋Ε͹ɺ

    SmartTrade ͷ QuantX ͱ͍͏αʔϏε͕͋Δʢͨͩ͠ݱঢ়೔଍ͷ Έʣɻ • ࠓճ঺հͨ͠खॱ͸bitcoin ʹ΋Ԡ༻Ͱ͖Δɻݖརམͪͷ৺഑͕ͳ ͘ɺσʔλऔಘ΋Ͱ͖ͦ͏ͳͷͰɺͬͪ͜঺հͨ͠ํ͕࣮༻ੑ͕ߴ ͔ͬͨͷͰ͸ʁͱܰ͘ޙչ͍ͯ͠Δ