Retail platforms display a single bid and a single ask, which encourages the belief that a price exists independently of size. It does not. Every quoted price comes attached to a quantity, and an order larger than that quantity is filled against successively worse prices until it is complete. The screen shows the best price; your fill is the weighted average of several.

What determines your average fill

  • The quantity available at the best price, not the price itself.
  • How quickly liquidity replenishes behind the best level.
  • Whether your order type permits partial completion at all.
  • The time of day, which changes available depth by an order of magnitude.

Depth, in concrete terms

Behind a single quote sits a queue of orders at successive prices. Consider a hypothetical book on a currency pair: two million units offered at 1.10231, three million at 1.10232, five million at 1.10234. An order to buy one million fills entirely at the first level. An order to buy four million fills two million at the first, two million at the second, and reports an average between them. The screen price was correct; it was just correct for a smaller order.

For most retail sizes this is invisible. A one-lot order on a major pair is small relative to available depth at any normal hour, and the fill matches the quote. The effect appears at three points: on larger positions, on thin instruments, and in thin hours — and the third of those catches people out most often, because the instrument and the size have not changed, only the clock.

Where retail traders meet it

Exotic pairs and small-cap share CFDs have shallow books at all times, so even modest orders walk several levels. The rollover hour, when many liquidity providers step back, thins the book on everything, including majors. Scheduled announcements produce a distinctive pattern: liquidity is withdrawn just before the release, the book is at its thinnest at the moment of maximum activity, and orders sent into that window fill far from the displayed price.

This is the mechanical explanation for something often attributed to broker misconduct. An order that fills five pips away during a data release has usually not been manipulated; it has consumed the only liquidity that was there.

Depth of market is a setting, not a feature you must buy

Several retail platforms display a depth-of-market panel that is off by default. Where a broker aggregates external liquidity, that panel shows real available quantities and turns an abstract argument into a number you can watch before sizing an order.

Order types that control the outcome

Order duration and completion instructions determine what happens when the full quantity is unavailable.

Fill or kill requires the entire quantity at the specified price or better, immediately, and cancels otherwise. Nothing partial is left behind, which is what you want when a half-filled position is worse than no position — one leg of an intended pair, for instance.

Immediate or cancel fills whatever it can immediately and cancels the remainder. You take what the book offers and abandon the rest, which suits situations where a partial position is useful and you do not want a resting order revealing your intention.

A plain market order without either instruction simply completes against whatever is available, walking the book as far as necessary. That is the default on most retail platforms, and it is why the fill can be an average of several prices without anything unusual having happened.

Reducing the cost of size

The general remedy is to stop presenting the whole order to the book at once.

Working a larger order

  1. Check available depth before sizing, where the platform exposes it.
  2. Split the order into portions the top of the book can absorb.
  3. Space the portions rather than sending them in immediate succession, allowing liquidity to replenish.
  4. Prefer the liquid hours for that instrument — the overlap of its major sessions.
  5. Use limit orders where you can wait, so you provide liquidity instead of consuming it.
  6. Record the average fill against the screen price each time, and let the record set your size.

The last step is the one that changes behaviour. A trader who logs the difference between the displayed price and the achieved average, position by position, quickly discovers the size at which their own trading starts moving the price against them, and that number is more useful than any general advice about position sizing.

Partial fills on exits

The same mechanism applies when closing, and the consequence is more serious. A stop-loss on a large position in a thin market can fill in pieces at descending prices, and the position may remain partially open while the market continues to move. Traders who size entries to the available depth but not exits are exposed precisely when the exit matters.

If a position is large enough that the entry had to be worked, the exit plan needs the same treatment — including the possibility that the exit will be forced at a moment of your choosing rather than the market's.

Common questions

Why did my order fill at several different prices?

Because the quantity available at the best price was smaller than your order. The remainder filled against the next levels, and the platform reported the weighted average.

Does a partial fill mean the broker rejected part of my order?

No. It means the book did not hold your full quantity at that price. Whether the rest is filled elsewhere, left resting, or cancelled depends on the order's duration and completion instruction.

Is a fill-or-kill order safer?

It is stricter, not safer. It guarantees you are never left with an unwanted partial position, at the cost of frequently not being filled at all. On thin instruments that trade-off can mean missing most of your intended entries.

Can I see market depth on a retail platform?

Often yes — several platforms include a depth-of-market panel, though it is usually hidden by default. What it shows depends on whether your broker aggregates external liquidity or quotes its own book.

Related reading