はじめに
仮想通貨の自動売買に向けて、PythonからAPIでbitFlyerの売買ができるようにします。
bitFlyerでの自動売買を目指すので、bitFlyer APIについてとbitFlyer APIをPythonで動かすときの便利なライブラリの紹介をします。
前回は過去のチャートの取得を行いました。

bitFlyer API
bitFlyer APIは主に4種類公開されています。
bitFlyer Lightning API
: レート情報や取引ができるAPIbitFlyer Lightning API Playground
: bitFlyer Lightning APIを試せるサービスchainFlyer API
: ブロックチェーンのトランザクションやアドレスを取得できるAPIEcho API
: 法人向けのビットコイン送付サービス

今回主に利用するのはbitFlyer Lightning APIになります。
bitFlyer Lightning API
bitFlyer Lightning APIでは仮想通貨のレートの情報や取引などが可能です。
このAPIは、APIキーの認証が不要なPublic APIと認証が必要なPrivate APIがあります。
bitFlyer Lightning APIを利用する準備
bitFlyer APIを利用するためにはAPI KeyとAPI Secretを作成する必要があります。
bitFlyer Lightningにログインし、メニューから「API」を選択します。
「新しいAPIキーを追加」をクリックし、APIで利用できる権限を選択して、APIキーを作成します。
API KeyとAPI Secretの取り扱いには注意しましょう。
PythonでbitFlyer API
PythonでbitFlyer APIを利用する場合は、pybitflyer
が便利です。
2021年9月時点で最後のコミットが4年前となっており、あまりメンテナンスはされていないのかもしれませんが、問題なく使えそうです。使えない場合は、request
などを利用してAPIをそのまま叩く必要があります。
pybitflyerの使い方
以下のように使います。API KeyとAPI Secretは環境変数から取得しています。
import pybitflyer
import os
api_key = os.environ.get('API_KEY')
api_secret = os.environ.get('API_SECRET')
api = pybitflyer.API(api_key=api_key, api_secret=api_secret)
Public APIのみを使う場合は、api_key
とapi_secret
はなくても問題ありません。
インスタンスから以下のようにbitFlyer APIが使えるようになっています。
ticker = api.ticker(product_code="BTC_JPY")
board = api.board(product_code="BTC_JPY")
下記のコードを見ると使えるAPIと必要なパラメータがわかります。
それぞれのAPIでできることを確認するときは、bitFlyer APIのドキュメントを確認します。