Skip to main content
binXbase

Mechanics · Lesson 6 of 8 · 12 min read

Orders that wait

Resting limits, stop triggers and attached exits — what an order does in the hours between placement and fill, and what it has already reserved while it does it.

After this you can
Place an exit before you need it, and know exactly which price event fires it and what it locked when you placed it.

The short version

  • A resting order reserves its funds the moment you place it, not when it fills. That is why placing a limit order lowers your available balance immediately.
  • A stop order is not on any book. It is a condition being evaluated against the venue’s last trade print — never against the book, because a quote can flicker without anyone trading.
  • Triggering a stop moves no money at all. The reservation was taken at placement, so the conversion is a status change and nothing else.
  • Resting orders here are filled by a sweep every 5 seconds rather than the instant a price crosses. The price you get is exact; the timing is ours.
  • An exit placed in advance is the only kind that survives your being asleep, offline, or wrong about how you would react.

Most orders spend almost none of their life filling. They spend it waiting — and a waiting order is not inert. It is holding money, watching a specific signal, and carrying rules about what will end it. This lesson is about that stretch, because it is where the surprises live: balances that seem to have shrunk, stops that did not fire when the chart clearly touched the level, and exits that were never placed at all.

A resting order is already holding your money

Place a limit buy for 0.5 BTC at 60,000 and 30,000 USDT leaves your available balance immediately, before anything has traded. It is not gone — it is locked, reserved against that specific order, and it comes back the moment the order fills or is cancelled.

The alternative would be to check the balance at fill time, and it fails the first time two orders are open at once: both pass their check, both fill, and the account is overdrawn by an amount nobody authorised. Reserving at placement makes that impossible by construction rather than by vigilance.

What “resting” means when there is no local book

On a real venue, a resting order sits inside the exchange’s own book, and the matching engine fills it the instant an incoming order crosses it. This exchange has no book of its own — every price here comes from the venue — so “resting” means something slightly different, and it is worth being precise about it.

A background worker re-plans every open order against the live book on a fixed interval. If the venue’s book has reached your price, the order settles at what a taker at that price would have got. If it has not, nothing happens and it tries again.

A resting limit and the sweep that fills it. A real matching engine acts at the crossing; this one acts on the next pass, so the fill lands somewhere between zero and 5 seconds later. The price is exact — it is walked off the venue's own book — and the delay is ours.

Two consequences run in opposite directions and both are worth carrying:

  • In your favour: there is no queue. On a real venue your order waits behind everyone who arrived at that price before you, and “the market traded at my price and I did not get filled” is a normal experience. Here there is nobody ahead of you, because there is no local book to be ahead of you in.
  • Against you: the fill is late. Up to a whole interval late. In a calm market that is invisible. In a violent one it is the difference between the level you aimed at and the level the market was at when the sweep next looked.

The price a resting order gets here is the market’s. The moment it gets it is ours.

A stop is a condition, not an order

A stop-limit order is the one order type that is not an order yet. It carries two prices — a trigger and a limit — and until the trigger is met it is a condition being evaluated, sitting on no book anywhere and visible to nobody but you.

When the trigger is met, it becomes an ordinary resting limit order at its limit price, and from that instant the sweep treats it like any other. There are no special cases downstream, which is the point of the design: a triggered stop is not a third kind of thing to get wrong.

The transition moves no money. The reservation was taken at placement — at the limit price, exactly as if the order had rested from the start — so triggering is a status change and an append-only event, and nothing else. An order that had to find funds at trigger time could fail to find them, at the worst possible moment, which is precisely when a stop matters.

Why the trigger watches the tape

This is the detail that decides whether a stop behaves the way you expect, and it is almost never stated: the trigger is compared against the venue’s last trade print, and never against the book.

The book is intention. A quote can appear, sit, flicker and be withdrawn without anyone ever trading at it — and on a thin market it happens constantly. A print is the venue’s record that value actually changed hands at that price. A stop exists to react to the market moving, so it fires on the price at which the market actually moved.

An exact touch counts, in both directions: a buy stop fires at or above its trigger, a sell stop at or below. Requiring the price to trade all the way through the level would make a stop placed at a round number fire late or never — and round numbers are exactly where people place them.

Exits you attach before you need them

The best moment to decide where you will get out is before you are in — while the position is hypothetical and you have no money riding on the answer. Both tickets let you attach an exit to an entry, and the two work differently in a way worth knowing before you rely on either.

Swipe horizontally to compare all columns.

