見出し画像

bitFlyerのohlcvデータを蓄積するプログラム

こんにちは、salterです。今回はbitFlyer lightningFXのohlcvデータを定期的に蓄積してくれるプログラムについて考えてみました。

・動機

botのバックテストを行いたい時やmlbotのモデルに学習させる時など、botterの方々にとって取引所の約定履歴のデータなどは無くてはならないものであると思われます。ただ、データが欲しくてもなかなか過去のデータを探してくるのは困難な場合があります。特に、bitFlyerFXの過去の約定データについては、去年くらいから過去1か月までしか遡ってデータ収集をすることが出来なくなってしまいました(自分の調べた限りでは)。つまり、データが必要な場合は自分で自炊しなければなりません。そこで、自炊するための手段を考えるに至ったわけです。

・方法

bitFlyerの公式apiから過去の約定データを取得して、ohlcvデータを作るという方法が一番無難だとは思ったのですが、それより最初からohlcvデータをapiから取得できた方が手っ取り早いと考えました。具体的には、cryptowatchのapiから欲しい時間足のohlcvデータを取得&蓄積します。流れとしては、apiからデータ取得→データを整形→csvファイルに書き込み保存、というような感じです。以下がそのコードです。(以前のデータと重複しているデータは除外するようになってます。)

一応、1, 3, 5, 15, 30分足、1, 4, 6, 12時間足、1日足のohlcvデータをすべて収集するようになっています。もし必要な足だけを取りたいのであれば、コード内のperiod変数に秒単位で時間を入力してもらえればおそらく可能です。

このようなプログラムをタスクスケジューラーなどを使って定期実行することでおそらく今後ohlcvデータで困ることはなくなるのではないでしょうか。

いいなと思ったら応援しよう!