移動平均線のクロスで売買したときの勝率
サイン検証第2段(実質第1段?)としてはメジャーなゴールデンクロス・デッドクロスで売買したときの勝率を調べてみます。
一応確認、短期移動平均線が長期移動平均線を上ぬいた場合をゴールデンクロスと呼び、買いサインと考え、下抜いた場合をデッドクロスと呼び売りサインと考えるのが一般的です。
移動平均の設定
利用するのはもちろん単純移動平均線(SMA)です。EMAやWMAも興味はありますが、まずは基本から確認してみましょう。
問題は移動平均線の期間をどうするかですが、1時間足+短期移動平均線クロスでの売買というのはちょっとスパンが短すぎる気がするので、中期移動平均線として(多分)一般的な75、及び長期移動平均線として一般的な200を利用してこの2つのクロスで確認してみたいと思います。
エントリー条件
1時間足で75SMAが200SMAを上抜いて、ローソク足を確定させたら次の始まり値で買いエントリー、下抜いたら売りエントリー。
ストップロスは1時間足値幅の1~8倍、 テイクプロフィットはストップロスを元にリスクリワード比0.2~10を定めて設定します。
2012/01/01 ~ 2021/12/31 1時間足でエントリー ( 決済判断の価格データは1分足を使用)
結果
えーっと、そもそもトレード回数が少ないため統計的にどうこういうのは微妙かもしれないと思っといてください。まぁ傾向だけみてみましょうか。
EURUSD
トレード回数 345回
高RRR(損小利大トレード)
低RRR(損大利小トレード)
高RRRではほとんど優位性は認められなそうですね。SLを1時間足値幅×1に設定したときにもしかしたら優位かもしれないという程度でしょうか。
低RRRだと値幅×1~3でRRR1程度のときに少し優位に見えなくもないです。低RRRのほうが優位っぽく見えるのは意外でした。
GBPJPY
トレード回数 331回
高RRR(損小利大トレード)
低RRR(損大利小トレード)
高RRRで見ると全体的に僅かに優位っぽく見えますが、そもそもGBPJPYは高RRRならランダムでもわずかに優位なので、特別移動平均線のクロスが優位と考えるにはちょっと厳しそうです。
それより気になるのは低RRRでのSLを広めにとったRRR1程度の結果。1時間値幅6倍のSLの結果なんて明らかに優位に見えます。ここでも低RRRのほうが優勢という結果でした。
AUDNZD
トレード回数 332回
高RRR(損小利大トレード)
低RRR(損大利小トレード)
AUDNZDでも高RRRはダメですね。ランダムエントリーと同じような結果です。
低RRRではストップロスを1時間値幅の3倍4倍に設定したときに優位に見えます。ここでも低RRR優位。
考察とまとめ
移動平均線クロスで売買すると考えると、トレンドに乗ることを意識するため当然損小利大を狙うほうがいいのだろうと思っていましたが、少なくとも過去10年のデータを見る限り、機械的にSLTPを決める場合はむしろ低RRRの損大利小取引のほうが有利なようです。
ただ低RRRだとしてもストップロスを値幅の何倍程度に置くのが良いかというのは結局通貨ペアによって異なるため、杓子定規に決めてシステムトレードさせるのは難しそうです。
移動平均線のクロスを見てエントリーして、リスク少なく損小利大でガッツリ利益を出すといった手法は相場状況に応じて自分で決済判断できる裁量トレード向きなのかもしれませんね。
おまけ
10年間でこんな資産曲線を描くcBot、結構魅力的じゃないですか?
取引回数こそ少ないものの、10年間右肩上がり、大きな含み損もなし、ポジション保有数は最大3つ程度です。
私だったらちょっと運用してみてもいいかな?と考えてしまうくらいなのですが、コレ、お察しの通りMAクロスで売買して固定SLTPで決済するだけのcBotです。
上のGBPJPYのこの部分をcBot化したものです。
75SMAと200SMAクロスで0.01lot固定エントリー、SLTPともに1時間足値幅の6倍に設定するとこうなります。(このバックテストではスプレッド+手数料も加味してあります。)
もちろんこの結果はある意味カーブフィッティングの賜物なので、実際に運用するのはどうかと思いますが、MAクロス売買という単純なロジックでも最適化すればこんなcBotが作れるというのはなかなか驚きではないでしょうか。
トレード回数の少なさがカーブフィッティングのしやすさにかなり貢献してる気がしますけどね。こう考えると何日かに1回しかエントリーしないEAで販売者側がアピールするバックテストなんてたいしてあてにならなそうですね。