A partial fill is when only part of your order gets executed — you asked to buy 10 coins and ended up with 6, with the other 4 still waiting or cancelled. It happens because there wasn't enough available at your price to satisfy the whole order. It's routine, not an error — but automated strategies have to handle the leftover deliberately.
Why do partial fills happen?
Because every trade needs someone on the other side, and sometimes there aren't enough of them at your price. Exchanges run on an order book — a live list of how much everyone is willing to buy or sell at each price. The amount sitting at each price level is called depth, and it's finite. If you offer to buy 10 coins at $50 but the sellers at $50 only add up to 6 coins, the exchange fills the 6 it can and leaves the rest of your order open, waiting for more sellers to show up at that price. Nothing broke. The market simply contained less of what you wanted, at the price you named, than you asked for.
What does a partial fill look like in practice?
Walk through the 10-coin example with numbers and it stops being abstract. You place a limit order: buy 10 coins at $50, spending up to $500. The order book has 6 coins offered at $50. The exchange matches you with those sellers instantly — you now own 6 coins and have spent $300. Your order stays on the book showing "6 of 10 filled," with a remaining bid for 4 coins at $50. From here, three futures: more sellers arrive at $50 and the rest fills; the price rises and the remainder never fills; or you (or your bot) cancel the remainder and walk away with 6. The key mental shift: your real position is 6 coins, not the 10 you planned for — and every later decision has to start from 6.
Why do bots have to handle the remainder?
Because a bot that assumes its orders fill completely is doing math on a position it doesn't have. Suppose the strategy's plan was: buy 10 coins, then place a stop-loss to sell 10 if the price drops. After a partial fill of 6, a naive bot places a sell order for 10 — 4 more than it owns, which the exchange may reject outright or, in some account setups, execute as an unintended short position (a bet against the coin you were trying to own). Well-built bots therefore read back the actual filled amount after every order and base stops, targets, and position sizing on that number. They also apply a rule to the leftover — keep waiting, reprice, or cancel after a timeout — so unfilled remainders don't linger on the book as forgotten orders.
Is a partial fill a bad thing?
Usually not — it's the normal texture of trading in any market with finite depth, and the honest concern is different: partial fills quietly worsen with size. A 10-coin order in a deep market fills whole; a 10,000-coin order in a thin one fills in fragments at drifting prices. That means results from trading small don't automatically scale up — execution gets harder as orders get bigger, and no software eliminates that. What you can control is whether remainders are handled by explicit rules or by accident. Liquid Edge — non-custodial automated algorithmic crypto trading and portfolio management — handles execution details like fill tracking at the platform level, so a strategy you build in works from actual fills on your own exchange account, not intended ones.
