ビットフライヤー(bitFlyer)APIをPythonで使ってみよう【ビットコイン自動売買入門】

あなた
「ビットフライヤーのAPIを使って仮想通貨の取引をしてみたいけど、何から始めたらいいんだろう?APIを使って具体的にどんなことができるのかな?」
そんなお悩みを解決します。
ビットフライヤーといえば、ビットコインの取引量が国内No.1の仮想通貨取引所。(本記事執筆時点の公式サイト情報より)
本記事では、そんなビットフライヤーのAPIを使ったビットコインの自動売買botの動かし方をゼロから解説します。
自動売買botって何?
-> あらかじめ決めておいた条件(ある価格より高くなった等)において、自動的に売買を実行するプログラム。
プログラミングが初めてのあなたでも大丈夫。一つずつステップを踏んで理解してみましょう。
ビットフライヤーAPIを使いこなせば、あなたも簡単にビットコインの自動売買を動かすことができます。うまく運用できれば…稼げるかも?
ご注意
この記事や本サイトの情報を参考に仮想通貨のプログラムを動かす場合は、全て自己責任でお願いいたします。免責事項に記載の通り、本サイトの情報を参考にして発生したいかなる損害も責任を負いません。
この記事で分かること
- ビットフライヤーAPIを使って何ができるか
- ビットフライヤーAPIを使った簡単な自動売買botの動かし方
目次
ビットフライヤー(bitFlyer)APIをPythonで使うと何ができる?
ビットフライヤーのAPIをPythonで使いこなすと、例えばこんなことができます。
- ビットコインの自動売買
- ビットコインをなるべく低価格で積立
一つずつ、簡単に確認して見ましょう。
ビットフライヤー(bitFlyer)APIでビットコインを自動売買
APIを使った仮想通貨の取引で最初に思いつくのは、やっぱりビットコインの自動売買ですよね。
ビットフライヤーは、ビットコインの取引量が国内No.1。ということは、自動売買すればするほど取引のチャンスがたくさんありますね。

