エラー135「Price changed」とは
MT4でエラーコード135(メッセージ:Price changed)は、成行注文を出した時点のレートと、サーバーが注文を処理した時点のレートが異なる場合に発生するエラーです。クライアント(MT4)からサーバーに注文データが送信されて処理されるまでのわずかな時間にレートが動いた結果、提示価格での約定ができなくなった状態を示します。
市場のボラティリティが高い時間帯(米雇用統計発表直後、FOMC声明発表時、週明けの市場オープン直後など)に起きやすく、レート変動が許容スリッページ範囲を超えると注文が拒否されます。ネットワーク遅延や地理的にサーバーから離れた環境で取引している場合も発生率が上がります。
エラー135の主な原因
- ボラティリティの高い時間帯:経済指標の発表前後や市場オープン直後は、数百ミリ秒でレートが数ピップス動くことがあります。注文データの往復時間中にレートが変わるとエラー135が返されます。
- ネットワーク遅延(レイテンシ):家庭用のWi-Fi接続や遠隔地からの接続では、注文データがサーバーに届くまで数百ミリ秒かかる場合があります。有線LANや海外VPSを使う環境と比べて遅延が大きくなります。
- 許容スリッページが0または極小に設定されている:注文時に許容スリッページ(Deviation)を0にしている場合、わずかなレート変動でもエラー135として拒否されます。
- 約定拒否の業者ポリシー:一部の業者は基準レートから一定以上離れた注文を自動的にエラー135として返す設計になっています。
- EAの連続発注:EAが短時間に大量の注文を送信した場合、個別の注文それぞれでレート変動が発生し、エラー135が連鎖することがあります。
指標発表直後にこのエラーが出るのは当たり前。あのタイミングで成行注文をバンバン出すのは、そもそもリスクが高すぎるよ。雇用統計やFOMCの前後30分は、無理に注文しないのが正解。
解決手順
1. すぐに再注文する
エラー135は一時的なものが多いため、最新のレートで再度成行注文を出すとほとんどのケースで約定します。ボタン連打ではなく、気配値が落ち着いたタイミングで1回ずつ発注するのが確実です。
2. 許容スリッページを設定する
MT4の注文画面で「許容スリッページ」(Deviation)を設定します。通常の時間帯は3〜10ポイント、指標発表時などの高ボラティリティ時は20〜50ポイントに広げるのが一つの目安です。USD/JPYで1ポイント=0.001円に相当します。
3. 指値注文・逆指値注文を活用する
レートが急変する局面では、成行注文の代わりに指値注文(Limit Order)や逆指値注文(Stop Order)を使うことで、意図したレートで約定させることができます。指値注文は指定価格以下で買う/以上で売る注文、逆指値注文は指定価格を超えてから成行で約定する注文です。
4. 接続環境を見直す
家庭用Wi-Fiから有線LANに切り替えるだけでも遅延は大幅に改善することがあります。さらに、業者のサーバー所在地(ロンドン、ニューヨーク、東京など)に近いVPS(仮想サーバー)からMT4を動かすと、レイテンシを数ミリ秒単位まで短縮できます。
5. 発注頻度を抑える
ボラティリティが極端に高い時間帯は、発注を一時停止してレートが落ち着くのを待つ判断も有効です。特に米雇用統計発表直後の数分間は、エラー135だけでなくスプレッド拡大によるコスト増も発生しやすくなります。
許容スリッページの設定例
ここ大事だよ。スリッページの設定は「0」のままにしてる人が本当に多い。0だとちょっとでもレートが動いたら全部拒否されちゃう。最低でも3〜5ポイントは入れておいてね。
許容スリッページは取引スタイルと時間帯に応じて使い分けるのが現実的です。以下は一般的な目安です(2026年5月時点の一般情報)。
- スキャルピング(短時間売買):1〜5ポイント。狭いスプレッドで素早く回転させる取引のため、大きなスリッページは利益を圧迫する。
- デイトレード(日中完結):3〜10ポイント。通常の時間帯であれば十分に約定する範囲。
- スイング・長期保有:10〜30ポイント。数日〜数週間の値動きを狙う取引では数ポイントのスリッページは相対的に影響が小さい。
- 指標発表前後:20〜50ポイント。瞬間的に数十ポイント動くことがあるため、約定を優先する場合は広めに設定。
- ニュース速報時:50ポイント以上または取引見送り。予測不可能な変動に備える。
EAの場合はOrderSend()のslippageパラメータで許容スリッページを設定できます。エラー135が返ってきた場合は、RefreshRates()で最新レートを取得してからリトライするロジックを入れると安定します。リトライ回数は3〜5回に制限し、Sleep(200)のような待機を挟むと過剰発注を防げます。また、GetLastError()で最新のエラーコードを取得し、エラー135以外のコード(たとえば証拠金不足の134など)が返った場合はリトライをやめて別処理に分岐する設計が推奨されます。
許容スリッページを広く設定すると約定率は上がりますが、想定より不利な価格で約定する可能性も増えます。特に流動性の低い通貨ペアや時間帯では、数十ポイント不利な価格で約定するケースもあります。取引ごとのリスク許容度を踏まえて、スリッページ幅を調整する姿勢が重要です。
類似エラーとの違い
結論から言うとね、エラー135が頻発するなら回線かサーバー距離の問題。VPSを使うだけで劇的に改善することが多いよ。月1,000〜2,000円のVPSで約定率が上がるなら安い投資だと私は思う。
エラー135はレート変動に関連するエラーですが、似た症状を示す他のエラーコードがあります。
- エラー136(Off quotes):業者から価格が提示されていない状態。週末直前や指標直後のクオート欠損時に発生。
- エラー138(Requote):業者が新しい価格を提示してユーザーに再確認を求める状態。DD方式(Dealing Desk)の業者で発生しやすい。
- エラー137(Broker is busy):ブローカーのサーバーが処理過多で一時的に応答できない状態。
よくある質問
MT4/MT5のエラーが頻発する場合、サーバー環境や口座設定に問題がある可能性があります。XMは日本語サポート完備で、口座開設ボーナス15,000円を使えば自己資金を投入する前に取引環境を試すことができます。
XM公式サイトで口座開設(無料)※ XMは日本の金融庁に未登録の海外FX業者です。取引にはリスクが伴います。
FX(外国為替証拠金取引)は元本保証のない金融商品です。レバレッジにより、預けた証拠金以上の損失が発生する可能性があります。余剰資金の範囲で取引を行ってください。当サイトで紹介する海外FX業者は日本の金融庁に未登録であり、日本の投資者保護基金の対象外です。当サイトの情報は一般的な情報提供を目的としたものであり、特定の業者の利用を推奨するものでも、個別の売買助言でもありません。