BitMEXロゴ

ビットコイン 自動売買 BOT 作成〈講座〉 BitMEX 最強ボットの作り方REST版


Discordトレード交流会
https://discord.gg/NhShPBaxPb

更新:2020/05/28

-自動売買ロットをコントロールソースを追加
-Discord,LINE定期報告機能を追加
# ご自身のLINEトークン
LINETOKEN =''     
# LINE通知の周期を指定する60=1時間
LINE_CYCLE = 60

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

ものまねが上手くなりたいと思っているあなた。

僕はものまねが好きだ! ものまねをやっていると 知識を簡単に勉強できる。

今回は超初心者がbotトレードで自動売買するための最短ルートを作成します。

これからBot系開発の知識を一緒に勉強して行きましょう。

残りの人生の時間は短いし。 後悔しないようにBot自動売買手法を勉強しましょう。

今回、BitMEX取引所を戦場に、pythonのccxtというライブラリを利用したbotを動かしています。

公式サイトの確認

私の紹介リンクから登録すると下記のボーナスが適用されます。

https://www.bitmex.com/register/DBUO2E

有効なアフィリエイトリンクを使って登録したユーザーは 6 か月間、10% の料金割引を受けます。

以上取引所の紹介完了。

やりたいこと

今回のロジックは下記となります、

while true:
  APIで価格を取得する
  シグナルを計算する
  if ポジションを持っていない:
    if 買いシグナルが出た:
      買い注文を出す
 else:
    if 利確シグナルが出た:
      利確注文を出す
    elif 損切シグナルが出た:
      損切注文を出す
  sleep(30//30秒待機

(1)価格を取得してシグナルを計算する
(2)まだポジションを取ってなければ、買いシグナルを確認し、シグナルが出ていれば買い注文を出す。出ていなければ何もしない。
(3)もし既にポジションを取っていれば、利確シグナルを確認する。シグナルが出ていれば利確注文を出す。出ていなければ、損切シグナルを確認する。シグナルが出ていれば損切注文を出す。両方出ていなければ何もしない。
(4)30秒間待機して、また(1)に戻る

事前に、必要なライブラリを導入

sudo  install requests
sudo  install ccxt

まず、(1)価格を取得してシグナルを計算する

#最終価格を取得する
last = bitmex.fetch_ticker('BTC/USD')['last']

シグナルのロジックは下記となります。

チャネルブレイクアウト戦略導入。

トレンドフォローの戦略として広く知られているものです。1960年代にドンチャンが考案し、その後「タートルズ」という投資集団によって有名になりました。古典的な手法ではありますが、その有効性ゆえ、多くのヘッジファンドが使うトレード手法のベースとなっている、という話もあります。

画像1

価格が設定した期間の最高値を上回った場合「買い・ロング」、設定した期間の最安値を下回ったら「売り・ショート」という非常にシンプルな手法です。よく、水平サポートラインや水平レジスタンスラインを引いてそれを抜けたらエントリをする、という裁量の手法があります。チャネルブレイクアウト戦略は、それをシステム的に実現するものとも言えるでしょう。ちなみに、最高値と最安値のバンドをHLバンドと呼んだりもします。

チャネルブレイクアウトは一定期間以上の中長期トレードに有効性があるとされています。設定期間には20や40を使うことが多いようです。

完成したイメージは下記の通りです。

画像2

BitmexのAPI申請画面は下記となります。事前に準備しておきましょう。

画像3

ではソースで説明しましょ。

まず-設定項目開始

#--------設定項目開始--------
#指定すると通知します
DISCORDURL = ''  
# エントリー用
# 1度に売買する数量(ドル)
LOT   = 100          
# 単価監視用
# ループの待ち時間
SLEEP = 30           
# 売買対象の取引所
EXCHANGE     = 'BITMEX' 
 #レバレッジ設定 LEVERAGE = 3

bitmex = ccxt.bitmex({
   'apiKey': 'API-KEY',     # ご自身のAPIキー
   'secret': 'API-SECRET',  # ご自身のAPIシークレット
})
#レバレッジ設定をBitMEXに反映する
bitmex.private_post_position_leverage({"symbol":"XBTUSD", "leverage": str(LEVERAGE)})
#--------設定項目完了--------

ここから先は

9,253字

¥ 4,980

この記事が気に入ったらサポートをしてみませんか?