見出し画像

Python3とCCXTライブラリを用いたBitMEX自動売買bot作成Tips

本noteでは暗号通貨の証拠金・先物取引所であるBitMEXを対象とし、CCXTライブラリを用いて自動売買botを構築するためのTipsを提供します。

● BitMEXとは?
BitMEX( https://www.bitmex.com/register/UODNb6 )についてはロンさんやアラタさんの記事が参考になります。日本国内大手のbitFlyerの処理遅延・SFD(Swap For Difference)の問題を受け、乗り換え先として注目度が以前に増して高まっている海外の暗号通貨証拠金・先物取引所です。

BitMEXはどこの国にあって/誰が運営していて/安全なのか
http://1cd3.com/261.html
【レバレッジ最大100倍】BitMEX(ビットメックス)の使い方
https://xarataxnp.com/how-to-use-bitmex/

・bitFlyer FX
 良い:手数料無料、円建て表示
 悪い:遅延、SFD、板薄い
・BitMEX:
 良い:サクサク、板厚い、ハイレバ
 悪い:Taker手数料、UI複雑

● CCXTとは?

CCXTライブラリ( https://github.com/ccxt/ccxt )は暗号通貨(ビットコインやアルトコイン)のトレードを補助するためのJavaScript / Python / PHP用ライブラリです。自動売買トレードのライブラリ部品としては、ある種、教科書的な存在と言っても過言ではなく、ビットコイン等の暗号通貨の自動売買を始めるにあたって有用なツール・スタートポイントになります。特長は下記の通りです。
==================================================
・Bibox, Binance, Bitfinex, bitFlyer, BitMEX, Bittrex, BtcBox, coincheck, Cryptopia, GDAX, Kraken, Kucoin, Liqui, OKEX, Poloniex, QUOINEX, Zaifといった(暗号通貨に触れている人には馴染みのある)取引所を含む、世界中の99の取引所のAPI接続に対応(いまだ開発中であり、さらに対応取引所が増える可能性あり)。
・マーケットデータの蓄積・分析、可視化、インジケータの開発、アルゴリズムトレード、戦略バックテスト、botプログラミング等を補助。
・コーダー、デベロッパー、テクニカルスキルに長けたトレーダー、データサイエンティスト、金融アナリストがトレードアルゴリズムを構築することをサポート。
・Public & Private APIへのアクセスに向けた完全な実装を提供。
・「all-in-one」を目指しており、Node 7.6+, Python 2 and 3, PHP 5.3+, web browsersとの統合を容易化。
==================================================

● 本noteの内容
本noteではプログラミング言語としてPython3の利用を前提とし、CCXTをBitMEXでの自動売買botトレードに活かすためのTipsをまとめています。最後まで読めばbotトレードに必要な基本的なAPIの使い方を習得することができます。また、中級・上級のレベルに向け、各種API&技術ドキュメントを読み解くスピードが上がることは間違いないでしょう。
・CCXTの導入
・BitMEXの本番環境とTestnet・APIキーの設定
・Ticker情報の取得
・残高の取得
・(アクティブな)注文の取得
・保有ポジションの取得
・発注(ロング・ショート)
・注文のキャンセル
・最後に
・おまけ

● CCXTの導入
pipでインストールするのが簡単です。Pythonがインストールされている環境(機械学習やデータ分析を含め、多目的にPythonを使う予定のある方にはAnaconda等の統合パッケージがオススメです)で、
pip install ccxt
もしくは
pip3 install ccxt
と入力することで導入ができます(環境によっては先頭にsudoを付ける必要があるかもしれません)。

● BitMEXの本番環境とTestnet・APIキーの設定
BitMEXには本番(ライブトレード)環境( https://www.bitmex.com/register/UODNb6 )とテスト&デモ環境(Testnet)( https://testnet.bitmex.com/login )が存在します。APIの仕様は双方で同一であるため、まずはTestnetに登録し、APIの使い方・挙動を学ぶのが得策です。APIキーは、ログイン後画面上段「API」から「APIキーの管理」に遷移し、発行します。「キーのアクセス許可」は「注文」だけを選べば十分です。まずはAPIキーをPythonスクリプト上で設定しましょう。
##################################################
import ccxt
bitmex = ccxt.bitmex({
'apiKey': 'API_KEY', #ご自身のものに変更ください
'secret': 'API_SECRET', #ご自身のものに変更ください
})
bitmex.urls['api'] = bitmex.urls['test']
##################################################
最終行はTestnetに接続するために必要な行です。
本番環境向けに利用する際は削除するか、コメントアウトしましょう。

● Ticker情報の取得
Ticker(基礎的な価格データ)情報の取得です。

この続きをみるには

この続き: 11,157文字

Python3とCCXTライブラリを用いたBitMEX自動売買bot作成Tips

AKAGAMIV2 (セル) 🌏

500円

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
note.user.nickname || note.user.urlname

最後まで読んでいただき、どうもありがとうございます。頂いたサポートは、良質な情報を発信している方のnote購入・サポートに充てさせていただきます。

スキありがとうございます。今後ともよろしくお願いいたします。
228
TOTEMO YOI is above all style. / AKAGAMIV2(アカガミブツ)とは、東京新宿の会員制ホテルと20〜30代向けの電子的なファッションのブランドです。 https://twitter.com/akagamiv2

こちらでもピックアップされています

仮想通貨
仮想通貨
  • 192本
コメント (10)
● BitMEXの本番環境とTestnet・APIキーの設定で実行するとinvalid syntaxエラーがでていまします。Ticker情報の取得はできるのですが、残高表示ができません。何が原因でしょうか。
bitmex = ccxt.bitmex({
'apiKey': 'ここにapi',
'secret': 'ここにsecret',
})
bitmex.urls['api'] = bitmex.urls['test']
こちらでいけました
とても重宝しました、ありがとうございました!
こちらのページは購入することができましたが、ドテン君のページを購入することができません。現在販売をしていないのでしょうか?
コメントを投稿するには、 ログイン または 会員登録 をする必要があります。