Limit, stop or market: choosing your order type
Updated on
The short answer
A market order fills straight away, at whatever price is available. A limit order waits for a better price than the current one: below for a buy, above for a sell. A stop order waits for a worse price, so above for a buy and below for a sell. The consequence often surprises people: you do not choose the type, it follows from where your entry price sits relative to the current price. Asking for a buy limit above the market is not a preference, it is a contradiction, and the server refuses it.
Three ways in, and what each one buys
A market order buys certainty of execution and gives up certainty of price. You will be in position within the second, at a price that may differ from the one displayed, especially if the market is moving fast.
A limit order does the opposite: it buys certainty of price and gives up certainty of execution. You will not pay more than your price, but nothing guarantees the market will come to get you.
A stop order is the only one of the three to buy neither. It waits for price to move your way before putting you in, and once triggered it fills at market, so at whatever price is available then. It is used to enter on a break, accepting a worse fill.
You do not choose, where your price sits does
This is the rule that settles ninety per cent of refusals, and it fits in four lines.
- buy, entry below the current price: that is a limit;
- buy, entry above: that is a stop;
- sell, entry above the current price: that is a limit;
- sell, entry below: that is a stop.
There is nothing to decide. The order type is an arithmetic consequence, not an intention.
It is also why a plan received from someone else can never dictate the type: price has moved since they wrote it, and what was a limit for them may be a stop for you. That lag is the first source of divergence when you follow a signal channel.
The detail that gets perfectly valid orders refused
Almost nobody explains this one, and it is expensive.
There is not one price but two: the bid, where you sell, and the ask, where you buy. The gap between them is the spread. And MetaTrader does not compare your entry to the same price depending on the direction: a buy is classified against the ask, a sell against the bid.
Take an example. EURUSD shows a bid at 1.0850 and an ask at 1.0851. You want to buy at 1.08505, that is between the two. Compared to the bid, your price is above: it looks like a stop. Compared to the ask, it is below: it is a limit, and that is the correct type. Sent as a stop, the order is refused.
The case looks marginal, it is not: any entry falling inside the spread is concerned, and the spread widens precisely when the market accelerates.
The minimum distance imposed by the broker
A pending order placed too close to the current price is refused, even with the right type.
Every broker publishes a minimum distance, visible in the contract specification under a heading such as “stops level”. Below it the server accepts nothing, whatever the quality of your idea. That is the reason for code 10015, explained on our page about MT5 return codes.
Stop and limit do not protect in the same way
The asymmetry matters and is rarely stated.
A limit buy guarantees you will not pay more than your price. At worst, you are not filled.
A stop buy guarantees nothing at all about price: once the level is touched, it becomes a market order. If the level is crossed during an acceleration, you enter markedly higher than planned, and the risk you calculated is no longer the risk you are taking.
That is why placing stop orders around an economic release is particularly dangerous, as our page about the economic calendar sets out.
A pending order has a shelf life
MetaTrader lets you set an expiry, and it is worth using.
An order left pending for three days may trigger in a market that has nothing to do with the one that justified the idea. An entry is only valid while the context that produced it still holds: a plan has an expiry date, even when price eventually gets there.
What AlphaGPT does
The order type is never asked for nor assumed: it is determined from your broker’s current price and the correct side of the spread, meaning the ask for a buy and the bid for a sell. The trap described above is therefore closed by construction.
If price has crossed your entry between the analysis and the placement, which happens often, the tool says so and lets you choose rather than silently converting the order.
And when an order is refused anyway, the cause is shown in plain words. The rest, meaning how to place the orders of a plan with several targets, is covered on our page about placing orders from a signal.
Trading carries a risk of capital loss.