【Python】仮想通貨(ビットコイン)自動売買botの作り方-bitbankのAPIで情報取得

bitbank-python-自動売買botの作り方

こんにちは、IT Career Hack管理人のYaemon(@yaemon777)です。

仮想通貨でトレードをしているけど、
仮想通貨のbotを作ってみたい!という人の中には、

実際にどうやってbotを作ればいいの?

と悩んでいる人がいるかもしれません。

管理人も「PythonはAIに強いスクリプト言語だよね!?」と思っていた時がありました。
作ってみると、githubのライブラリやネットの情報も充実していて便利なんですよね。

このページでは、

▶Pythonをローカルの環境(Mac)に構築する方法
▶PythonでbitbankのAPIで仮想通貨のリアルタイム情報を取得する方法(サンプルコード)

について、プログラミング初心者の方・仮想通貨投資家の方に向けて紹介をしていきます!作業の参考にしてもらえればと思います。

Pythonをローカルの環境(Mac)に構築する方法

管理人のPC環境について

MAC:OS X El Capitan (10.11.6)
*gitインストール済み

 

Pythonを使える環境を構築する

“Python 環境構築 Mac” で検索すると、QiitaとProgateの記事がありました。
そこでざっと見て、Progateのほうが細かく説明していたので次の記事を参考にPythonの環境を構築しました。

手順は、

  • Homebrewのインストール
  • prenvのインストール
  • Pythonのインストール
  • Pythonのコードを実行する

という流れ。

インストールするときに、最新版にするか、記事のバージョンにするか悩みましたが、管理人は最新版でインストールをしました。 *最新版が古いバージョンのメソッドを補完していたり、バグフィックスがあるのでいいのかも。環境次第なところもありますよね。

最後のサンプルを動かすところまで終わるとOKです!
こんな感じですね。

 

 

Pythonにgithubのbitbankのライブラリ(python_bitbankcc)を紐付ける設定

Pythonをインストールしたら、Pythonとgithubのbitbankを紐付ける設定をします。この作業をしておかないと、スクリプト内の “import python_bitbankcc” という箇所でエラーになってしまいます。

【設定方法】

①ターミナルを開きます

②以下のpipコマンドを実行します。

sudo pip install git+https://github.com/bitbankinc/python-bitbankcc.git 
*sudoの意味は1番権限のあるユーザーでコマンドを実行するという意味。
 実行時にパスワードが聞かれるので、パスワードを設定します。

*python-bitbankccの説明書はコチラ⇒

 

PythonでbitbankのAPIから情報を取得する

次に、PythonでbitbankのAPIを取得します。
サンプルコードが先程のリンクにあるので、それを参考に作ってみました。

*bitbankで取引されているビットコインの情報を取得するスクリプト

#python_bitbankccのパッケージをインポート
import python_bitbankcc
import json

# public API classのオブジェクトを取得
pub = python_bitbankcc.public()

# テッカー情報を取得
value = pub.get_ticker(
 'btc_jpy' # ペア
)
print(json.dumps(value))
value = pub.get_ticker(
    'btc_jpy' # ペア
)
print(json.dumps(value))

実行結果(2018年11月22日午前1時ごろ)
Python_仮想通貨_bitbankAPI_実行結果
取得したデータは次の通りです。

  • sell:現在の売り注文の最安値 ⇒ 497,944円
  • buy:現在の買い注文の最高値 ⇒ 497,906円
  • high:過去24時間の最高値取引価格 ⇒ 528,334円
  • low:過去24時間の最安値取引価格 ⇒ 461,000円
  • last:最新取引価格 ⇒ 497,836円
  • vol:過去24時間の出来高 ⇒ 5980.0992 BTC

 

ImportError: No module named ‘requests’の対処

最後に1つ注意点、Pythonを実行するときに、次のエラーが発生しました。

ImportError: No module named ‘requests’

対応としては、

pip install requests

を実行すると直りましたので紹介しておきます。

 

参考:Python 3: no module named ‘requests’ #75

 

以上、bitbankのAPIで情報を取得する方法をまとめました。
こちらの記事が参考になればと思います!

また、次に取得したデータをどう計算して注文していくかは別の記事で紹介します。
乞うご期待!

Pocket