wilki.space Blog

ビットコイン自動売買など仮想通貨まわりを中心にシステムトレード関係のお話をいろいろと

Bitflyerの約定履歴を取得する

テクニカルチャートを描くためには価格を取得する必要があります。

いわゆる始値、終値、高値、安値ってやつですね。 Tickerという形で情報提供されてたりしますが、1分、5分、1時間など複数の時間軸で集計したい場合は生の価格情報をデータとして取得する必要がありますね。

BitflyerのAPIの種類

APIにはPublic APIとPrivate APIの2つがあります。 Publicな方は価格情報など公開されている情報の取得で、Privateな方は口座残高、注文実施などアカウントに紐付く情報の参照、更新系のAPIとなっています。 Privateな方を叩くためにはAPIキーなどの設定が必要になります。

今回は価格の取得になるのでPublicなAPIを使います。

約定履歴の取得

Bitflyerの約定履歴は

https://api.bitflyer.jp/v1/getexecutions

にアクセスすると得られます。パラメータとして、product_codeを利用できます。デフォルトではビットコインの約定履歴が取得できますが、ビットコインFXや先物の約定履歴も取得できます。

ビットコイン以外の約定履歴を取得したい場合は以下の手順で行います。

1. プロダクトコードを取得する

https://api.bitflyer.jp/v1/getmarkets

にアクセスすると、BitflyerのAPIで扱えるプロダクトのコードを取得することができます。 例えば、ビットコインFXだったら「FX_BTC_JPY」というものがそれです。 他にも、イーサ/ビットコインや先物なんかもありますね。

2. 約定履歴APIのパラメータにプロダクトコードを付ける

例えばビットコインFXの約定履歴を取得する場合は、

https://api.bitflyer.jp/v1/getexecutions?product_code=FX_BTC_JPY

となります。

あとはこの返ってきたJSONをパースしてDBとかに保存してやればいいですね。