無題

【bitFlyer BTC-FX 用 自動取引BOT】 MACDダイバージェンス + ADX±DI 戦略

更新情報

2018/05/02
- 同一時間足内で、2回以上新規のエントリーをしないように変更
- 「利確」「損切」の表記を「ポジション・クローズ」に統一
- SFD発生中は新規のエントリーを行うかのオプションを追加
2018/05/17
- ログ出力のバグを修正

MACDダイバージェンス + ADX±DI 戦略とは

前回の VixFix(Inverse) + RCI3Lines 戦略 に続き、今回は @doooooo_mi 氏がTwitter 及び Note にて言及されている戦略に着想を得て、BOTを作成しました。

基本的には上記の @doooooo_mi 氏のNoteをお読みいただければと思いますが、簡単に以下に参考サイトを記載しておきます。

今回の名前のもとである、MACDADX±DI は以下のインジケーターに基づいています。

また、ダイバージェンスおよびヒドゥンダイバージェンスについては以下のサイトにてわかりやすく、解説されています。

これらをもとに、可能な限り@doooooo_mi 氏のロジックを再現しつつ、なるべくシンプルかつ一貫性のあるロジックを目指しました。

本BOTの基本的なロジックとしては、以下の通りとしました。

ポジション・エントリー
優先順位: ①>②
①ADXによる裏付けがある[1]ヒドゥンダイバージェンス(パターンE,F,G,H)がおきたら、それに合わせてエントリー
②下降(上昇)トレンド[2]でない状態で、上昇(下降)を示すダイバージェンスが(パターンA,B(C,D))おきたら、LONG(SHORT)をエントリー

[1] ADXによる裏付けがある:
ADX>20 の状態で、ヒドゥンダイバージェンスのサインが現れていることを指します。


[2] 下降(上昇)トレンド:
ADX>20かつ、-DI>+DI(+DI>-DI) の状態を指します。

※ ダイバージェンス・ヒドゥンダイバージェンスの検出には、@CKadumin 氏による MACDダイバージェンスインジケータ での検出ロジックを利用させていただきました。
この場を借りて御礼申し上げます。

利確
トレンドが発生中:ADX値が2.0以上の下落を観測したら利確
トレンドなし:RCI短期線が、80をクロスオーバーでLONG(-80をクロスアンダーでSHORT)を利確

損切
戦略がうまく当てはまらず、損となってしまった場合は、一定以上の値幅がついてしまった時点で、損切を行います。

環境構築

動作確認済環境
私が当プログラムの動作を確認したのは以下の通りです。

- AWS Cloud9(Linux), Python 3.6.2
- Windows 10, Python 3.6.5
- MacOS, Python 3.6.5

基本的にはこの3つのいずれかの環境を使用することをおすすめします。

必要なライブラリ
以下のライブラリが動作に必要となりますので、pip等でインストールをしてください。
- pybitflyer
- numpy
- pandas
- requests
- pytz
- talib

ソースコード

以下にソースコードを示します。

ここから先は

14,083字

¥ 10,000

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