BitMex 版 自動売買(Pivot逆張り)第一回
こんにちわ、ブラックかふぇです。
ビールを飲んでご機嫌になって記事を書いています。
Coincheckが使えなくなり、Bitflyerに引っ越ししたら、
SFD導入とあまりの遅いサーバーに嫌気がして、
ついにBitmexにお引っ越し。
Biftlyerで使っていたPivot逆張り自動売買ツールをBitmexに移植して見た。
その実装過程と最終的にソースコードの公開までも含めて書いていけたらと思っています。
Pivot逆張りとは?
まずは、Pivotは、トレーダーの方がよく使っている?と言われている手法の一つです。
決まった時間足の、
高値、安値、終値を使って計算して、
レジスタンス線(3本)、サポート線(3本)、中間線(1本)を導きます。
Pivot 逆張りは、
レジスタンス線まで
価格が上昇したら、売り(Short) =>反落すると推測
サポート線まで
価格が下降したら、買い(Long) => 反発すると推測
して、エントリーする手法です。
その実力ですが、
TradingViewの、バックテスト(Bitmex)で、内臓のスクリプトをそのまま使ってもなかなかの結果です。私の逆張りとロジックは少し違いますが。。
Botの作成は、
Python3,
CCXTライブラリ
を使用しています。
動作環境は、
Mac OS,
iPhone,
Windows10、
RaspberryPi
です。iPhoneは移動中に使えるので良いですね。動かし方は追々説明します。
BitMEX+CCXTの使い方は、
師匠のAKAGAMIさん(勝手に師匠とさせていただいております)の記事を参考にしていただけれと思います。めちゃくちゃ良いです。
Pivot 計算式
計算式は以下の通りです。
PivotPoint = (高値 + 安値 + 終値) / 3
一つ前の時間足、高値、安値、終値 を足して3で割ったものがPivotPointになります。まあ平均値ですよね。
まずは最初のレジスタンス線とサポート線は…
R1(レジスタンス線1) = (2 × PivotPoint)− 安値
S1(サポート線1) = (2 × PivotPoint)− 高値
次に2つめのレベルのレジスタンス線とサポート線は
R1(レジスタンス線2) = PivotPoint + (高値 − 安値)
S2(サポート線2) = PivotPoint − (高値 − 安値)
3つめのレベルのレジスタンス線とサポート線は以下の通りです。
R3(レジスタンス線3) = 高値 + 2(PivotPoint − 安値)
S3(サポート線3) = 安値 − 2(高値 − PivotPoint)
コードの実装はこんな感じ
Pivot = round((HIGH+LOW+CLOSE)/3,1)
R3 = round(HIGH + 2 * (Pivot - LOW))
R2 = round(Pivot + (HIGH - LOW))
R1 = round((2 * Pivot) - LOW)
S1 = round((2 * Pivot) - HIGH)
S2 = round(Pivot - (HIGH - LOW))
S3 = round(LOW - 2 * (HIGH - Pivot))
次回は、この値の前提となる、時間足のデータ取得とあたりの実装説明をします。日足でやります。
BTCアドレス 3BMEXWoSg5i9zegtEZ3QTEAUDeAV7rKXde