python シストレ プログラミング 仮想通貨

emaを使用したBitMEXシストレプログラム公開

更新日:

こんにちは、mabuiです。
今回はcryptwatchから取得した情報でemaを計算して、
BitMEXで自動売買する、簡単なロジックのプログラムを作成しました。
まずは今回ロジックに使用したemaを説明していきます。
ソースコードは本文下記に公開しています。

 

emaとは

ema 指数平滑移動平均線(= Exponential Moving Average)
sma(単純移動平均線、またはma(移動平均線))の場合、期間内の足の終値を平均したものを
繋いで平均線として表示しますが、emaは直近の価格に比重がかかるため、
よりトレンドの転換が早く見極められますが、騙しにも引っかかりやすくなります。

上の図はBitMEXのBTC/USD 4時間足チャートです。
ロウソク足の下にある赤い線がemaで、青い線がsma(ma)です。
emaがsmaと比較して、値動きに追従しているのがわかります。

 

なぜ移動平均線をトレードに使用するか?

移動平均線とは一定期間の取引でついた価格の平均を表す線です。
ということは現在値が移動平均線の上にある場合、
かつ市場参加者のごく少数が極端な量のポジションを持っていない場合は、
買いでポジションを取っているトレーナーの半数以上は含み益を持っている
ということになります。

それらのトレーナーの心理状況としては、利が乗っているのでもちろん強気です。
人によっては買い増しも検討しているでしょう。
逆に現在値が移動平均線を下回ると、半数以上のトレーナーは損が出始めるため
急激に弱気になります。

これを市場参加者の特徴に合わせて使用するとより有用になります。
例えば、数日前の大きなニュースで値が上がった銘柄には5日移動平均線が有効でしょう。
直近5日間の市場参加者が多いことが見込まれるからです。
この場合現在値が5日移動平均線を割り込むとほとんどの参加者が弱気になるため、
その直後に値ががくんと下がる可能性が高いです。

少し話題がずれましたが、下記でプログラムの動作説明をします。

 

動作

  1. 分足10分間でemaを計算して、
    その価格を現在値が超えた場合にエントリーを仕掛けます。

  2. エントリー後は設定した利確幅、
    または損切り幅に到達したらポジションをクローズします。

  3. エントリーの指値が刺さらなかった場合は、
    約1分後に注文をキャンセルします。

上記3つの動作を10秒間隔で延々とループします。
そのため、利確後も現在値がemaを超えていたら再度エントリーを仕掛けてしまうのが
現状イケてない点ですw
利益を継続的に上げるほどの完成度には至っていないので、参考程度に活用下さい。

 

ソースコード

githubのソースコードはこちら

 

▽おすすめの取引所一覧はこちら!

国内大手、注文の種類も豊富なbitFlyer

bitFlyer ビットコインを始めるなら安心・安全な取引所で

手数料激安の0.05%! 取扱通貨が超豊富な海外取引所 binance

binance

国内取引所で手数料が安いZaif

-python, シストレ, プログラミング, 仮想通貨
-, , , ,

Copyright© , 2024 All Rights Reserved Powered by STINGER.