Educational content. This article explains how pending orders work in MetaTrader 5, including the difference between a buy limit and a buy stop. It does not constitute investment advice or a trading recommendation. CFD trading carries significant risk of loss and may not be suitable for all investors.
A pending order is an instruction to open a position later, at a price the trader sets in advance, rather than now at the market price. MetaTrader 5 offers six of them, and the two that cause the most confusion are the buy limit and the buy stop, because both open a long position and both wait for a price, yet they sit on opposite sides of the market and rest on opposite assumptions about what the price will do.
This article sets out the difference between the two, describes all six pending order types in MT5, explains why buy orders trigger on the Ask and sell orders on the Bid, and covers the mechanics that decide what actually gets filled: gaps, expiry, margin and the minimum distance from the price. For what happens to the fill price in a fast market, see what is slippage in trading.
What Is the Difference Between a Buy Limit and a Buy Stop?
A buy limit is placed below the current price and buys if the price falls to that level, while a buy stop is placed above the current price and buys if the price rises to that level.
The distinction is purely about where the order sits relative to the market. A trader who expects the price to pull back before moving higher would describe the buy limit as the order that matches that view: it buys at a lower price than today's. A trader who expects a move to continue once it breaks through a level would describe the buy stop as the matching order: it buys only after the price has already started rising through the level. The same logic applies in mirror image to the sell side, which gives the four basic pending orders.
| Order | Placed relative to current price | Triggered by | Opens |
|---|---|---|---|
| Buy Limit | Below | Ask falls to or below the order price | Long |
| Buy Stop | Above | Ask rises to or above the order price | Long |
| Sell Limit | Above | Bid rises to or above the order price | Short |
| Sell Stop | Below | Bid falls to or below the order price | Short |
Source: MetaTrader 5 Help, Trading Operations, Basic Principles.
A short way to remember the table: limit orders ask for a better price than the market offers now, and stop orders accept a worse price in exchange for confirmation that the market has moved.
What Is a Pending Order?
A pending order is an order to buy or sell that is stored on the broker's trade server and executed only when the market reaches a price specified by the trader.
A market order opens a position immediately at the current price. A pending order separates the decision from the execution: the trader chooses the price and the volume now, and the server opens the position later if and when the price condition is met. Until then nothing has been bought or sold, no position exists, and the order can be modified or deleted at any time. In MT5, pending orders appear in the Trade tab of the Toolbox under the open positions, with their trigger price and, if one was set, their expiry.
The Four Basic Pending Orders
The four basic pending orders are the buy limit, sell limit, buy stop and sell stop, and each is defined by its direction and by whether it sits above or below the current price.
Buy Limit
A buy limit is an order to buy at an Ask price equal to or lower than the price specified in the order, placed while the current price is above that level.
If EUR/USD is quoted at 1.1650 and a buy limit is set at 1.1600, the order stays inactive while the price is above 1.1600. If the Ask falls to 1.1600 or lower, the order is executed and a long position opens.
Sell Limit
A sell limit is an order to sell at a Bid price equal to or higher than the price specified in the order, placed while the current price is below that level.
It is the mirror of the buy limit: a short position opens if the price rises to the order level, which is higher than the price at the time the order was placed.
Buy Stop
A buy stop is an order to buy at an Ask price equal to or higher than the price specified in the order, placed while the current price is below that level.
With EUR/USD at 1.1650, a buy stop at 1.1700 opens a long position only if the Ask rises to 1.1700 or higher. The position therefore opens at a higher price than was available when the order was placed.
Sell Stop
A sell stop is an order to sell at a Bid price equal to or lower than the price specified in the order, placed while the current price is above that level.
It opens a short position only after the price has fallen to the order level. A stop loss on a long position works on the same principle, which is why the two are easily confused; the difference is that a sell stop opens a new position, while a stop loss closes an existing one.
Why Buy Orders Trigger on the Ask and Sell Orders on the Bid
Buy orders trigger on the Ask and sell orders trigger on the Bid because a buyer transacts at the price at which the market sells, and a seller at the price at which the market buys.
This is the detail that explains most "my order should have filled" questions. MT5 charts are drawn from the Bid price by default. A buy limit at 1.1600 needs the Ask, not the Bid, to reach 1.1600. If the spread is two pips, the Bid has to fall to roughly 1.1598 before the Ask touches 1.1600, so the chart can print a low of 1.1600, exactly at the order level, while the order stays untouched. The reverse applies to sell orders placed above the market, which trigger on the Bid that the chart does show.
The practical effect grows with the spread. On a tightly quoted major it is a fraction of a pip; on an instrument or at an hour where the spread is wider, it is correspondingly larger. The Ask line can be displayed on the chart from the chart properties, which shows the level a buy order actually compares against. How the spread itself is set and why it widens is covered in what is the spread in trading.
Buy Stop Limit and Sell Stop Limit: The Two-Stage Orders
A buy stop limit is a stop order that, once the Ask reaches its stop price, places a buy limit order at a second price, and a sell stop limit does the same on the sell side using the Bid.
The order has two prices. The first is the stop price, which works like a buy stop and sits above the market. The second is the limit price, which is the price of the buy limit that gets placed when the stop price is reached, and it is set at or below the stop price. The sequence is:
- The trader places a buy stop limit with a stop price of 1.1700 and a limit price of 1.1680.
- Nothing happens while the Ask is below 1.1700.
- When the Ask reaches 1.1700, the order converts into a buy limit at 1.1680.
- The buy limit fills only if the Ask then comes back down to 1.1680 or lower.
The two-stage structure describes a specific expectation: a break above a level followed by a pullback. It also gives the trader control over the fill price that a plain buy stop does not, at the cost of the possibility that the second stage never fills. The sell stop limit reverses every direction: a stop price below the market, and a sell limit placed at or above it once the Bid reaches the stop.
What Happens When the Price Gaps Through a Pending Order
When the price gaps past a pending order, a limit order is filled at its price or a better one, while a stop order becomes a market order and is filled at the first available price, which can be worse than the level set.
Markets do not always move one tick at a time. Over a weekend, around a central bank decision or at the release of a major data figure, the first available price can be some distance from the last one. The two order families respond differently:
| Order family | If the price gaps through the level | Fill price |
|---|---|---|
| Limit (buy limit, sell limit) | Executed | Order price or better |
| Stop (buy stop, sell stop) | Executed as a market order | Next available price, possibly worse |
A buy stop at 1.1700 on a market that closes Friday at 1.1690 and opens Monday at 1.1740 is executed at around 1.1740, not 1.1700. The 40-pip difference is slippage, and it is a feature of how stop orders work rather than a malfunction. A buy limit at 1.1600 on a market that gaps down from 1.1620 to 1.1580 is executed at around 1.1580, which is better than the order price. The fuller treatment of how this plays out in news and session gaps is in what is slippage in trading.
Where Pending Orders Are Stored
Pending orders are stored and triggered on the broker's trade server, so they remain active and can execute while the MT5 terminal is closed or the computer is switched off.
The same applies to stop loss and take profit levels attached to a position. Once an order is accepted by the server, the terminal is only a window onto it. The one common order-management tool that behaves differently is the trailing stop, which MetaTrader 5 runs inside the client terminal, not on the server; its mechanics are explained in what is a trailing stop.
How Long a Pending Order Stays Active
A pending order stays active until it is triggered, deleted by the trader, or reaches the expiry chosen when it was placed.
MT5 offers four expiry settings, although which of them are available on a given instrument depends on the broker's symbol configuration:
- Good till cancelled: the order remains until it is triggered or deleted.
- Good till today: the order is deleted at the end of the current trading day.
- Good till specified: the order is deleted at a chosen date and time.
- Good till specified day: the order is deleted at the end of a chosen day.
An order left with no expiry can trigger weeks after it was placed, in market conditions that have nothing in common with those that prompted it. Reviewing the list of open pending orders is part of routine account housekeeping for that reason.
Pending Orders, Margin and Free Margin
A pending order does not use margin while it is waiting; margin is required only when the order is triggered and becomes a position, and an order that triggers without enough free margin is not executed.
This matters for accounts carrying several orders at once. Placing five pending orders does not reduce free margin, so the account can show ample room while holding orders that, if they all triggered together, would need more margin than is available. The check happens at the moment of execution against the free margin at that moment, which may be lower than when the orders were placed if open positions have moved against the account in the meantime. How margin, free margin and margin level relate is explained in what is margin in trading, and what happens when margin runs out in what is stop-out level in trading.
Why MT5 Rejects Orders Placed Too Close to the Price
MT5 rejects a pending order, stop loss or take profit placed closer to the current price than the instrument's minimum stop distance, which is set by the broker per symbol and shown in the symbol specification as the stops level.
The rejection appears as "Invalid stops" or "Invalid price" in the order window and the journal. The minimum distance is expressed in points, can differ between instruments, and can be zero. It is read from the symbol specification in MT5 (right-click the instrument in Market Watch and choose Specification), which is the authoritative source for the instrument being traded.
Stop Loss and Take Profit as Order Logic
A stop loss follows the logic of a stop order and a take profit follows the logic of a limit order, which is why a stop loss can be filled at a worse price in a gap and a take profit cannot be filled at a worse one.
On a long position, the stop loss is a sell stop in effect: it closes the position when the Bid falls to the level, and in a gap it executes at the next available price. The take profit is a sell limit in effect: it closes when the Bid rises to the level, at that price or better. Recognising this pairing makes the behaviour of protective levels during volatile sessions predictable rather than surprising, although it does not remove the risk that a stop loss is filled some distance from where it was set.
Frequently Asked Questions
What is the difference between a buy limit and a buy stop?
A buy limit is placed below the current price and buys if the price falls to it; a buy stop is placed above the current price and buys if the price rises to it. Both open a long position, and both are pending orders stored on the broker's server.
Why did my buy limit not trigger when the price reached it on the chart?
A buy limit triggers when the Ask reaches the order price, but MT5 charts show the Bid by default. The Bid touching the level means the Ask is still one spread above it, so the order has not been reached.
What is a buy stop limit order?
A buy stop limit is a two-stage order: when the Ask reaches the stop price, a buy limit order is placed at a lower or equal limit price, and it fills only if the price then comes back to that limit price.
Do pending orders work when MT5 is closed?
Yes. Pending orders, stop losses and take profits are stored and executed on the broker's trade server, so they work with the terminal closed. Trailing stops are the exception, because MT5 runs them inside the terminal.
Does a pending order use margin before it is triggered?
No. Margin is required when the order executes and becomes a position. If there is not enough free margin at that moment, the order is not executed.
Can a buy stop be filled at a worse price than the one I set?
Yes. When the order is triggered it is executed as a market order, so in a gap or a fast market it fills at the next available price, which can be above the stop price for a buy stop.
Place Pending Orders on Vanto
All six pending order types are available on Vanto's MetaTrader 5 platforms, with the minimum stop distance and available expiry types for each instrument shown in its MT5 symbol specification. The trading calculator shows the contract size, swap and margin for every instrument before an order is placed. For what a triggered order costs to hold, see what is swap in trading. A demo account shows how each order type behaves on live prices without risking capital.
Risk warning. Trading securities, futures, options, and contracts for differences are complex financial instruments that require knowledge and understanding. Prices can fluctuate significantly and securities may become valueless. Investors may incur losses exceeding the potential for profits. Trading on margin can result in losses greater than the amount initially deposited. Past performance is not necessarily a guide to future performance. The information in this article is for educational purposes only and does not constitute investment advice, a recommendation, or an offer to buy or sell any financial instrument. Consider whether CFD trading is appropriate for your circumstances and seek independent advice if necessary.