わかりやすい自動売買入門書販売し始めました!

【史上最速】5分始める自動売買:BitMEX

こんにちは、きちえです!

先日のニュースであったようにZaifがハッキングを受けてしまい自動売買もままならないので今度はBitMEXに移行して、自動売買を行なっていきたいと思います。

BitMEXで自動売買やることのメリットは

  • 無駄なリスク
  • 鯖落ち
  • 口座開設の郵送待ちなし
を気にしなくていいことです。

すぐに始められるのでこれから始めようと思っている方には、かなりオススメです。

では一緒に見ていきましょう!

この記事を読むと...
  • 自動売買に必要な準備がわかる
  • 自動売買の前準備が終わる
  • 自動売買に欠かせない基本がわかる

まずPythonプログラミングの始め方がわからない方はこちらを参照

【難しいことは不要】5分でできるPythonの始め方講座

BitMEXとは?

BitMEX(ビットメックス)は、香港に拠点を置く仮想通貨取引所です。

海外の取引所であるのに日本語対応であり、レバレッジが100倍かけられることと、追証がないことが特徴的。

そして、ゼロカットを搭載していることから、 元の資産以上に減ることはない。つまり、大暴落して「借金1000万=人生終了」ということは絶対にありえないということです。

また、BTCのことをXBTと呼んでいることも非常に特徴です。

さらに他の取引所と違う最大の特徴が1分で口座開設ができること。
自動売買をしている人は登録必須な口座なので開設していない方はこちらからお早めに登録を!
BitMEXの口座開設はこちら

自動売買を始めるために必要なもの

まずはじめに必要なものといえば、もちろんのことBitMEX(ビットメックス)の口座です。

こちらは他の取引所と違い、1分で登録できるので、持っていない方は事前に登録しておきましょう。

次に必要なのが、CCXTと言う仮想通貨取引用ライブラリです。

こちらは自動売買をしていく上で、必要になってくる、たくさんのツールが入ったボックスのようなものです。

以下でインストール方法は説明しています。

最後にビットコインを送金するための口座です。

BitMEX(ビットメックス)は日本円入金ができないので他の取引所からBTCで送金する必要があります。

すでに口座を持っている方は、そちらから送金してもらう必要があります。

送金するときにどうしても500円くらいかかってしまうので、それがもったいないと思う方は、BITPoint(ビットポイント)を開設しておくとよいでしょう。

なぜかと言うと、BITPoint(ビットポイント)は入金手数料から送金手数料まで、ほとんどの手数料が無料だからです。

無駄な手数料は支払いたくない、まだ持っていない方は開設してみては!

BITPOINT(ビットポイント)仮想通貨取引所の自動売買、手数料や取引通貨を解説!

自動売買の前準備

まずは、ccxtライブラリのインストールです。

自分の環境でインストールが必要なので、以下をターミナルで実行してccxtライブラリを取得しましょう。

ターミナル
//ターミナルで実行
pip install ccxt

詳しく知りたい方へ、以下がcctxの元ページです。

参考 ccxt/ccxt: A JavaScript / Python / PHP cryptocurrency trading library with support for more than 100 bitcoin/altcoin exchangesgithub

自動売買必須なAPIキーを取得

APIとは「Application Programming Interface(アプリケーション・プログラミング・インターフェイス)」の略語で価格の取得や取引をプログラムで扱えるように取引所から提供されているソフトウェア共有機能です。

これを使うためにAPIキーというものが必要で、それがAPIキーやAPIシークレットと呼ばれるものです。

以下ではそれを取得していきます。

では、ここのページへアクセスしてAPIキーを取得しましょう。

以下のように設定してAPIキーを取得しましょう

 

項目 入力
名前 管理用なのでなんでもOK
CIDR なし
キーのアクセス許可 注文
出金 ※危ないのでチェックなし

そして「APIキーを作成」を押すとAPIが出てくるので、これを別の場所へ保存しておきましょう!下記のapiKey(=ID),apiSecret(=秘密)で登場します!

BITMexAPIキー

BITMexAPIキー

送金用の口座開設

上記でも軽く触れた、送金用の口座を開設します。

海外取引所であるBitMEXはBTC(BitMEXだとXBTと表示される)のみでしか入金できないので、送金用の口座を開設する必要があります。

オススメは何から何まで手数料が無料なBITPointです。今なら開設&入金で3000円もらえるキャンペーンもやっています。
BITPOINT(ビットポイント)仮想通貨取引所の自動売買、手数料や取引通貨を解説!

価格取得プログラムに挑戦

ここまでで実際に自動売買をすることができるので、動作を確認してみましょう。

以下では値段の取得と注文までを行います。

ではPythonのファイルを作成してみましょう!

ここでは「main.py」とします。

ログインから値段を取得するまでのコード

main.py

import ccxt

exchanges = {
"bitmex": {
    "apiKey": "先ほど取得したAPIキー",
    "apiSecret": "先ほど取得したAPIシークレットキー"
  },
}
#apiを使ってログイン
exchange = ccxt.bitmex()
exchange.apiKey = exchanges["bitmex"]["apiKey"]
exchange.secret = exchanges["bitmex"]["apiSecret"]

#取引所のオーダーブック一覧を取得
order_book = exchange.fetch_order_book('BTC/USD')
print("BIDS:", order_book['asks'])
print("ASKS:", order_book['bids'])

#買いが入っている値段と売りが入っている値段のみを抽出
ask = order_book["asks"][0][0] #買い(赤)
bid = order_book["bids"][0][0] #売り(緑)
print("ask:{},bid:{}".format(ask,bid))

オーダーブックとは以下の画像のこと

ログインから値段を取得するまでの出力結果

ターミナル

"""
#6607USDで2456774BTC(XBT)買い注文があると言う意味
#出力
ASKS: [[6607, 2456774], 
[6607.5, 204533], 
[6608, 406991], 
.
.
.
#出力
BIDS: [[6606.5, 2583140], 
[6606, 567445], [6605.5, 69012], 
[6605, 289206], [6604.5, 521243], 
.
.
.
ask:6607,bid:6606.5
"""

これで仮想通貨を売り買いするための注文価格を取得できたので、残りは注文するだけです。

価格注文とキャンセルプログラムに挑戦

次は注文とキャンセルをしてみましょう!

注文とキャンセルのコード

main.py

#発注(1BTCを$8で買うというありえない注文)
#bitmex.create_order('注文する通貨',指値(limit)か成行(market)か,量,値段)
order = bitmex.create_order('BTC/USD', type='limit', side='buy', amount=1, price=8)
print("注文が完了しました:{}".format(order))

# キャンセルに必要なorderIDだけを取り出す

print(order['info']['orderID'])
###注文のキャンセル
cancel = bitmex.cancel_order(order['info']['orderID'])
print("注文をキャンセルしました:{}".format(cancel))

出力

ターミナル

"""
注文が完了しました:{'info': {'orderID': '40811cb0-6909-5d05-50ca-7de6951b4bdc',
.
.
注文をキャンセルしました:{'info': {'orderID': '40811cb0-6909-5d05-50ca-7de6951b4bdc', '
.
.

 

これで一通り、値段の取得、注文、注文キャンセルが完了ですので、自動売買の基礎中の基礎は完了です。

これらのサンプルコードはこちら

github/bitmex-tutorial

[参考サイト]

Python 3 / BitMEX の BOT を作ろう CCXT + BOT サンプルコード 〈基礎編〉

まとめ

今回は取引所の登録、注文、キャンセル方法をできました。

次回はテクニカル指標を使って実際に自動売買をしてみましょう!

ではでは。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です