BINANCE (バイナンス) 公式API連携方法 | Pythonを用いた自動売買入門

編集:
Kasobu 編集部 (Kasobu editorial team)
1分で理解する要約
  • APIとはソフトウェアの機能を共有する仕組みのこと
  • BINANCEのAPIではトレードの自動化ができる
  • Pythonでコードを書いてAPIを使用しよう

BINANCEの公式APIを使うことで、データの取得や自動トレードの設定などさまざまなことが可能になります。本コンテンツは、APIを用いた自動売買の入門編として、BINANCE公式APIを活用する方法※を解説していきます。

※ 自動売買の前までの前提データ取得方法

先に口コミ評価をチェックする方はこちら
海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
#現物取引
#先物取引
#無期限先物取引
Binance
(バイナンス)
Binance Holdings. Ltd.
海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
1,000億円を超える純利益を誇る、世界最大級の暗号資産(仮想通貨)取引所!
BINANCE (バイナンス) は、取引高世界1位を誇る中国発の暗号資産(仮想通貨)取引所です。他にも、ユーザー数が800万人以上、取り扱い暗号資産(仮想通貨)数が190種類など、総じて規模の大きな取引所です。セキュリティもしっかりしているため、安心して暗号資産(仮想通貨)取引ができます。
取引手数料
0.015~0.1%
取引方法
現物 / 先物取引 / 信用取引
暗号資産数
385
最大レバレッジ
125倍
スマートフォン対応
最低取引単位
0.001BTC
取引所スコア
Kasobuの取引所スコアは、CoinmarketcapのAPIデータにて提供される各取引所の点数(0.0〜10.0)を表記しています。
9.9
ユーザー評価
ユーザーからの取引所に対する意見を集めました。調査内容には「手数料」「取扱通貨」「速度・安定性」「機能・ツール」「サポート体制」が含まれています。
公式サイトを見る

BINANCE (バイナンス) の公式API概要

APIとは

Application Programming Interfaceの略で、簡潔に言うとソフトウェアの機能を共有する仕組みのことです。機能の共有ができると、新しくプログラムコードを書く必要がないため非常に便利です。アプリケーションなどの開発も効率に進められるため、あらゆる場面で用いられています。

Google Mapなどが代表的な例です。様々なWEBサービスでGoogle Mapが導入されていますが、全てのサービス開発者が1からコードを書いているのではなく、オープンになっているGoogle Mapのライブラリ (ソースコード) を使って開発しているのです。

BINANCE (バイナンス) APIでできること

BINANCEでは公式APIを用いることで、通常は利用できないオーダーの仕方や、トレードの自動化などができます。APIを扱うとなると、プログラミングの知識がある程度必要になりますが、BINANCEのAPI導入は非常に親切に設計されているようで、初心者の方でもすぐに売買を楽しむことができます。

BINANCE (バイナンス) API主要機能一覧

BINANCEの公式APIでできることを一覧にしました。

主要機能一覧

関数

説明

引数

get_all_tickers

全通貨ペアの市場価格を取得

なし

get_ticker

指定通貨ペアの24時間の価格変更の統計情報を取得

symbol

get_symbol_ticker

指定通貨ペアの市場価格を取得

symbol

get_orderbook_ticker

全通貨ペアの板情報を取得 (買い:最高値・数量、売り:最安値・数量)

なし

get_order_book

板情報を取得

symbol limit (MAX 1000)

get_recent_trades

最新の全約定履歴を取得

symbol limit (MAX 500)

create_order

オーダーを入れる

symbol side type quantity price

order_limit

指値オーダーを入れる

symbol side quantity price

order_limit_buy

指値買いオーダーを入れる

symbol quantity price

order_market_sell

成行売りオーダーを入れる

symbol quantity

get_all_orders

全アクティブオーダー情報を取得

なし

get_open_orders

自分のアクティブオーダー情報を取得

symbol

cancel_order

オーダーをキャンセルする

symbol orderId

get_asset_balance

資産情報を取得

asset

get_symbol_info

通貨に関する情報を取得

symbol

これらをうまく使い合わせることで自動トレードなどが可能になります。

