ホーム > ブログ > ストップレベルとフリーズレベル|SLが置けない本当の理由

MT5銘柄仕様リスク管理

ストップレベルとフリーズレベル|SLが置けない本当の理由

公開日: 2026-11-07読了目安: 約6分
⏱ 本記事は公開日時点の情報です。EAの実績数値(PF・DD・年率)は運用や再検証で変動するため、最新値は各EAページでご確認ください。 最新のEA実績を見る →

SLが置けないのは、EAの不具合とは限らない

結論から書きます。SLが置けない、またはSLを動かせない原因の多くは、EAのロジックではなく**銘柄仕様で決まっている「最小距離」**です。MT5には、現在の価格からどれだけ離さないとSL・TPを置けないかを決める「ストップレベル」と、価格がSL・TPや待機注文に近づいたときに変更を禁止する「フリーズレベル」があります。

厄介なのは、この距離がいつも同じとは限らないことです。普段は問題なく通る距離のSLが、指標発表の直後にだけ拒否されることがあります。私たちがEAを作るときは、この距離を発注前に必ずチェックするようにしています。この記事では、仕組みと確認手順、それにEA側の対策の限界をまとめます。

おすすめブローカー比較 →

🎁 無料EAをダウンロード

📧 無料メール講座(全8通)+登録者限定 MT5 インジケーター13本パック

※ プライバシーは厳守。配信解除はいつでも可能です。

仕組み:2つの「最小距離」

ストップレベル

ストップレベル(SYMBOL_TRADE_STOPS_LEVEL)は、現在の価格からSL・TPまでの最小距離をポイントで表したものです。買いポジションなら決済の基準になるBidから、売りポジションならAskから測ります。この距離より近いSLを付けようとすると、注文はサーバーに拒否され、MT5のリターンコードでは「Invalid stops」(10016)になります。

フリーズレベル

フリーズレベル(SYMBOL_TRADE_FREEZE_LEVEL)は、価格がSL・TPや待機注文の価格に近づいたとき、その注文を変更・削除できなくなる距離です。トレーリングストップのEAが、決済の直前でSLを動かそうとして拒否されるのは、たいていこちらが原因です。リターンコードは「Frozen」(10029)です。

項目意味影響を受ける操作主な拒否コード
ストップレベル現在価格からSL・TPまでの最小距離新規発注時のSL/TP指定、SLの変更Invalid stops(10016)
フリーズレベルSL・TPや待機注文に価格が近づいたときに変更を禁止する距離SL/TPの変更、待機注文の変更・取消Frozen(10029)

「0」は制限なしという意味ではない

銘柄仕様でストップレベルが0と表示されていても、どこまで近くに置いても通るとは限りません。0の場合はサーバー側で別のルール(スプレッドを基準にした距離など)を使う業者もあるようです。業者ごとの実装をすべて確認できているわけではないので、私たちは**「0=スプレッド以上は離す」**と保守的に扱っています。

指標発表時に距離が広がる

ストップレベルとフリーズレベルは固定値ではなく、業者の判断で変わることがあります。重要指標の発表前後、週明けの取引開始直後、ロールオーバーの時間帯などに一時的に広げる業者があります。さらにスプレッドも同じ時間帯に広がるので、Askから測る売りのSLは、実際の値動き以上に遠くまで離さないといけなくなります。

つまり、普段の銘柄仕様を見て「この距離なら大丈夫」と判断しても、いちばん重要な場面で通らないことがあるわけです。SLを付けずにエントリーだけ通ってしまう作りのEAだと、無防備なポジションが残る危険もあります。

確認手順とチェックリスト

使っている口座で、次の項目を確認してください。

  1. 銘柄仕様を開く:気配値表示で銘柄を右クリック →「仕様」。「ストップレベル」「フリーズレベル」の値をメモする(単位はポイント)。
  2. ポイントを価格に換算する:XAUUSDとUSDJPYでは1ポイントの価格幅が違うので、桁数を確認したうえで価格差に直す。
  3. EAのSL距離と比べる:EAの設定やロジックで使うSL距離が、ストップレベルにスプレッドを足した距離より十分に大きいかを確認する。
  4. 指標発表の前後にもう一度見る:同じ画面を発表の直前にも開き、値が変わるかを確認する。変わる業者かどうかは、実際に見るまで分かりません。
  5. ログを確認する:「操作ログ」タブと「エキスパート」タブで「Invalid stops」や「Frozen」が出ていないかを確認する。発注が拒否されたときの切り分け方はEA・MT5ノウハウにもまとめています。

EAの設定方法そのものはEA設定方法、業者ごとの取引条件の違いはFX業者比較を参考にしてください。

EA側の最小距離チェック

私たちのEAでは、発注する直前に次の順番でチェックしています。

  • その時点のストップレベル・フリーズレベル・スプレッドを毎回取得する(起動時に1回だけ取得した値は使わない)
  • 最小距離は「ストップレベルとフリーズレベルの大きい方」にスプレッドと少しの余裕を足した値とする
  • SLがこの距離より近い場合は、SLを勝手に広げずにエントリーを見送る

SLを自動で広げる設計にしない理由は、SLを広げると1回あたりの損失額が設計より大きくなるからです。ロットをSL距離から逆算している場合、SLだけを広げるとリスク%が崩れます。見送ればチャンスは減りますが、想定していないリスクを取るよりは良いと私たちは判断しています。

限界と注意点

このチェックで、すべての問題が防げるわけではありません。

  • バックテストでは再現しにくい:私たちの理解では、MT5のストレステスターは銘柄仕様の現在の設定を使っており、過去の指標発表時に距離が広がったことまでは再現しません。SLが短いEAほど、テスト結果と実際の結果の差が大きくなる可能性があります。たとえばGOLD TRIPWIREはバックテストでの平均保有時間が0:21:12と短いタイプなので、こうした差の影響を受けやすい部類だと考えています。
  • 見送りが成績を変える:チェックによって見送ったトレードの中には、本来なら勝っていたものも含まれます。チェックを入れると、バックテストとは違う取引になります。
  • 発注の瞬間にも変わる:チェックを通過してからサーバーに届くまでの間に条件が変わることもあり、拒否を完全にゼロにはできません。
  • SL自体が滑る:SLを置けても、相場が急変すればSLより不利な価格で約定することがあります。最小距離のチェックはスリッページ対策ではありません。

まとめ

  • SLが置けない原因の多くは、銘柄仕様のストップレベル(最小距離)とフリーズレベル(変更禁止の距離)
  • 拒否されるとリターンコードは「Invalid stops」または「Frozen」になる
  • ストップレベル0は「制限なし」とは限らない。少なくともスプレッド以上は離す
  • 指標発表の前後などに距離やスプレッドが広がる業者があり、いちばん重要な場面で拒否されることがある
  • EA側では毎回その時点の値を取得してチェックし、足りなければSLを広げずに見送るのが私たちの設計
  • バックテストは過去の距離の変化を再現しにくい。SLが短いEAほど、実際の運用での差に注意する

📧 無料メール講座(全8通)+登録者限定 MT5 インジケーター13本パック

※ プライバシーは厳守。配信解除はいつでも可能です。

EAやFXについて質問はありますか?

Nattzyのトレード掲示板に質問を投稿できます(無料登録)。この記事の内容に限らず、EAの設定やブローカー選びの相談も歓迎です。

Nattzyで質問する ↗

コメント・質問