テクニカルEA化
RSI 30/70をそのままEAに入れる危険
公開 2026.06.16最終確認 2026.06.16
「RSIが30を下回ったら買い、70を上回ったら売り」——教科書の基本戦略。
しかしこれをそのままEAにすると、ほぼ確実に負ける。理由は3つ。
結論
そのまま実装が負ける理由:
- トレンド相場でRSIが張り付く: 強い上昇では70以上に長く滞在する。70で売るたびに損切りされる。
- レンジ判定がない: RSI逆張りはレンジでのみ有効だが、判定がなければ「常にエントリーするEA」になる。
- 決済条件が曖昧: RSI 30で買った後、いつ決済するのかが定義されていない。
なぜEA運用で重要か
RSI逆張りは裁量では機能する場面がある。それは裁量トレーダーが暗黙にレンジ判定や決済判断をしているから。EAにはその暗黙知がないため、明示的なルールを追加しないと機能しない。
仕組み・条件
そのまま実装の典型結果(参考)
EURUSD M15、2021〜2025年:
- PF: 0.85〜0.95(手数料込み)
- 勝率: 45〜55%
- 最大DD: 15〜25%
→ ほぼ損益分岐点以下。スプレッドと手数料で負ける。
改善に必要な追加条件
// NG: そのまま実装
if(rsi_value < 30.0) Buy();
if(rsi_value > 70.0) Sell();
// OK: レンジ判定 + 決済条件 + トレンドフィルター
double adx_value = GetADX();
bool is_range = (adx_value < 25.0);
if(is_range && rsi_value < 30.0)
{
Buy();
SetSL(ATR * 1.5);
SetTP(ATR * 1.0);
}
最低限追加したい条件:
- レンジ判定(ADX、ボリンジャーバンド幅など)
- 明確な損切り幅(ATR基準)
- 明確な利確条件(ATR基準またはRSI 50到達)
- 1日あたりのエントリー回数制限
バックテストやリアル運用で壊れるポイント
- RSI 30/70のみでPF測定 → 0.9前後で「微調整すれば勝てそう」と錯覚
- RSI期間を変えて最適化 → 14→12でPFが上がるが過剰最適化
- 閾値を25/75に変えて最適化 → 取引回数が減って統計不足
- レンジ判定なしでフォワード → トレンド月に集中的に負ける
どう確認するか
- RSI 30/70「のみ」のPFを計算する(フィルターなし)
- ADXフィルター追加後のPFと比較する
- レンジ月とトレンド月に分けてPFを見る
- RSI閾値を変えてもPFが安定するか確認する
- 「そのまま実装」でPF1.0を超えないなら、その銘柄にRSI逆張りが合っていない可能性を検討する
自分の検証スタンス
RSI逆張りEAの開発は「RSI 30/70のPFが1.0を超えるか」を確認するところから始める。超えないなら、フィルターで救えるレベルではない。
RSI逆張りはレンジでのみ機能する限定的な手法であり、万能ではない。その前提を受け入れた上で、レンジ判定フィルターを組み合わせる。
参照した公式情報
免責
本記事は個人の検証メモであり、投資助言ではありません。テクニカル指標の効果は相場環境によって変動します。