BINANCEではロスカット注文を成行で行うことができません。そのため、目でチャートを追いかけながら損切りを手動で行う必要があります。これらはボラリティの大きな仮想通貨において、急な価格変動などに対応しきれない場合がありリスクがあります。しかし公式APIを活用することで、それらを防ぐことができます。

Pythonを使ったBINANCE (バイナンス) APIとの連携手順

BINANCE (バイナンス) に新規登録

BINANCEのトップページの右上にある、Log In or Registerの「Register」の部分をクリックしましょう。Login画面に飛んでしまった場合は、右下にある「Register」をクリックします。

Register画面に遷移したら以下の項目を入力し、チェックボックスにチェックを入れて、「Register」を押し登録しましょう。

  • メールアドレス
  • パスワード
  • パスワードの確認
  • 紹介者がいる場合はそのID

取引所のパスワードなので、盗難の被害に合わないためにも、自動生成したパスワードをおすすめします。

メール承認

承認メールが送られてくるので、登録を完了しましょう。

BINANCE (バイナンス) からAPIキーとシークレットキーを取得する

トップ画面からアカウント管理画面に移ります。APIを「Enable」にして、APIのキーを作成します。入力する名前は任意です。その後、二段階認証コードを入力しましょう。

上記の手順が終了すれば完了です。メールボックスを確認して、届いたメールを認証します。APIキーとシークレットキーが表示されたら、保存しておきましょう。

BINANCE (バイナンス) の公式APIライブラリーをインストールする

APIキーとシークレットキーを取得したら、公式ライブラリー (ソースコードのようなもの) を自分のPCにインストールします。インストールするにはターミナルを開いてコマンドを入力しましょう。

※ターミナルとは

Macの場合はアプリケーション一覧の「その他」の部分に入っています。Windowsの方は「コマンドプロンプト」と呼ばれるものがターミナルに該当します。

ターミナルを開いたら以下のコマンドを打ち込んでください。

$ pip install python-binance

コマンドが動いてインストールが完了します。

PythonでBINANCE公式APIライブラリをインストールする

from binance.client import Client

上記がコードをpyhtonのコードが書かれたファイルの一番上に記入しましょう。インポートが完了します。

BINANCE (バイナンス) のAPIを実際に使ってみる

全ての通貨ペアを取得するプログラム

コードを書く

まずは以下のようにコードエディタに書きましょう。

コードエディタは基本的には何でも大丈夫ですが、Sublime Textというアプリがおすすめです。

# ファイル名 test.py
from binance.client import Client
# APIキー設定
api_key = '先ほど取得したAPI'
api_secret = '先ほど取得したシークレットキー'

# Client作成
client = Client(api_key, api_secret)

# 全ての価格を取得
prices = client.get_all_tickers()
print(prices)

コードエディタなどで編集し名前をつけて保存しましょう。

ここではtest.pyと保存します。保存場所はわかりやすいようにデスクトップに保存してください。
※pythonのファイルは必ず.pyとしてください

ターミナル (コマンドプロンプト) で実行

ターミナル (コマンドプロンプト) を開いて以下のように実行します。

①デスクトップに移動

$ cd desktop

②test.pyを起動

$ python test.py

$マークは最初から表示されています。(コマンドプロンプトは$マークがありませんが、それ以外を入力してください)

これらを入力すると実行されます。

現在の相場情報を取得する

コードを書く

現在の相場情報を取得するコードは以下の通りです。

from binance.client import Client

class BinanceAPI:

    def __init__(self):
        API_KEY = '先ほど取得したAPIキー'
        API_SECRET = '先ほど取得したシークレットキー'

        self.client = Client(API_KEY, API_SECRET)

    def get_ticker(self, pair):
        try:
            value = self.client.get_ticker(symbol=pair)
            return value
        except Exception as e:
            print('Exception Messege : {}'.format(e))
            return None

def main():
    binance_set = BinanceAPI()

    ticker = binance_set.get_ticker('BTCUSDT')
    print(ticker['lastPrice'])
# この場合はBTCUSDペアの終値を出している。

if __name__ == '__main__':
    main()

