移動平均線
移動平均線はシンプルで基本的なインジケーターです。
それを使ったトレードとしてゴールデンクロスとデッドクロスを使う戦略があります。
…というFXや株の解説記事がたくさんありますが、果たしてその通りにやって勝てるのでしょうか?一時的に勝てたとしても長期では結局負けるのではないのか?
という疑問が湧いてきます。
このシンプルな戦略でトレードをした場合どうなるかを簡単な自動売買プログラム(EA)でテストしてみると、ある条件下では確かに5年間の右肩上がりの利益になりました。
ゴールデンクロスとデッドクロス
最初に手法の定義について、
移動平均線の期間が長短の2本を用意して、長い期間の移動平均線を短い期間の移動平均線が越えて上昇したものをゴールデンクロスといいます。
上昇トレンドが発生したと判断して買いトレードを仕掛けます。
一方でデッドクロスは短期移動平均線が長期移動平均線を下抜けしたところで、下落トレンドが発生として売りトレードを仕掛けます。
このゴールデンクロスとデッドクロスは移動平均線だけでなく他のインジケーター(MACDなど)でもよく使う戦略です
バックテスト
2本の長短の移動平均線ですが、その期間は状況によって変わります。
先程のEAの条件は
- EURUSDの1時間足で期間が20と60の移動平均を使用し5分足で条件を判断
- 損切StopLossが100pips、利確TakeProfitが200pips
- エントリーは同方向 0.1Lot x 2 までで15分間隔以上
コードとしては、ざっくりこのような感じで
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
double ma1[2]; double ma2[2]; int maTimeFrame = 60; int ma1period = 20; int ma2period = 60; ... // 短期移動平均 ma1[0] = iMA(NULL, maTimeFrame, ma1period, 0, MODE_EMA, PRICE_CLOSE, 1); ma1[1] = iMA(NULL, maTimeFrame, ma1period, 0, MODE_EMA, PRICE_CLOSE, 2); // 長期移動平均 ma2[0] = iMA(NULL, maTimeFrame, ma2period, 0, MODE_EMA, PRICE_CLOSE, 1); ma2[1] = iMA(NULL, maTimeFrame, ma2period, 0, MODE_EMA, PRICE_CLOSE, 2); ... // 2つ前の移動平均線と1つ前の移動平均が交差するのを条件として買いと売りを設定 // Buy条件 if(ma1[1] < ma2[1] && ma1[0] > ma2[0]) return true; // Sell条件 if(ma1[1] > ma2[1] && ma1[0] < ma2[0]) return true; |
結果は1万ドル、約105万円(1$=\105)の証拠金で 2,353ドル、つまり約25万円の利益です
ドローダウンが6.63%なのでロットを大きくして50万円くらいはできそうです。そうなると年間1割程度の利率になります。
問題点はエントリーが月に数回しかないのと、少なくとも1時間足の移動平均線なので、夜中もチャートを見ていないとできない手法になり裁量では難しいところです。
また、勝率が4割なので精神的には我慢を強いられます。
この条件で利益になる通貨ペアはGBPJPYなどボラティリティが高い通貨ペアに限られて全てに通用はしません。
検証
例えば利益になったケースを見てみると、
利確まで200pipsだったので下落トレンドから戻して建値までき価格が戻っています。
デッドクロスの後にゴールデンクロスが出現しているので、早めに決済するほうが良かったかもしれません。
逆のクロスが発生したら終了、あるいはトレーリングストップを入れるなど
ということで、決済ルールをもう少し考えたほうがいいようです。
現在の決済ルールは利確か損切だけなのでIF-Done注文、OCO注文という単純なものです。
次は損失となったケースで、
デッドクロスで売りでエントリーしたのがすぐに上昇トレンドになって損切
移動平均は狭く重なっており、むしろこの後ゴールデンクロスが発生したのかもしれません。
RCIというオシレータで見てみると、この時点で買いのシグナルになっているので、売りは全く的を得ていなかったわけです。
裁量であれば、早めの損切をしたか、あるいはエントリーを考え直すこともできたかもしれません。
まとめ
移動平均線を利用したゴールデンクロス・デッドクロスの戦略はそれなりに使えますが
安定した利益をもとめるなら他のインジケータを使うとより効果的のようです。
MT4のバックテストはEAの評価だけでなく、トレード手法の研究にも使えそう。
おまけ
プログラムができなくても、この程度のことであればプログラム無でも作成できるツールがあります
[PR]
『EAつくーる』