スキャルにミスったらデイトレに切り替えるEA・・・の検証版です
私が裁量トレードでよくやる手法として、「二枚腰戦法」と名付けている手法があります。手法というよりは、まあ要は未練がましいだけですが、デイトレ方向とスキャル方向が合っている場合にエントリーして、スキャルで逆行したらデイトレに切り替える、というなんともくだらないロジックです。
ただまあ、精神的にも安定しやすいですし、基本的な考え方自体は悪くないのかなということで、検証も含めてEAを作ってみることにしました。ということで、今回はその副産物として出来たEAを提供してみようかなと言うことでアップロードしております。
EAの説明
【使用する足、通貨ペア】
・ドル円、30分足
・その他の通貨ペアは試してません。是非バックテストとかしてみてください。
【設定パラメータ】
・Lots = 0.1
→ Lot数(最小0.01)です。
・MagicNo = 25400
→ マジックナンバーを指定します。
・MA = 21
→ 使用するMA(EMA)の移動平均数を指定します。
・MacroFoot = 240(=PERIOD_H4)
→ デイトレモードで使用する足を指定します。
・MicroFoot = 30(=PERIOD_M30)
→ スキャルモードで使用する足を指定します。
・Macro_sl_pips = 100
→ デイトレモードのストップロス値を指定します。
・Macro_tp_pips = 150
→ デイトレモードの利確値を指定します。
・Micro_sl_pips = 5
→ これだけ逆行すると、デイトレモードに切り替わります。
・Micro_tp_pips = 30
→ スキャルモードの利確値を指定します。
・QuoteStopPips = 50
→ これだけの利幅(Pips)を確保すると、建値ストップをいれます。
・Slippage = 1
→ スリッページをPips単位で指定します。
【エントリ条件】
・スキャルモード・デイトレモードともに特定のエントリ条件を満たした場合に、スキャルモードでエントリ
【イクジット条件】
・共通条件:デイトレモードにおける特定のイクジット条件を満たした場合
・スキャルモードの場合:Micro_tp_pipsの条件を満たした場合(利確)
・デイトレモードの場合:Macro_tp_pips(利確)またはMacro_sl_pips(ストップロス)の条件を満たした場合、または、QuoteStopPipsに到達後、建値+1Pipの位置まで逆行した場合
【スキャルモード→デイトレモードの切替条件】
・Micro_sl_pips分逆行した場合
(デイトレモードからスキャルモードに切り替わることはない)
バックテスト例
デフォルトの条件にて、ドル円30時間足で2012年1月~2017年3月20日(記事作成日)までの5年強の間でバックテストを行ってみた結果が以下です(スプレッド1.0Pips)。きれいな右肩上がりではありませんが、まあ比較的マシな損益グラフにはなっているのかなという感じです。ちなみに、過去5年で最適化しているので、これからも通用するかというとなんとも言えない感じではありますね。
ちなみに、パラメータをいじって「二枚腰でない」(Micro_sl_pips = 0にすることでデイトレモードのみ稼働するようにする)動作モードで検証してみた結果が以下のとおりです。うーむ・・こっちのほうがいい成績になっているぞ・・・?
・・・ということで、「二枚腰戦略は微妙」という些か残念な結果は出たものの、まあ、心の安定には良いので、裁量では引き続き使っていくことにします。
ひょっとすると、順張りと逆張りを組み合わせるとかしたらもうちょっと効果的になるのかもしれません。少し、そういった角度からも検討を進めてみようかなと考えております。
EAは以下よりダウンロード出来ますので、是非、パラメータをいじるなりして遊んでみて下さい。上でも書いてますが、「Micro_sl_pips = 0」にすることでスキャルモードを封印することが出来ますので、お好みの設定をご利用ください。
EMAを利用した超単純ロジックによるエントリー・イクジットを行いますが、スキャルモードに失敗したらデイトレモードを切り替えることで、粘り強いトレードを目指すEAです。