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

編集:
Kasobu 編集部 (Kasobu editorial team)
この記事の編集者
Kasobu 編集部

本サイトに掲載される記事の執筆と管理を行っております。ユーザーの皆様が納得して意思決定を行えるよう、経験豊富なライターや専門家とともに、世界中の情報を網羅的かつ正確に、理解しやすいコンテンツにまとめています。ユーザーの皆様の中には、初めての投資をする方、熟練の投資家の方、企業経営者の方、専門家の方、仮想通貨について学習したい方など、多様なバックグラウンドを持つ方々がいらっしゃると思いますが、仮にどなたであっても、私達の「Kasobu」がお力になれることと存じます。

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

2022年12月最新情報

BINANCEが2022年11月30日に日本からの新規ユーザーが口座開設・登録することを禁止しました。

他の海外仮想通貨取引所をお探しの方であれば、BYBITがおすすめです。

BYBITの口コミや評判を知りたい方は下記のリンクをクリックしてください。

先に評価をチェックする方はこちら|600人以上の口コミを掲載

また、BINANCEの日本ユーザー登録禁止に関しては、下記の記事で詳細が記載されていますので、参考にしてください。

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

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

海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
#現物取引
#先物取引
#無期限先物取引
Binance
(バイナンス)
Binance Holdings. Ltd.
海外
RANK
取引所スコアならびユーザー評価を踏まえ、専門家のフィルター、またKasobuの編集チームによる月次調査を元に総合的なランク評価を行います。
1,000億円を超える純利益を誇る、世界最大級の仮想通貨取引所
BINANCE (バイナンス) は、取引高世界1位を誇る仮想通貨取引所です。シンガポールを拠点に全世界へ展開しています。300種類以上の豊富な取扱通貨数や、手数料の安さなどが高い評価を受けています。セキュリティ体制も充実していて、信頼性の高さも魅力的です。日本語にも対応しています。
取引手数料
0.015~0.1%
取引方法
現物 / 先物取引 / 信用取引
暗号資産数
394
最大レバレッジ
20倍
スマートフォン対応
最低取引単位
0.0001BTC
取引所スコア
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は初心者でも利用しやすいように設計されており、すぐに売買を行うことができます。

2022年12月最新情報

BINANCEが2022年11月30日に日本からの新規ユーザーが口座開設・登録することを禁止しました。

他の海外仮想通貨取引所をお探しの方であれば、BYBITがおすすめです。

BYBITの口コミや評判を知りたい方は下記のリンクをクリックしてください。

先に評価をチェックする方はこちら|600人以上の口コミを掲載

また、BINANCEの日本ユーザー登録禁止に関しては、下記の記事で詳細が記載されていますので、参考にしてください。

本サイトに掲載される記事の執筆と管理を行っております。ユーザーの皆様が納得して意思決定を行えるよう、経験豊富なライターや専門家とともに、世界中の情報を網羅的かつ正確に、理解しやすいコンテンツにまとめています。ユーザーの皆様の中には、初めての投資をする方、熟練の投資家の方、企業経営者の方、専門家の方、仮想通貨について学習したい方など、多様なバックグラウンドを持つ方々がいらっしゃると思いますが、仮にどなたであっても、私達の「Kasobu」がお力になれることと存じます。

関連記事

仮想通貨取引所(総合)ランキング

国内
海外
人気記事
新着記事
編集部おすすめHOTトピック記事
BINANCE (バイナンス)の関連記事
BINANCE (バイナンス)の人気記事
BINANCE (バイナンス)の新着記事
広告掲載 / お問い合わせ
「Kasobu」への広告掲載・そのほかご相談は、下記お問い合わせボタンよりご連絡ください。
お問い合わせ
Kasobu / 仮想通貨投資情報サイトの Twitter