株のシステムトレードをしよう - 1から始める株自動取引システムの作り方

株式をコンピュータに売買させる仕組みを少しずつ作っていきます。できあがってから公開ではなく、書いたら途中でも記事として即掲載して、後から固定ページにして体裁を整える方式で進めていきます。

技術メモ:リアルタイムトレード(ライブトレード) その4

今日も昨日の続き。

how-to-make-stock-trading-system.dogwood008.com

下記の要約の続きを行っていく。

www.backtrader.com

データの時間枠と圧縮

下記のコードでデータを取得できる。

data = ibstore.getdata(dataname='EUR.USD-CASH-IDEALPRO',
                       timeframe=bt.TimeFrame.Ticks,
                       compression=1,  # 1 is the default
                       rtbar=True,  # use RealTimeBars
                      )
cerebro.adddata(data)

compressiontimeframe のパラメータがサポートされる。

timeframeTicks を指定するのが重要であり、その理由は下記の通り。

  • 埋め戻しが行われない(IBがサポートする最小単位は Seconds/1
  • RealTimeBarsdataname によって要求され、サポートされる場合でも、 RealTimeBars の最小分解能が Seconds/5 であるため、使用されない

いずれにせよ、Ticks/1 の分解能で作業しない限り、データをリサンプリング/再生 (resampled/replayed)する必要がある。 RealTimeBars が動作する前述の例:

data = ibstore.getdata(dataname='TWTR-STK-SMART', rtbar=True)
cerebro.resampledata(data, timeframe=bt.TimeFrame.Seconds, compression=20)

(C) 2020 dogwood008 禁無断転載 不許複製 Reprinting, reproducing are prohibited.