最初に確認する症状別早見表
指値・逆指値は、将来の条件を指定して待つ**保留注文(Pending Order)**です。現在価格ですぐに取引を求める成行注文とは、注文価格の役割と発動までの流れが異なります。
| 症状 | 最初の確認 | 次に見る項目 |
|---|---|---|
| Buy Limit/Sell Limitを置けない | 現在のAsk/Bidに対する価格方向 | Stops level、Digits、Tick size |
| Buy Stop/Sell Stopを置けない | LimitとStopを取り違えていないか | Stops level、スプレッド |
| Place/注文ボタンが無効 | 注文種別、価格、数量、有効期限 | 銘柄で許可された注文種別 |
Invalid price |
価格方向と送信直前のBid/Ask | Digits、Tick size |
Invalid stops |
現在価格からの最低距離 | 同時指定したSL・TP |
| 有効期限を選べない | 銘柄で許可された期限方式 | 取引サーバー時刻 |
| 変更・削除できない | Freeze levelと注文状態 | Journalのエラー |
| 到達しても約定しない | Bid/Askのどちらで判定するか | 発動後の拒否、価格提示、証拠金 |
確認順は次の5ステップです。
- 注文種別:Limit、Stop、成行、MT5のStop Limitを区別する
- 価格方向:BuyはAsk、SellはBidを基準に上か下かを確認する
- 最低距離:Stops level、Freeze level、points/pips、価格刻みを確認する
- 有効期限:GTC、当日、指定日時とサーバー制限を確認する
- ログ:注文結果、Journal、EAの場合はExpertsを確認する
同じ注文を繰り返す前に、銘柄名、注文種別、注文価格、現在のBid/Ask、数量、有効期限、表示されたエラー、操作時刻を記録してください。全銘柄で失敗するのか、特定銘柄・特定種別だけかを分けると原因を絞りやすくなります。
1. Limit・Stop・成行注文の違いを確認する
成行注文は、現在利用できる市場価格で売買を求める注文です。一般に買いはAsk、売りはBidで処理されますが、実際の約定価格は銘柄、実行方式、流動性、相場変動などで決まります。
Limit注文は、現在より有利な側の価格を指定して待つ注文です。Buy Limitは現在より低い価格で買う条件、Sell Limitは現在より高い価格で売る条件を設定します。
Stop注文は、価格が指定方向へ進んだ後の売買を求める注文です。Buy Stopは現在より高い価格、Sell Stopは現在より低い価格へ置きます。
MetaTrader 4の標準的な保留注文はBuy Limit、Sell Limit、Buy Stop、Sell Stopの4種類です。MetaTrader 5には、これらにBuy Stop LimitとSell Stop Limitを加えた6種類があります。ただし、利用できる注文種別は銘柄とブローカー側の設定で制限される場合があります。
MetaTrader 5公式ヘルプのBasic Principlesでは、注文、約定(deal)、ポジションを別の段階として説明しています。注文を置けたこと、価格条件で発動したこと、実際に約定したことを同じ意味として扱わないでください。
2. 4種類の価格方向をBid・Askで確認する
FXなど一般的な店頭銘柄では、次の方向を基準に確認します。
| 注文種別 | 基準価格 | 通常の注文価格 | 想定する動き |
|---|---|---|---|
| Buy Limit | Ask | 現在のAskより下 | 下落後に買う |
| Sell Limit | Bid | 現在のBidより上 | 上昇後に売る |
| Buy Stop | Ask | 現在のAskより上 | 上昇後に買う |
| Sell Stop | Bid | 現在のBidより下 | 下落後に売る |
Buy Limitを現在のAskより上へ置こうとした場合は、価格方向がBuy Stop側です。Sell Limitを現在のBidより下へ置こうとした場合は、Sell Stop側になります。まず予想ではなく、選択した注文種別と入力価格の上下関係を確認してください。
多くのチャートはBidで描画されます。買い注文の判定で使うAskは、Bidにスプレッドを加えた側にあるため、チャートが指定価格へ届いたように見えてもAskが条件を満たしていない、または逆にAskが先に条件へ到達する場合があります。Ask lineを表示できる環境では有効にし、Market Watch/気配値表示のBidとAskを同時に記録します。
取引所銘柄やExchange executionでは、Last価格や取引所ルールが発動判定に使われる場合があります。全銘柄へFXのルールをそのまま当てはめず、対象銘柄のSpecificationとブローカー公式条件を優先してください。
3. MT5のBuy Stop Limit・Sell Stop Limitを区別する
Stop Limitは、指定したStop価格へ到達した時点で、別のLimit注文を置く二段階の注文です。Stop価格へ到達しただけでは、市場成行での約定を求めるStop注文と同じ結果にはなりません。
- Buy Stop Limit:Stop価格を現在のAskより上へ置き、発動後にBuy Limitを置く価格も指定する
- Sell Stop Limit:Stop価格を現在のBidより下へ置き、発動後にSell Limitを置く価格も指定する
Stop価格とStop Limit価格の両方が必要です。価格の順序、最低距離、許可された注文種別を確認してください。銘柄がStop Limitを許可していない場合は、注文画面に表示されない、またはサーバーに拒否されることがあります。
MT4には標準のBuy Stop Limit/Sell Stop Limitはありません。名称が似たEAやブローカー独自機能がある場合でも、MT5標準機能と同じとは限りません。
4. Stops levelとFreeze levelを確認する
Market Watch/気配値表示で対象銘柄のSpecification/仕様を開きます。
- Stops level:保留注文価格やSL・TPを現在価格から離す必要がある最低距離
- Freeze level:現在価格の近くで、注文やポジションの変更・削除が制限される範囲
Stops levelが0と表示されても、常に任意の価格へ置けるとは限りません。サーバー側の動的な制限、Tick size、取引所ルール、急なスプレッド拡大などで拒否される場合があります。注文送信時点の仕様とサーバー応答を確認してください。
新規に保留注文を置けないときは主にStops levelを確認し、すでに置いた注文を変更・削除できないときはFreeze levelも確認します。価格が動いてFreeze levelへ入ると、それまで変更できた注文が一時的に変更できなくなる場合があります。
SL・TPも同時に指定している場合、保留注文価格だけでなくSL・TPの方向と距離も検証対象です。MT4・MT5でSL・TPを設定できない原因と対処法でBuy/Sellの方向、Stops level、Freeze levelを分けて確認してください。
5. points・pips・Digits・Tick sizeを混同しない
SpecificationのStops levelやFreeze levelはpointsで表示されることがあります。pointは銘柄の最小表示単位に基づく値で、慣用的なpipと常に同じではありません。
5桁表示のFX銘柄では、1 pipが10 pointsになる例があります。ただし、貴金属、株価指数、暗号資産、先物などは価格桁と最小変動幅が異なるため、この換算を一律に使わないでください。
- Digits:価格の表示桁数
- Point:価格表示の基準となる単位
- Tick size:取引価格が動ける最小刻み
- pips:FXで慣用的に使う単位で、銘柄仕様のpointsと一致するとは限らない
注文価格はDigitsに収まっていても、Tick sizeの刻みに合わなければ拒否される場合があります。画面表示を丸めるだけでなく、Specificationにある実際のTick sizeへ価格を合わせます。
6. 有効期限とサーバー時刻を確認する
保留注文の有効期限は、銘柄とブローカーが許可した方式から選びます。MetaTrader 5の銘柄仕様では、次のような方式が定義されています。
- GTC(Good Till Canceled):明示的に取り消すまで有効
- 当日限り:取引日の終わりまで有効
- 指定日時まで有効
- 指定日の終わりまで有効
画面に表示される選択肢は環境で異なります。MT4でもExpiryを指定できますが、ブローカーが有効期限を許可しない場合があり、エラー147(Expirations are denied by broker)が返ることがあります。
日時を指定するときは、PCの日本時間ではなく、注文画面とJournalで使われる取引サーバー時刻を確認します。過去日時、許可されない期限方式、セッション外の扱い、満期・限月の制限がないかをブローカー公式情報で確認してください。
7. Place・Modifyボタンとチャート操作を分ける
Place/注文ボタンが無効な場合は、画面内の入力条件を満たしていない可能性があります。
- SymbolとVolumeが正しいか
- TypeがPending Orderになっているか
- 注文種別と価格方向が合っているか
- Stops level以上離れているか
- DigitsとTick sizeに合っているか
- 有効期限が許可された方式と日時か
- 同時指定したSL・TPが正しいか
通常注文画面、Market Watch、Depth of Market、チャート上のクイック取引では入力項目と送信方法が異なります。One Click Tradingが有効な操作では確認画面を省略して要求を送る場合があるため、ボタン表示だけで成功を判断せずTrade/取引タブとJournalを確認してください。
チャート上で注文ラインをドラッグしたとき、Bid/Askの境界を越えるとLimitとStopが切り替わる操作があります。意図しない注文種別へ変わっていないか、変更後の注文行を確認します。操作方法は端末バージョンやブローカー提供画面で異なる場合があります。
8. エラーコードとJournalを確認する
注文直後にMT4はTerminal/ターミナル、MT5はToolbox/ツールボックスのJournalを開きます。EAやスクリプトから送った場合はExpertsも確認し、画面へ入力した値ではなく実際の要求値とサーバー応答を記録します。
| 表示例 | 主な確認対象 |
|---|---|
MT4 129 Invalid price |
注文種別に対する価格方向、価格桁、送信直前の価格 |
MT4 130 Invalid stops |
Stops level、注文価格、同時指定したSL・TP |
MT4 145 Trade modify denied |
現在価格に近い注文の変更、Freeze level |
MT4 147 Trade expiration denied |
ブローカーが許可する有効期限 |
MT4 148 Too many orders |
口座で許可された保有・保留注文数 |
MT5 Invalid price |
requestへ入れたprice、Digits、Tick size |
MT5 Invalid stops |
保留注文価格またはSL・TPの方向と距離 |
MT5 Invalid expiration |
期限方式、指定日時、サーバー時刻 |
MT5 Frozen |
Freeze level、注文・ポジションの状態 |
MT5 Limit orders |
保留注文数がサーバー上限へ到達 |
エラー名だけで原因を断定せず、完全なメッセージ、エラー番号またはretcode、時刻、銘柄、注文種別、数量、注文価格、有効期限を一組として残します。
口座全体で成行注文も送れない場合は、MT4・MT5で注文できない原因と対処法で接続、市場時間、数量、証拠金、取引権限を先に確認してください。
9. 価格到達・発動・約定を区別する
保留注文では、次の3段階を分けて確認します。
- チャートや気配値で価格が指定水準へ近づく
- 判定に使われるBid/Askまたは取引所のLastが条件を満たし、注文が発動する
- 発動後の取引要求が処理され、deal/約定になる
チャートのBidが水準へ到達しても、Buy系で判定するAskが条件を満たしていない場合があります。逆に、表示していないAskが先に条件へ達することもあります。
Stop系注文は発動後に市場注文として処理されるため、指定価格での約定を保証しません。相場急変、窓開け、スプレッド拡大、流動性、実行方式によって約定価格が変わる場合があります。
発動時に必要証拠金が不足した、取引価格が提示されない、銘柄や口座の制限が変わった場合などは、注文が拒否されて履歴へ移ることがあります。注文履歴、Deals/約定、Journalを照合してください。
解決しない場合に整理する情報
- MT4/MT5の別とbuild番号
- ブローカー名、口座タイプ、デモ/リアルの別
- 銘柄名を接頭辞・接尾辞まで含めた表記
- 注文種別、数量、注文価格、SL・TP、有効期限
- 操作時点のBid/Ask、スプレッド、サーバー時刻
- SpecificationのStops level、Freeze level、Digits、Tick size
- 表示されたエラー番号、retcode、完全なメッセージ
- 通常注文、チャート、Depth of Market、One Click Trading、EAのどれで起きるか
- 注文履歴で発動・拒否・取消のどの状態になったか
スクリーンショットやログを共有するときは、口座番号、残高、サーバー名、注文番号、氏名、メールアドレス、IPアドレス、ライセンスキー、ログイン情報をマスクしてください。
公式資料
- MetaTrader 5 Help: Basic Principles
- MetaTrader 5 Help: Executing Trades
- MQL5 Reference: Symbol Properties
- MQL5 Reference: Trade Server Return Codes
- MetaTrader 4 Help: Placing of Pending Orders
- MQL4 Reference: Runtime Errors
画面名称、利用できる注文種別、有効期限、最低距離、発動条件は、端末バージョン、銘柄、取引方式、ブローカーで異なる場合があります。利用中の環境に表示されるSpecificationとブローカー公式情報を優先してください。
関連するトラブル解決記事
- MT4・MT5で注文できない原因と対処法
- MT4・MT5でポジションを決済できない原因と対処法
- MT4・MT5でSL・TPを設定できない原因と対処法
- MT4・MT5にログインできない原因と対処法
- MT4・MT5初心者ガイド
よくある質問
Buy LimitとBuy Stopはどう使い分けますか?
Buy Limitは通常、現在のAskより下へ置き、下落後の反発を想定する買い注文です。Buy Stopは現在のAskより上へ置き、上昇継続を想定します。銘柄の実行方式や取引所ルールで判定が異なる場合があるため、Specificationも確認してください。
Sell LimitとSell Stopはどう使い分けますか?
Sell Limitは通常、現在のBidより上へ置き、上昇後の反落を想定する売り注文です。Sell Stopは現在のBidより下へ置き、下落継続を想定します。チャートがBid表示の場合はAskとスプレッドも確認してください。
Placeまたは注文ボタンが無効なのはなぜですか?
注文価格の方向が種別と逆、現在価格に近すぎる、数量・価格桁・有効期限が無効、銘柄や口座でその注文種別が許可されていない可能性があります。通常の注文画面で全入力欄とSpecificationを確認してください。
Invalid priceと表示されたら何を確認しますか?
注文種別に対する価格方向、現在のBid/Ask、Digits、Tick size、送信直前の価格変化を確認します。MT4ではエラー129、MT5ではTRADE_RETCODE_INVALID_PRICEが代表例です。
Invalid stopsと表示されたら何を確認しますか?
保留注文価格と現在のBid/Askの距離、Stops level、同時指定したSL・TPの方向と距離、points/pips、Digits、Tick sizeを確認します。MT4ではエラー130、MT5ではTRADE_RETCODE_INVALID_STOPSが代表例です。
有効期限を設定できないのはなぜですか?
銘柄やブローカーが選択した有効期限方式を許可していない、日時が過去または近すぎる、取引サーバー時刻とのずれがある可能性があります。GTC、当日、指定日時など利用可能な方式をSpecificationと注文画面で確認してください。
保留注文を変更・削除できないのはなぜですか?
現在価格がFreeze level内にある、注文が処理中または発動済み、市場や口座に制限がある可能性があります。MT4エラー145、MT5のTRADE_RETCODE_FROZEN、注文状態、操作時刻のJournalを確認してください。
価格が到達したのに約定しないのはなぜですか?
チャート表示価格と発動判定に使うBid/Askが異なる、スプレッドで条件に届いていない、発動後に証拠金や価格提示が不足して拒否された可能性があります。発動は約定を意味せず、Stop系注文の約定価格も保証されません。
まとめ
MT4・MT5で指値・逆指値注文ができないときは、注文種別 → 価格方向 → 最低距離 → 有効期限 → ログの順に確認します。Buy LimitはAskより下、Sell LimitはBidより上、Buy StopはAskより上、Sell StopはBidより下という基本方向から始め、Stops level、Freeze level、価格単位、期限方式を銘柄仕様と照合してください。
保留注文を置けても、発動や指定価格での約定は保証されません。エラーと注文条件を記録し、Specificationとブローカー公式情報を確認しても理由が分からない場合は、個人情報を隠したうえで公式サポートへ問い合わせてください。
