Limit order not being filled

Had a limit order for 8.7p on Eddie Stobart. Price dropped to 8.5p at least 30 minutes after I submitted my buy order. My order wasn’t filled and now the price has gone back up.

I assume there’s a logical reason why or how that’s happened, but was hoping someone could explain it to me?

If I’m not able to trust that limit orders are going to be filled then for me personally there’s not much point in paying for Plus.

1 Like

It’s seems to have been below 8.70 for a total of about 12 minutes since this morning. But it is a good question, there’s been 6 opportunities for the order to have been triggered up until now (9:29), it would be good to understand some more detail on how/when these orders are actually triggered

1 Like

You might get an answer quicker using the chat. If you want an answer here maybe change the category to “Help”

I didn’t put it in #help because it’s not an urgent support request really. I was more curious as to how things are working on the backend and to stimulate conversation around the subject :slightly_smiling_face:


Yeah looking at these timestamps my order should have filled. I can’t be sure of the exact time but I think I placed it around 8.30am.

Could it be the spread? If the chart is only showing the latest trades price, could they be sells and therefore the buy price never went low enough to trigger your limit order?

I had the same issue with few other stocks :frowning:

I really think FT should add bid/ask spreads to the in app stats.


I had a similar situation and it went through when I split my order into batches?

1 Like

My limited understanding would suggest that there might not have been enough stocks being offered at this price, which prevented order from completion.


Thinking about it you’re probably right.

If Freetrade only fills the order if it can fill it 100%, then there may just not have been enough stocks at the requested price.

It would be nice to have the option of partial fills, but I suspect that would take quite a bit more work on the backend.

1 Like

You need to take into account the bid offer, so to get filled on a limit order the market offer needs to be at or below your bid. The difference between the bid and offer is called the spread and I can see on my Bloomberg terminal that the current bid is 8.5 and the offer 9 (has been like this for most of the morning) so if you were to bid at 8.7 now you would only get done when that 9 offer lowered and matched 8.70. Some people might ‘hit the bid’ at 8.50 and this is where they sell, but that doesn’t mean you will be able to buy (as the offer hasn’t changed).
Also the more the stock is traded the tighter the spread generally. Hope this makes sense.

Take a look at the photo below for more details.


I see. So what you’re saying is a seller could essentially leap frog my bid and offer at a price below mine?

I assumed the systems would automatically match them with my bid at a higher price, but maybe that’s not always how it works?

So I’m not sure how the bids and offers are posted with the retail brokers, what might happen is that they don’t actually post your 8.7 bid in the market due to its size, what they might do is pay the offer when the offer comes down to 8.7. I don’t know how large your bid was but the smaller bids are unlikely to be placed in the market due to minimum order size requirements and the potential for market manipulation. Hope this helps but it’s clear that some on this forum are expecting their orders to be filled when the ‘mid’ is at their rate (mid is just the middle of the bid and offer) and really they need to be waiting for the offer to be at their rate. :slight_smile:

1 Like

So my first limit order was for around ~£900 so fairly small. I’ve since revised that down to £300 in case smaller limit orders were more likely to go through. Both bids at 8.7p.

The price is now 8.6p and order hasn’t filled. As far as I understand if Freetrade is reporting 8.6p it’s because an offer and a bid have met at that price, correct? A trade has taken place.

What I’m confused about is how it can skip my bid of 8.7p entirely. I’ve had the limit orders in all day, there’s been multiple chances for it to go through and it hasn’t.

@freetrade could you chime in what might be happening?

The price displayed is based on the most recent transaction (15 minute delayed) and doesn’t mean that you can actually buy at that price. If the price displayed is 8.6p then you might be able to buy at 9.0p and sell at 8.4p.

It’s also possible that the limit order was triggered but the price offered for your specific order was higher than 8.7p and was quietly rejected.

Ok I’ve fundamentally misunderstood that then.

I was under the impression the price displayed was the price at which the last trade executed. Hence if that price was below my limit order me being slightly confused.

If you’re saying that the price displayed is the middle of the spread then that would explain why my order may have not been filled.


I realise I’ve added some confusion here by giving a sell price of 8.4p in my example. I meant to indicate that the price is fluid so two transactions in a row are likely to get a different price.

The price shown is the last trade price but you don’t know whether that last trade was a buy or a sell. Sometimes you’ll see the price graph spiking up and down between two prices. When that happens it’s not that the price is actually going up and down, it’s because some of them are buys and the rest are sells.

If the price dipped just slightly below your limit order then the last trade was probably a sell and the buy price is probably still above the limit.


This topic was automatically closed 416 days after the last reply. New replies are no longer allowed.