実行方法は先ほどと同じです。

    highPrice 過去24時間以内の最高値,
    priceChange 過去24時間の価格変化 (lastPrice - openPrice),
    quoteVolume  "その時々",
    lastId  その時々,
    bidPrice  買い注文の最安値,
    openTime  日時 (始値),
    prevClosePrice  前足の最終価格 (終値),
    lastQty  最後の取引の数量,
    askQty  売り注文の最安値の数量,
    askPrice  売り注文の最安値,
    openPrice  開始の価格 (始値),
    symbol 通貨ペア"BTCUSDT",
    volume 過去24時間の出来高,
    weightedAvgPrice "その時々",
    firstId その時々,
    closeTime 日時 (終値),
    lastPrice 最終の価格 (終値),
    priceChangePercent 過去24時間の価格変化率,
    lowPrice 過去24時間以内の最安値,
    bidQty 買い注文の最安値の数量

これらを入力することで様々なデータが取得できます。

現在の自分の資産状況を取得する

コードを書く

現在の自分の資産状況を取得する方法は以下の通りです。

from binance.client import Client

class BinanceAPI:

    def __init__(self):
        API_KEY = 'BINANCE_API_KEY'
        API_SECRET = 'BINANCE_API_SECRET'

        self.client = Client(API_KEY, API_SECRET)

    def get_asset(self, symbol):
        try:
            value = self.client.get_asset_balance(asset=symbol)
            return value
        except Exception as e:
            print('Exception Messege : {}'.format(e))
            return None

def main():
    binance_set = BinanceAPI()

    asset_dict = prv_set.get_asset('BTC')
    print(asset_dict['free'])
# この場合はBTCのfree 利用可能な数量を表示してくれる。

if __name__ == '__main__':

    main()

実行方法は同じです。

 locked 注文等でロックされている数量,
 free 利用可能な数量,
 asset 通貨

これらを入力することで変更できます。

BINANCE (バイナンス) のAPIまとめ

本記事では、BINANCEの公式APIについて、またpythonを使ったBINANCE公式APIの活用方法をまとめました。APIを扱うには、プログラミングの知識が必要になりますが、BINANCEの公式APIは初心者でも利用しやすいように設計されており、すぐに売買を行うことができます。

海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
#現物取引
#先物取引
#無期限先物取引
Binance
(バイナンス)
Binance Holdings. Ltd.
海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
1,000億円を超える純利益を誇る、世界最大級の暗号資産(仮想通貨)取引所!
BINANCE (バイナンス) は、取引高世界1位を誇る中国発の暗号資産(仮想通貨)取引所です。他にも、ユーザー数が800万人以上、取り扱い暗号資産(仮想通貨)数が190種類など、総じて規模の大きな取引所です。セキュリティもしっかりしているため、安心して暗号資産(仮想通貨)取引ができます。
取引手数料
0.015~0.1%
取引方法
現物 / 先物取引 / 信用取引
暗号資産数
385
最大レバレッジ
125倍
スマートフォン対応
最低取引単位
0.001BTC
取引所スコア
Kasobuの取引所スコアは、CoinmarketcapのAPIデータにて提供される各取引所の点数(0.0〜10.0)を表記しています。
9.9
ユーザー評価
ユーザーからの取引所に対する意見を集めました。調査内容には「手数料」「取扱通貨」「速度・安定性」「機能・ツール」「サポート体制」が含まれています。
公式サイトを見る
Important

BINANCE(バイナンス)が一概に悪徳業者と断定はできませんが、日本人にも人気の海外業者の中には詐欺まがいの行為を行なっている業者が紛れていることも事実です。また暗号資産(仮想通貨)交換業として登録していない取引所が日本でサービスを行うことは法律で固く禁じられています。海外暗号資産(仮想通貨)取引所の多くは、日本国内での法律に違反していることが多いため、被害に遭って大きな損害を受けてしまう恐れもあります。当サイトとしては万が一のリスクに備え、安全な国内業者を利用されることを強くおすすめいたします。どの取引所を選べば良いか迷っている方はぜひ「国内おすすめ仮想通貨取引所比較ランキング」をご覧ください。

関連記事