動的サポート・レジスタンスとブレイクアウトロジック ― 固定水準依存からの脱却とMT5実装の考え方

この記事の要点: 固定サポレジの構造的限界を整理し、スイング検出を起点とした動的更新ロジックとリテスト確認型エントリーをMT5(MQL5)でどう設計するかを解説する。


なぜ今、動的サポレジなのか

多くのトレーダーがチャートに引く水平線は、過去の高値・安値を起点とした「静的な水準」だ。この手法は視覚的にわかりやすい反面、市場構造が変化した瞬間に機能しなくなるという根本的な問題を抱えている。

特に短期足(1分〜15分)では、価格はレンジ内で往復しながらも、流動性が集中するポイントで一時的なブレイクを繰り返す。しかしそのブレイクの多くは継続せず、レンジへ回帰するケースも少なくない。固定された線を頼りにしていると、こうした「構造変化の瞬間」を正確に捉えることができない。

動的サポレジは、この問題を需給ベースの構造更新という視点で解決しようとするアプローチだ。


現在の市場フェーズをどう定義するか

短期市場は現在、明確なトレンドが継続するフェーズではなく、レンジ内往復と局所的ブレイクが交互に発生する移行フェーズにあると考えるのが自然だ。

こうした環境を「レンジ相場」と一括りにしてしまうと戦略が機能しない。正確には、構造ブレイク時に限り一方向へ偏るポテンシャルを持つ、条件付きレンジと捉えるべきだ。

つまり「基本はレンジ、ただし構造が更新された瞬間はトレンドになりうる」という二段構えのシナリオ認識が求められる。


動的サポレジの更新ロジック

静的サポレジとの最大の違いは、水準が需給の変化に応じてリアルタイムで更新される点にある。具体的には以下の3つのトリガーによって水準が書き換えられる。

① スイング高値・安値の更新 直近N本のバーを走査し、ローカルの高値・安値を動的に検出する。この「N」の設定がロジックの感度を決定するため、対象とする時間軸に応じてパラメータを調整する必要がある。

② ブレイクポイントの記録 ブレイクが発生した価格水準は、それ以降の相場においてサポート(もしくはレジスタンス)に転換する可能性がある。この「役割の反転」をリアルタイムで記録・更新することが動的サポレジの核心部分だ。

③ 市場参加者の集中領域 出来高や値幅の集中する価格帯は、需給圧力が高い水準として機能する。この情報を補助的に組み合わせることで、単純な高値・安値検出よりも精度の高い水準を定義できる。


MT5でのトレードロジック設計

動的サポレジを利用したEAの基本フローは以下の通りだ。

① スイング検出(直近N本の高値・安値を更新)
  ↓
② レベル更新(ブレイク発生時に新たなサポート/レジスタンスを定義)
  ↓
③ エントリー判定(リテスト確認後にシグナル生成)

条件分岐の基本形はこうなる。

mql5
// 上方向ブレイクのケース
if (price > previous_high) {
    // ブレイク検出 → 新レジスタンスをprevious_highとして更新
    if (retest_confirmed) {
        // リテスト成功 → 買いシグナル
    }
}

// 下方向ブレイクのケース
if (price < previous_low) {
    // ブレイク検出 → 新サポートをprevious_lowとして更新
    if (retest_confirmed) {
        // リテスト成功 → 売りシグナル
    }
}

重要なのは、ブレイク直後にエントリーしないという設計思想だ。ブレイク後のリテスト(ブレイクした水準への価格の戻り)を確認することで、ダマし(フォールスブレイク)によるロスを大幅に削減できる。


補助フィルターで精度を上げる

リテスト確認だけではノイズを完全に排除できない場面もある。以下のフィルターを組み合わせることで、エントリーの質を底上げできる。

スプレッドフィルター ― スプレッドが拡大している局面ではエントリーを停止する。特に指標発表直後やロンドン・NY時間の切り替わりで有効だ。

ボラティリティ条件 ― ATRベースで最低限のボラティリティが確保されているかを判定する。ボラティリティが低すぎる環境では、ブレイクそのものが成立しにくいため、ロジックの前提が崩れる。

時間帯制御 ― 流動性が低い時間帯(東京時間の早朝など)はエントリーを制限する。これによりスリッページリスクと誤シグナルの双方を低減できる。


ロジックが機能しないシナリオ

有効なロジックには必ず否定条件が存在する。以下の環境では本ロジックの信頼性が低下すると考えるべきだ。

ダマしブレイクが頻発する低ボラティリティ環境 ― レンジ幅が極端に狭い相場では、価格が高値・安値を頻繁に往復しながらスイング更新が連続する。この状態では構造判定そのものが不安定になる。

スイング構造が不明瞭なケース ― 高値・安値の切り上げ/切り下げが判然としない場合、水準の定義が恣意的になりやすい。検出するN値が小さすぎると、ノイズをスイングと誤認するリスクが高まる。

急変動相場でリテストが機能しない局面 ― 経済指標発表や突発的なニュースによる急騰・急落後は、価格がブレイクした水準へ戻らずそのまま進行することが多い。この場合、リテスト待ちのロジックではエントリー機会を逃すか、ポジションを持てないまま相場が終わる。


まとめ:構造更新を前提としたロジックへ

固定サポレジの限界は「過去の構造が現在も有効という前提」に依存している点にある。動的サポレジはその前提を捨て、需給が変化するたびに水準を更新するという考え方でこの問題に対処する。

現在の短期市場はレンジが基本フェーズであるため、全てのブレイクにエントリーする設計は機能しない。スイング構造の更新→ブレイク検出→リテスト確認という3段階のフィルタリングを通過したシグナルのみを有効とする設計が、この環境には適合しやすい。

一方で、構造の信頼性が低下する環境(低ボラ・急変動)では、ロジックの前提が崩れることを忘れてはならない。システムトレードの強みは、この「機能しない条件」を事前に定義してコードに組み込める点にある。エントリーしない判断も、立派な戦略の一部だ。

ABOUTこの記事をかいた人

当サイトは、システムトレードに関する専門的な知識、技術、経験を皆様と共有することで、真剣なトレーダーの方々にインスピレーション(アイデアの源泉)の供給をいたします。トレーダーの競争力強化に焦点をあて、トレーディングシステムの構築を目的としてその普及に貢献します。 詳細は「概要とサービス内容」をご覧下さい。 ご要望はこちらで承ります。