「FXはEMAだけで勝てる?」←AI検証で判明した移動平均線の限界
【結論】EM1本では勝てない。
AIによる過去5年間の検証では、EMA75単体でPF(プロフィットファクター)は0.984。
つまり、優位性なし。
だが同時に「EMAをどう組み合わせるかで勝てる」ことも判明した。
EMAとは何か
EMA(指数平滑移動平均)は、最新の価格をより重視して平均を取る移動平均線。
SMA(単純移動平均)に比べて反応が速く、トレンド転換を早めに捉えやすいのが特徴だ。
短期〜中期のEMAは、価格の呼吸を可視化する。 長期EMAは、相場の方向性を示す「羅針盤」のような役割を果たす。
一般的な組み合わせは次の通り
種類 | 期間 | 特徴 |
---|---|---|
短期EMA | 25 | エントリーの呼吸を測る(初動) |
中期EMA | 75 | 波の流れを判断する(持続) |
長期EMA | 200 | 相場全体の方向を決める(基準) |
理論上は、これらを使い分ければ「順張りトレードの軸」になる。
参考:「200MA(SMA)だけで勝てる?」
AIによる検証概要
使用AI:ChatGPT Pro(統計モジュール搭載)
データ:Axioryヒストリカルデータ(USDJPY/5分足)
まずは、EMA75を使って検証。
EMAだけで勝てるかどうかを検証してください。
条件
・環境 : MT4
・通貨ペア:USDJPY
・期間:2021年1月〜2025年8月
・時間足:5分足
- datetimeをユニーク化(重複削除)
- 欠損を補うために「全1分足の時系列インデックス」を生成し、足りない部分は直前値で補完
- そこから改めて5分足にリサンプリング
・設定値:EMA75
・売買ルール:EMA75を終値で上抜けたらロング・EMA75を終値で下抜けたらショート
・決済:反対シグナルで決済
・資金管理:固定ロット
出力内容:
①総トレード数
②勝率
③平均リスクリワード比
④トータル損益
⑤プロフィットファクター(PF)
結果
-
① 総トレード数
24,496
② 勝率 17.08%
③ 平均リスクリワード比(実現RR) 4.754
④ トータル損益 -1,450.8 pips
⑤ プロフィットファクター(PF) 0.984
勝率は低い一方で、勝ちトレードの平均幅が負けより大きく、実現RRは高め。
ただしトータル損益とPFがわずかにマイナスで、スプレッド・手数料を考慮すると実運用は不利。
EMA1本で勝てない理由
方向とタイミングを同時に判断している
EMAは「流れ」を示す線であって、 「仕掛け」を示す線ではない。
方向とタイミングを1本の線で見ようとすると、どうしてもシグナルが遅れたり早まったりする。
ボラティリティ(値動きの強さ)を無視している
トレンドの質を判別できないため、レンジとトレンドの区別がつかない。
AIはこの状態を「盲目の順張り」と表現した。
再検証:EMA25 × EMA75
短期と中期のクロスでトレンド発生を狙う黄金ペアをAIで再検証。
ロジックの流れ
EMA25(短期平均)とEMA75(長期平均)を計算
短期EMA(25)が長期EMA(75)より上 → 上昇トレンド優勢
短期EMA(25)が長期EMA(75)より下 → 下降トレンド優勢
エントリー条件
EMA25がEMA75を上抜けたタイミング → ロングエントリー
EMA25がEMA75を下抜けたタイミング → ショートエントリー
決済条件
反対方向のクロスが出現した時点で決済(同時に反対ポジションを新規オープン)
-
① 総トレード数
5,153
② 勝率 27.01%
③ 平均リスクリワード比(実現RR) 2.894
④ トータル損益 +4,063.6 pips(手数料・スプレッド未考慮)
⑤ プロフィットファクター(PF) 1.072
→ 単体よりも安定。
EMAの反応スピード差がトレンド初動の定義として機能した。
EMA25 x EMA75手法の特徴
・トレンドフォロー型
EMA25とEMA75の差(スプレッド)をトレンド判定に利用し、短期の勢いが長期トレンドを超えた瞬間を狙う。
・常時ポジション保有型
原則として「クロス→反対クロス」までポジションを維持するため、ドテン(反対売買)スタイルになる。
・ノイズ多め
5分足ベースだとクロス頻度が高く、勝率は低下するがリスクリワード比でバランスを取る形になる。
・EA化が容易
条件がシンプルで、実装も高速。最も基本的な「移動平均クロスEA」。
再再検証:EMA25 × EMA75 x EMA200(パーフェクトオーダー)
ルール
ロング:EMA25 > EMA75 > EMA200
ショート:EMA25 < EMA75 < EMA200
それ以外:シグナルなし → ドテン方針なので直前ポジションを維持
エントリー/決済はシグナルが切り替わった時点(終値ベース)
-
① 総トレード数
1,910
② 勝率 29.32%
③ 平均リスクリワード比(実現RR) 2.621
④ トータル損益 +3,235.6 pips
⑤ プロフィットファクター(PF) 1.089
トレード数は大幅に減少(シグナルが厳選されるため)
勝率は3割弱だが、実現RRが2.6と高く、トレンド局面でしっかり利を伸ばせている。
参考TradingViewインジケーター
//@version=5
indicator("Triple EMA Perfect-Order — Flip Signals (Indicator)", overlay=true)
// === 入力(検証同等:追加フィルタOFF) ===
lenFast = input.int(25, "短期EMA", minval=1)
lenMid = input.int(75, "中期EMA", minval=1)
lenSlow = input.int(200, "長期EMA", minval=1)
priceOutsideMid = input.bool(false, "サイン時に終値がEMA75の外側を要求(検証同等=OFF)")
confirmBars = input.int(1, "PO連続バー数(検証同等=1)", minval=1)
// === EMA ===
emaFast = ta.ema(close, lenFast)
emaMid = ta.ema(close, lenMid)
emaSlow = ta.ema(close, lenSlow)
// === PO判定 ===
poUp = (emaFast > emaMid) and (emaMid > emaSlow)
poDown = (emaFast < emaMid) and (emaMid < emaSlow)
// 追加条件(任意)
priceOKLong = not priceOutsideMid or (close > emaMid)
priceOKShort = not priceOutsideMid or (close < emaMid)
// 連続バー確認(POがN本連続で成立)
poUpOK = poUp and ta.barssince(not poUp) >= confirmBars - 1
poDownOK = poDown and ta.barssince(not poDown) >= confirmBars - 1
// === 常時ポジの方向(非PO中は前方向維持) ===
var int dir = 0 // 1=LONG, -1=SHORT, 0=未確定
dir := poUpOK and priceOKLong ? 1 :
poDownOK and priceOKShort ? -1 : nz(dir[1], 0)
// === “反転した足”だけ一度サイン ===
longFlip = (dir == 1) and (nz(dir[1]) != 1)
shortFlip = (dir == -1) and (nz(dir[1]) != -1)
// === プロット ===
plot(emaFast, color=color.new(color.teal, 0), linewidth=2, title="EMA 25")
plot(emaMid, color=color.new(color.orange, 0), linewidth=2, title="EMA 75")
plot(emaSlow, color=color.new(color.purple, 0), linewidth=2, title="EMA 200")
barcolor(dir==1 ? color.new(color.teal, 80) : dir==-1 ? color.new(color.purple, 80) : na)
plotshape(longFlip, title="Flip LONG", style=shape.triangleup, location=location.belowbar, color=color.new(color.teal, 0), size=size.tiny, text="PO↑")
plotshape(shortFlip, title="Flip SHORT", style=shape.triangledown, location=location.abovebar, color=color.new(color.purple, 0), size=size.tiny, text="PO↓")
// === アラート(足確定で1回だけ) ===
alertcondition(longFlip, title="PO Flip LONG", message="Perfect-Order LONG")
alertcondition(shortFlip, title="PO Flip SHORT", message="Perfect-Order SHORT")
まとめ
・EMA25単体検証ではPF0.984
・EMA25 × 75の組み合わせではPF1.072
・EMA25 x 75 × 200の組み合わせではPF1.089
EMA単体では市場に勝てない。
だが、EMA同士を組み合わせれば、市場の流れには勝てる。
つまり、EMAは値動きではなく秩序に勝つための道具なのだ。
-
特典&ご案内
今回の検証は Axioryのヒストリカルデータを使用しました。
(AXIORY口座を利用しない場合、同じ結果は再現できません)
詳細データや手法はPDFにまとめ、
今だけ【メルマガ登録者限定】で無償配布しています。
さらに、FX手法をAIで作る方法、EA化する方法を公開しています。
▶︎ 無料で今すぐ手に入れる(次回より有償化予定)
※この条件での配布は今回限り。
再配布は一切行いません。