How attached exits differ between the spot and futures tickets
On the ticketSpotFutures
How many exitsOne — a take-profit or a stop-loss. A pair needs OCO, which the ledger does not support yet, and the ticket says so rather than implying otherwise.Both, as a take-profit and a stop-loss placed together.
When it is offeredOn a market buy, once signed in.On an entry that is not reduce-only.
What is actually placedA real limit sell, or a real stop-limit sell, for the amount the entry filled.Two reduce-only orders sized to that fill: a limit at the take-profit, and a stop-limit at the stop-loss.
When it is placedAfter the entry’s own transaction has committed. A settled fill is settled; a failure to place an exit must never unwind it, and if one does fail the order history records why the protection you asked for is missing.

The futures stop-loss carries one detail worth understanding, because it looks like a mistake until it does not. Its limit price is pushed 0.5% through its trigger, rather than sitting on it.

A stop-limit whose limit sits exactly on its trigger only fills if the market pauses politely at that price. Pushing the limit past it means that when the stop fires, the resulting order is immediately marketable and actually closes the position — which is the entire job of a stop-loss. It is not slippage tolerance being generous; it is the difference between an exit and a decoration.

Every state an order can be in

Six, and each of them means something specific. Reading them correctly is most of what the Open orders and Order history tabs are for.

Swipe horizontally to compare all columns.

The states an order passes through, and what each means
StateWhat it means
UntriggeredA stop whose condition has not been met. It is on no book, its funds are already reserved, and it is being checked against every trade print.
OpenA limit order waiting for the venue’s book to reach its price. The sweep tries it on every pass.
Partially filledSome of it traded and the rest is still resting. Perfectly normal — the book ran out of counterparties at an acceptable price.
FilledFinished, with every fill recorded at its own price and its own fee.
CancelledEnded by you. Any reserved funds returned in the same transaction.
ExpiredEnded by the system: a market order’s unfilled remainder, or a reduce-only exit whose position no longer exists. An expired order with a non-zero filled quantity is a partial fill, not a failure.

Cancelling, and what comes back

Cancelling returns the reservation in the same transaction that closes the order. There is no window in which the order is gone and the money has not come back, and no window in which the money is back and the order could still fill. Either both happened or neither did.

A cancel can also lose a race, and losing is the correct outcome. Every order is claimed atomically before it is touched — by the sweep, by the trigger, by your cancel — and whoever claims it first acts on it. If a sweep filled your order a fraction of a second before your cancel arrived, the cancel simply finds nothing to cancel and says so. What cannot happen is both.

Four ways waiting goes wrong

  • Mistaken belief: “My balance is wrong — money disappeared when I placed an order.”

    What actually happens: It moved from available to locked. An open order holds its funds from the moment it is placed, and returns them when it fills or is cancelled. The assets page shows both figures side by side for exactly this reason.

  • Mistaken belief: “The price hit my stop on the chart, so it must have triggered.”

    What actually happens: Only a trade print triggers a stop. A book that reached the level without anyone trading there does not, and a chart drawn from a different interval or feed can show a wick the trigger never saw. If you need a level to be respected exactly, a stop is the wrong instrument.

  • Mistaken belief: “A stop-loss guarantees I get out at that price.”

    What actually happens: It guarantees an order is created at that price. What that order then gets is whatever the book offers — which in a fast market can be materially worse. Our attached stop-loss pushes its limit through the trigger so it is actually marketable, and that is a deliberate trade of price certainty for exit certainty.

  • Mistaken belief: “I will just watch and get out manually.”

    What actually happens: You will be asleep, in a meeting, or convinced it is about to come back. An exit decided before the position exists is the only one made by someone with no money riding on the answer. That is the whole argument of position sizing, and it starts here.

Check yourself

You place a GTC limit buy for 10,000 USDT of BTC. What is your available balance now?
Lower by 10,000. The funds are locked against that order from the instant it was placed — not from the instant it fills — which is what makes it impossible for two open orders to spend the same money.
Your stop triggers. How much money moves at that moment?
None. The reservation was taken at placement, at the limit price, so triggering is a status change and an event in the order’s history. Money moves when the resulting limit order fills, like any other limit order.
The venue’s book crosses your resting price. When do you fill?
On the next sweep — up to 5 seconds later. The price you get is what a taker at that level would have got, walked off the venue’s real book. The delay is this engine’s, not the market’s, and a real matching engine would have acted at the crossing.
Your take-profit fills. What happens to the stop-loss underneath it?
It is expired by the sweep that notices the position is gone. It could not have over-closed anything even if it had fired first — a reduce-only order is capped at the position it is reducing — but leaving it visible would be a phantom on your orders list, so it is reaped.