コンテンツにスキップ

【EA化#07】AllAverages クロスEA — Hull MAとJSmoothの夢の共演

All Averages EA

この記事の3行まとめ

  • 21種類の移動平均線が使えるインジケータ「AllAverages」をフル活用し、「短期線」と「長期線」に全く違う演算ロジックを指定できる変態クロスEAです。
  • 「短期線はラグの少ないHull MA」「長期線はダマシを極限まで排除したJSmooth」といった異種格闘技クロスが実現できます。
  • 完全な内蔵計算を採用しているため、バックテストの速度も爆速。自分だけの「最強のMACD」を探求したい方に最適です。

"ただのクロスEA"ではありません

移動平均線のゴールデンクロス・デッドクロスを狙ったEAは、世の中に星の数ほど存在します。 しかし、そのほとんどが「SMA(単純移動平均)の短期と長期」や「EMA(指数平滑移動平均)の短期と長期」といった、同じアルゴリズムで期間だけを変えたものです。

今回作成した 07_EA_AllAverages_Cross.mq5 は、以前移植した21種の移動平均インジケータ(AllAverages v2.5)の心臓部を丸ごとEAに内蔵しています。

これにより、EAのプロパティ画面から「Fast MA(短期)」と「Slow MA(長期)」に対して、0番〜20番までの21種類のアルゴリズムを自由に、ごちゃまぜに組み合わせて指定することが可能になりました。

ロマン溢れる組み合わせ例

  • 超絶滑らか&低ラグ型(今回のバックテスト設定)

    • Fast MA: No.8 HMA (Hull Moving Average) --- 価格にピッタリと追従し、ラグがほぼ無い。
    • Slow MA: No.11 T3 (Tillson T3) --- ノイズを極限まで滑らかに平滑化し、ダマシを排除する。
    • 結果: 上記のアイキャッチ画像(バックテスト結果)のように、T3が大きなトレンドを捉えている中で、HMAがいち早く押し目・戻り目からの反転クロスを感知して見事なトレンドフォローを実現します。
  • 鉄壁のトレンドフォロー型

    • Fast MA: No.8 HMA
    • Slow MA: No.20 JSmooth (Jurik Smoothing近似)
    • 狙い: JSmoothはT3以上に相場のノイズ(ヒゲ)を無視するため、長期トレンドの要塞として機能します。
  • ダマシ絶対許さないマン

    • Fast MA: No.10 DEMA (Double Exponential Moving Average)
    • Slow MA: No.11 T3
    • 狙い: どちらも非常に滑らかな曲線を描くため、一度クロスが発生するとトレンドが深く継続しやすい。細かい乱高下を完全に無視。

ロジックの全貌

本EAは、指定された2つのMAの確定足(1本前と2本前)によるクロスでエントリーします。

  1. 【買いエントリー】
  2. Fast MA が Slow MA を下から上にクロス(ゴールデンクロス)
  3. (オプション)ADXフィルターが指定値以上の場合のみ(トレンド発生中のみ)
  4. 【売りエントリー】
  5. Fast MA が Slow MA を上から下にクロス(デッドクロス)
  6. (オプション)ADXフィルターが指定値以上の場合のみ

決済は、オプションで設定した固定SL/TP、Trailing Stopのほか、「逆方向のクロスが発生した際のドテン決済(Reverse at Cross)」がデフォルトで有効になっています。

レンジ相場の往復ビンタ対策(ADXフィルター)

MAクロス手法の唯一にして最大の弱点が、「レンジ相場で価格が横這いになると、短期線と長期線が絡み合って負けトレード(往復ビンタ)を連発する」ことです。

これを防ぐため、本EAには Use ADX Filter(ADXトレンド強度のフィルター)を搭載しています。 これを true にし、Threshold(閾値)を20〜25付近に設定することで、「トレンドが出ていない時のクロスを無視する」ことができ、不要な負けを大幅に減らすことが可能です。

EAのダウンロード

以下からEAのソースコード(MQ5)をダウンロードし、MT5の Experts フォルダに配置してコンパイルしてください。

07_EA_AllAverages_Cross.mq5 をダウンロード

[!IMPORTANT] このEAが内部で呼び出すために、元のインジケータである 10_AllAverages_v2_5.ex5 または .mq5 が、MT5の Indicators フォルダに事前にコンパイルされて置かれている必要があります。まだの方はこちらの記事からダウンロードしてください:【移植#10】AllAverages v2.5

パラメータ設定

  • Trade Settings
    • Lots: 取引ロット数
    • Stop Loss / Take Profit: ベースの決済ポイント(0で無効化)
    • Trailing Stop: トレール幅(ポイント。0で無効化)
    • Reverse at Cross: trueの場合、反対方向のクロスが発生した瞬間に現在のポジションを決済(ドテン)します。
  • Fast MA Settings / Slow MA Settings
    • Fast Method / Slow Method: 21種類の中から好きなMAアルゴリズムを選択します。
    • Fast Period / Slow Period: 計算期間。
  • Universal MA Settings
    • Applied Price: 適用価格。
    • Volume Factor: T3 MAを選択した時のパラメータ。
    • Lambda: REMAを選択した時のパラメータ。
    • Phase: JSmoothを選択した時のパラメータ(-100〜+100)。
  • ADX Trend Filter
    • Use ADX Filter: trueでADXフィルターを有効化。レンジ相場での往復ビンタを回避します。
    • ADX Period / Threshold: ADXの期間と、トレンド発生とみなす閾値(例: 25.0)。

さいごに

「移動平均線のクロス」というFXにおける最も古く、最も愛されている古典的手法。 しかし、その2本の線に「現代の進化した平滑化アルゴリズム」を宿すことで、全く新しい、強力なエッジ(優位性)が見えてくるはずです。

ぜひMT5のストラテジーテスターで、21×21=441通りの中から「聖杯」となる最強の組み合わせを探し出してみてください!