pythonでbitflyerのAPIを使用してトレードをする(pybitflyer)

広告

今回はpybitflyerというライブラリを使用してpythonからbitflyerに注文できるようにします。

まずはAPIの許可が必要ですので、パソコンからbitflyerにログインしてlightningまで行きましょう。

左のメニューからAPIを選択します。

「新しいAPIキーの作成」からAPIを作成することができます。API と API Secretの二つが表示されるかと思います。これを使用するのですが、必ず安全なところに保管するようにしてください。

続いてbitflyerで注文やデータを取得するにあたって、便利なライブラリとして「pybitflyer」をおすすめします。これをインストールするのは

で可能です。あるいは以下のリンクから直接setup.pyからインストールすることも可能です。

https://github.com/yagays/pybitflyer

以上で準備は完了です。これを注文するには次のような関数を用意しました。テストする際はsizeを小さくしてすることをおすすめします。

ちょっと付け加えると、FX_BTC_JPY を BTC_JPYにすれば現物での取引になります。

minute_to_expireは注文が失効するまでの分を表しています。この辺はお好きにアレンジしてください。テストする際はSIZEを0.0001など小さな値で試してみると良いかと思います。

また、注文が無事に通れば、buyやsellの中に注文IDが返ってきます。

これは簡単な注文方法ですが、IFDOCOのような特殊注文もpybitflyerで扱うことができます。その際はJSON形式で書くことになるので、例えばIFDOCOの注文は次のようになります。

このようなスクリプトを書くことで特殊注文も出すことができます。他にもアレンジできるので、bitflyerのサイトを参考にすることをおすすめします。

参考サイト

https://lightning.bitflyer.jp/docs?lang=ja

自動トレードはとりあえず始めてみましたが、ちょいプラスでした。もっと工夫できるところがあると思うので、いったん停止して悩んでる最中です。もし何かいい方法があればツイッター等でご教授いただけると幸いです。

pythonで機械学習をしたいなら次の本がオススメです。数式変形も丁寧で原理がわかりやすいです。何より基本中の基本から徐々にステップアップしているので初学者にも分かりやすい内容になってます。本の内容のソースコードも全てGithubに上がっているので、すぐに試せるので便利です。特に時系列データに絞っているので仮想通貨のチャートを学習するのに便利なモデルが紹介されています。

関連記事