【最強?】「ADXだけで勝てる?」←AIで徹底検証|相性の良いインジケーター組み合わせも紹介
【結論】ADXだけで勝てる?
ADX(Average Directional Index)は、トレンドの強さを測る指標。
トレンドが強ければ数字は上がり、弱ければ下がる。
結論から言うと、ADXだけで売買しても勝ち続けるのは難しい。
AIによる検証では、勝率39.57%・PF1.0という結果だった。
だが「ADXが強いときだけ他のインジケーターと組み合わせる」条件にすると話は別。
たとえばRSIと組み合わせればPF1.6まで改善。
ADXは「シグナルを出すもの」ではなく「精度を高めるフィルタ」として生きる。
導入
トレードの世界には人気のインジケーターがある。
Supertrendや、ボリンジャーバンドなど。
そして地味に、だが根強く支持され続けているのがADXだ。
理由は単純。
「トレンドが強いか弱いか」を一目で数値化できるから。
ただ誤解も多い。
「ADX25以上なら買い」「ADX20以下ならノートレ」みたいな表現が独り歩きしている。
まるでそれだけで利益が出るかのように語られることもある。
果たして本当に「ADXだけで勝てる」のか?
私はAIを使い、数字で白黒つけてみることにした。
ADXとは?なぜ人気なのか
ADXは、トレンド系指標の一つ。
「+DI」「-DI」という2本の補助線と合わせて使われることが多い。
・ADXが25以上 → 強いトレンド ・ADXが20未満 → トレンドなしと解説されることが多い。
要するに「レンジかトレンドか」を数値で測れるツールだ。人気の理由はこれ。
多くのトレーダーが苦手とする「環境認識」を数字で代替してくれる。
だから「これだけで勝てる」と思ってしまう。
だが実際にそれだけで注文を出すとどうなるのか?
AIに確かめさせた。
AIに入力したプロンプト
条件はシンプルにした。
ADXだけで勝てるかどうかを検証してください。
条件:
・通貨ペア:USDJPY
・期間:2021年1月〜2025年8月
・時間足:5分足
・決済ルール :
買いエントリー
1. +DIが-DIを上抜け
2. ADXが25以上
3. 次の足始値で買い
売りエントリー
1. -DIが+DIを上抜け
2. ADXが25以上
3. 次の足始値で売り
決済ルール
1.反対シグナル
・資金管理:固定ロット
出力内容:
①総トレード数
②勝率
③平均リスクリワード比
④トータル損益
⑤プロフィットファクター(PF)
※今回の検証はAXIORYのヒストリカルティックデータを使用しています。
(他社口座ではティック精度が異なるため、同じ成績は再現できません。
なおスプレッドを含まないバックテストベースでの分析です)
初回検証の結果
AIが返した数字は以下。
-
①総トレード数:2,153
②勝率:39.57%
③平均リスクリワード比:1.52
④トータル損益:+83.3 pips
⑤プロフィットファクター(PF):約1
「ADX数値だけ」を基準にしたトレードは、残念ながら勝てなかった。
シンプルすぎて、ダマシに翻弄された。
なぜADXだけでは勝てないのか
仮説1
トレンドの始まりは教えてくれない ADXは「強さ」しか測らない。方向そのものは見ていない。
仮説2
レンジ相場で無力 20を下回って「ノートレ」と言われても、その後のブレイクを見逃す。
仮説3
エントリータイミングが遅れる 数値が上がってきた頃には、すでに値動きの半分が終わっている。
つまりADXは「信号機」ではなく「天気予報」に近い。
強さは教えてくれるが、売買のタイミングを保証してはくれない。
条件を加えて再検証
続いて、トレンドの把握が得意な移動平均線を元にしたオシレーター系インジケーター「MACD」を組み合わせてみた。
MACD
MACDファストEMA:12
MACDスローEMA:26
シグナル線:9
つまり「12-26-9」のデフォルト設定だ。
その結果、
勝率は向上(39.6% → 54.9%)
ただし平均リスクリワード比が0.79と低下し、トータル損益がマイナスに転落
再再検証
RSIならどうだ?ということで、再再検証。
RSI
買いエントリー → RSIが50より上
売りエントリー → RSIが50より下
-
①総トレード数:2,153 → 1,244
②勝率:39.57% → 49.52%
③平均リスクリワード比:1.52 → 1.13
④トータル損益:+83.3 pips → +2,696.7 pips
⑤プロフィットファクター(PF):1.00 → 1.11
総損益が大幅にプラス」に改善し、PFも1を上回った。
ADXだけやMACD組み合わせよりも優位性を確認。
ADXにとって、RSIは相性の良いインジケーターと言える。
続いて、最強の設定値は?
ADX+RSI(x/x)の設定値の結果です。(期間は14固定)
1.45 / 55
総トレード数:857
勝率:53.56%
平均リスクリワード比:1.02
トータル損益:+3,472.4 pips
PF:1.17
2.40 / 60
総トレード数:556
勝率:54.50%
平均リスクリワード比:1.03
トータル損益:+3,845.4 pips
PF:1.24
3.35 / 65
総トレード数:308
勝率:59.42%
平均リスクリワード比:1.09
トータル損益:+6,632.0 pips
PF:1.60
フィルターを厳しくする(35/65)とトレード回数は減るが、勝率・PF・損益すべて改善しました。
緩め(45/55)は回数は多いがPFは1.17程度。
40/60は中間で安定したプラス。
「安定性なら40/60」「利益最大化なら35/65」という感じです。
RSI期間を変えてみると?
RSI設定値は35/65固定。
1.RSI期間 7
総トレード数:1,060
勝率:52.36%
平均リスクリワード比:0.86
トータル損益:-1,235.4 pips
PF:0.95
2.RSI期間 14
総トレード数:308
勝率:59.42%
平均リスクリワード比:1.09
トータル損益:+6,632.0 pips
PF:1.60
3.RSI期間 21
総トレード数:79
勝率:59.49%
平均リスクリワード比:0.89
トータル損益:+2,372.1 pips
PF:1.30
-
短期(7)はシグナルが多すぎてダマシが多くマイナス。
標準(14)が最も安定して高いPFと大きな利益を出している。
長期(21)は勝率は高いがトレード数が減り、リスクリワードも低下。
つまり、ADXと組み合わせた場合のRSIの設定は、RSI期間14 × 設定値35/65 が最適な組み合わせと言えそうです。
やはりADXは「フィルタ」であって「シグナル」ではないということがわかりました。
ここまでのまとめ
左から (ADX単体 → ADX x RSI 50/50 → ADX x RSI 35/65)
-
①総トレード数:2,153 → 1,244 → 308
②勝率:39.57% → 49.52% → 59.42%
③平均リスクリワード比:1.52 → 1.13 → 1.09
④トータル損益:+83.3 pips → +2,696.7 pips → 6,632.0 pips
⑤プロフィットファクター(PF):1.00 → 1.11 → 1.60
ADX x RSI期間14 × 設定値35/65のTradingViewのインジケーターはこちら
//@version=5
indicator("ADX + DI Cross × RSI(14) 35/65 Filter — Entry Signals (compat)", overlay=true)
// ===== Inputs =====
adxLen = input.int(14, "ADX Length", minval=2)
adxThresh = input.float(25.0, "ADX Threshold", step=0.1)
rsiLen = input.int(14, "RSI Length", minval=2)
rsiBuyThr = input.float(65.0, "RSI Buy Threshold", minval=0, maxval=100, step=0.1)
rsiSellThr = input.float(35.0, "RSI Sell Threshold", minval=0, maxval=100, step=0.1)
// ===== ADX / DI を手計算(Wilder法)=====
upMove = high - high[1]
downMove = low[1] - low
plusDM = na(upMove) ? na : (upMove > downMove and upMove > 0 ? upMove : 0)
minusDM = na(downMove) ? na : (downMove > upMove and downMove > 0 ? downMove : 0)
tr = ta.tr(true)
atr = ta.rma(tr, adxLen)
plusDI = 100 * ta.rma(plusDM, adxLen) / atr
minusDI = 100 * ta.rma(minusDM, adxLen) / atr
dx = 100 * math.abs(plusDI - minusDI) / (plusDI + minusDI)
adx = ta.rma(dx, adxLen)
// ===== RSI =====
rsi = ta.rsi(close, rsiLen)
// ===== エントリー条件(+DI/-DIクロス × ADX≥25 × RSIフィルタ)=====
longCross = ta.crossover(plusDI, minusDI)
shortCross = ta.crossover(minusDI, plusDI)
longCond = longCross and adx >= adxThresh and rsi > rsiBuyThr
shortCond = shortCross and adx >= adxThresh and rsi < rsiSellThr
// ===== シグナル描画(次足始値で執行想定)=====
plotshape(longCond, title="LONG Entry", style=shape.triangleup, location=location.belowbar, size=size.tiny, color=color.new(color.teal, 0), text="LONG")
plotshape(shortCond, title="SHORT Entry", style=shape.triangledown, location=location.abovebar, size=size.tiny, color=color.new(color.red, 0), text="SHORT")
// ===== 参考表示(邪魔なら display.none に)=====
plot(adx, "ADX", color=color.new(color.blue, 0), display=display.none)
plot(plusDI, "+DI", color=color.new(color.green, 0), display=display.none)
plot(minusDI, "-DI", color=color.new(color.red, 0), display=display.none)
hline(adxThresh, "ADX Threshold", color=color.new(color.blue, 70))
hline(rsiBuyThr, "RSI Buy Thr", color=color.new(color.purple, 70))
hline(rsiSellThr, "RSI Sell Thr", color=color.new(color.purple, 70))
// RSIは価格上に描くと見づらいので非表示
plot(rsi, "RSI", color=color.new(color.purple, 0), display=display.none)
// ===== アラート =====
alertcondition(longCond, title="LONG Entry", message="ADX×RSI(14) 35/65: LONG entry signal")
alertcondition(shortCond, title="SHORT Entry", message="ADX×RSI(14) 35/65: SHORT entry signal")
時間帯別の成績(東京・欧州・NY)
最後に、RSI期間14 × 閾値35/65 のルールで
「時間帯別の成績(東京・欧州・NY)」を切り分けてみました。
通貨ペア:ドル円 時間足:5分足 条件:RSI14、閾値35/65
-
【東京時間】
総トレード数:108
勝率:66.7%
RR:0.90
損益:+3232.5pips
PF:1.80
【欧州時間】 総トレード数:104 勝率:59.6% RR:1.24 損益:+2834.4pips PF:1.83
【NY時間】 総トレード数:96 勝率:51.0% RR:1.11 損益:+565.1pips PF:1.16
・勝率は東京時間が最も高い(66.7%)が、PFは1を下回る → 勝ちが多いが損益効率は悪い
・欧州時間はバランスが良く、PFも1.24でプラス → 安定した成績
・NY時間はトレード数は少なめ、成績もほぼトントン
「数をこなすなら東京時間」「効率を取るなら欧州時間」といった切り分けが見えてきます。
「ADXだけで勝てる」という声について
実際には「勝てた」という声もある。
しかし、ADXだけで勝てる人は「ADXをフィルタとして利用していた」のかもしれない。
単体で売買しているのではなく、無意識に環境認識に組み込んでいたと予測する。
まとめ
ADXだけで勝つのは難しい。AI検証はPF1.0だった。
RSIを条件にすればPF1.6へ改善。
結論:
ADXは「だけで勝つ魔法のインジ」ではない。
でも「環境認識フィルタ」としては最強クラスの役割を果たす。
あなたが今後インジケーターを組み合わせるなら、 ADXは必ず候補に入れていいと思う。
-
特典&ご案内
今回の検証は Axioryのヒストリカルデータを使用しました。
(AXIORY口座を利用しない場合、同じ結果は再現できません)
詳細データや手法はPDFにまとめ、
今だけ【メルマガ登録者限定】で無償配布しています。
▶︎ 無料で今すぐ手に入れる(次回より有償化予定)
※この条件での配布は今回限り。
再配布は一切行いません。