あなた
「自動売買botを動かすと、どんな資産運用ができるんだろう?」
そんな疑問を持つあなたへ、簡単な自動売買botはどれくらい儲かるのか?を実験したまとめ記事を参考にどうぞ。
仮想通貨の自動売買は儲かる?【自作botを3日間運用してみた結果】
仮想通貨の自動売買って儲かるのかな?そんな興味の出てきたあなたへ、自動売買botを作って実際に運用してみた結果を公開です。実際に運用したからこそ分かるメリットとデメリットも知って、仮想通貨の自動売買があなたに向いているのかどうか一つの参考にしてみてください。これをきっかけに、プログラミングを始めてみるのもありかも?
本記事の後半では、ビットコインの自動売買botの動かし方を解説します。まずは自動売買botを動かして、その可能性を感じてみてくださいね。
ビットフライヤー(bitFlyer)APIでビットコインを低価格で積立
ビットコイン、買い続けていますか?もしビットコインを積立しているなら、APIを使えば低価格で積立できるようになります。
ビットフライヤーには、1円から暗号資産の積み立てができる「かんたん積立」というサービスがありますよね。
でも、かんたん積立サービスのよくある質問を見てみると、「積立購入する時のレートは販売所の価格を参照します」と書かれているので要注意。端的に言うと、手数料がかかります。
一方で、ビットフライヤーのAPIを使って積立購入すれば、その手数料を回避することが可能です。低価格でビットコインを積立購入したい人は、APIを活用しちゃいましょう。
手数料の仕組みが気になる方は、こちらの解説記事も参考にどうぞ。
ビットコイン積立は手数料を理解すればこわくない【おすすめ運用3つ】
ビットコインを積立購入したいけど、どれくらいの手数料がかかるのか分からない!損したくない!そんなお悩みにお答えします。ビットコインを積立購入する方法を3つ、メリットとデメリットをあわせてご紹介。どれだけの手数料がかかってしまうのか、ちゃんと理解すればビットコインを積立購入サービスを使うのもありです。
ビットフライヤー(bitFlyer)APIをPythonで動かしてビットコインを自動売買してみる
ここでは、ビットフライヤーのAPIを使って簡単なビットコインの自動売買botを動かしてみましょう。
手順はこの3つです。
- ビットフライヤーの口座を開設する
- ビットフライヤーのAPIキーを発行する
- 自動売買botを動かしてみる
この3ステップを一つずつ深掘りしていきましょう。やってみると、思ったより簡単ですよ!
Pythonプログラミングが初めてのあなたへ
本記事の自動売買botでは、Python(パイソン)というプログラミングを使います。
まだやったことがないよ!っていうあなたも大丈夫。まずはこちらの記事を参考に、Pythonを触ってみることから始めてみてくださいね。Macと書いてありますが、Windowsでもできますのでご安心ください。
MacでPython入門【驚くほど分かるチュートリアル】
Python入門したいけど、何から始めればいいんだろう?今使ってるMacでPythonプログラミングを始められるかな?そんな疑問にお答えします。Pythonプログラムの書き方から動かし方まで、具体例を交えて徹底解説。このチュートリアルの通りにやれば、必ずPython入門できます。
ビットフライヤー(bitFlyer)の口座を開設する
ビットフライヤーのAPIを使うので、最初に必要なのは口座の開設。
ビットフライヤー(公式サイト)にアクセスして、メールアドレスを登録すると確認のメールが届きます。
その確認メールに記載されているリンクをクリックして、あとは説明の通り進めていけばOKです。
めちゃくちゃ簡単なのでサクッと済ませておきましょう。せっかく自動売買botを動かす準備ができても、口座開設を待っている時間がもったいないですからね。
ビットフライヤー(bitFlyer)のAPIキーを発行する
続いて、APIキーを発行します。APIキーは、あなたのビットフライヤーの口座へプログラミングでアクセスするための鍵、と考えてもらえばOKです。
ビットフライヤーの口座を開設しておかないと、APIキーを発行できない(先に進めない)ので注意してくださいね。
まずはビットフライヤーにログインして、左側のメニューにある bitFlyer Lightning をクリック。
トレード画面が出てきたら、画面一番左にあるメニュー(3本線)をクリックします。
開いたメニューの中からAPIを選択します。
画面一番下にある「新しいAPIキーを追加」をクリック。
注意画面が出るので、全て内容を読みつつチェックを入れて「同意します」をクリックします。
APIキーが他人に知られると勝手に操作できるようになるから超危険!という注意喚起です。APIキーの管理はとにかく厳重に!
続いて、APIキーのラベル(名前)をつけます。auto-tradeとか、あなたの分かりやすい名前をいれておけばOKです。
トレードの部分は、「新規注文を出す」の部分にだけチェックを入れてOKボタンを押します。(後から修正することもできます)
本記事で紹介する自動売買botでは新規注文しか使用しないので、不要な処理はなるべくチェックを入れないほうが安全ですからね。
これにて、APIキーの発行が完了。APIキーとシークレットキーの2つができましたね。シークレットキーは、表示という部分を押して表示させることができます。
クドいほど言いますが、このAPIキーは誰にも教えちゃダメです。誰かに教えたり、この情報が漏れたりしないように十分注意してくださいね。
ビットフライヤー(bitFlyer)のAPIを使ったビットコインの自動売買botを動かす
ここまできたら、準備完了です。ビットコインの自動売買botを動かして見ましょう。
実際のプログラムがこちら。まずは動かしてみることが大事なので、細かいことは気にせずなるべくシンプルにしてあります。
import time import pandas as pd import ccxt import talib as ta exchange = ccxt.bitflyer() exchange.apiKey = 'あなたのAPIキー' exchange.secret = 'あなたのシークレットキー' crypto = 'BTC' # 取引する仮想通貨 currency = 'JPY' # 日本円建て interval = 60*5 # チャート足(60*5なら 5分足) duration = 20 # 移動平均のサイズ trading_amount = 30000 # 一度の売買で使う金額(単位=currency) symbol = crypto + '/' + currency position = 0 # 自動売買中に持っているポジション last_rate = 0 # 最後に約定したレート(単位=currency) df = pd.DataFrame() while True: time.sleep(interval) ticker_info = exchange.fetch_ticker(symbol) df = pd.concat([df, pd.DataFrame({'price': [ticker_info['last']]})], ignore_index=True) if len(df) < duration: continue df['upper'], df['middle'], df['lower'] = ta.BBANDS(df['price'], timeperiod=duration, nbdevup=2, nbdevdn=2, matype=0) if position: if df['price'].iloc[-1] > df['upper'].iloc[-1] and last_rate < df['price'].iloc[-1]: exchange.create_order(symbol=symbol, type='market', side='sell', amount=position) print('sell ' + str(position) + crypto + ' @' + str(ticker_info['last'])) position = 0 else: ticker_balance = exchange.fetch_balance() if float(ticker_balance[currency]['free']) > trading_amount and df['price'].iloc[-1] < df['lower'].iloc[-1]: amount = round(trading_amount / float(ticker_info['last']), 5) exchange.create_order(symbol=symbol, type='market', side='buy', amount=amount) print('buy ' + str(amount) + crypto + ' @' + str(ticker_info['last'])) position = amount last_rate = ticker_info['last'] df = df.iloc[1:, :]
これを main.py といったPythonのプログラムファイルにコピペしましょう。
自動売買botを動かす前にやっておくこと
プログラムのコピペが終わったら、動かす前にやることが2つあります。
一つ目は、APIキーとシークレットキーの設定。以下のコードを、あなたのAPIキーとシークレットキーに書き換えましょう。
exchange.apiKey = 'あなたのAPIキー' exchange.secret = 'あなたのシークレットキー'
2つ目は、必要なライブラリのインストール。Macならターミナル、Winならコマンドプロンプトで以下のコマンドを打ち込んでインストールです。
pip install ccxt pip install ta-lib
ここまでできたら、あとは以下のコマンドを実行すると自動売買botが動き始めます。
Python3 main.py
botがちゃんと動いているのか、そもそもどういう仕組みで売買しているのか、詳細を解説したこちらの記事も確認してみてくださいね。
ccxtの使い方をpython自動売買botで解説【初心者向け実践】
ccxtの使い方をpythonの仮想通貨botで勉強してみたい!そんな要望にお答えします。APIの仕様って仮想通貨取引所ごとで微妙に違っていて、個別に学んでいくのは面倒ですよね。でも、そんな時こそccxtの出番です。簡単な仮想通貨自動売買botを実際に動かしながら、ccxtの使い方をマスターしちゃいましょう。
この自動売買botをきっかけに、あなただけの運用を考えてみるのも楽しそうですね!
ビットフライヤー(bitFlyer)APIをPythonで活用すればあなたも稼げるかも?
本記事では、ccxtというライブラリを使って、ビットフライヤーAPIから新規注文を出す簡単なビットコインの自動売買botを動かしました。
ビットフライヤーのAPIを使いこなせば、新規注文だけではなくてこんなこともできるようになります。
- 注文の一覧を取得する
- 注文をキャンセルする
- etc…
あなたの投資戦略によって自動売買botをカスタマイズしたり、価格の変動に応じて積立プランを変更したり、自由に拡張していくことができますね。
他にどんなことができるのか、ビットフライヤーAPIの解説ページ(公式サイト)に載っているのでぜひ一度目を通して見てください。
ビットフライヤーAPIをPythonで活用して、あなただけの快適な仮想通貨投資プランを作り上げちゃいましょう!
イーサリアム積立を完全自動化して賢く運用【コピペでチャレンジ】
イーサリアムを積立購入したいけど、すでに提供されてる仮想通貨の積立サービスを使うとスプレッドで損しちゃうな。賢く運用するには自分でいちいち現物取引して買うしかないの?その悩み、プログラムで完全自動化すれば解決。スプレッドも面倒もゼロです。この機会にプログラミングの基礎知識も身について、自己投資にもなりますね。