Skip to main content
Reduce-only is a flag you attach to an order. It guarantees the order can only decrease an existing position — never open a new one, never increase one, and never flip you to the other side. The failure it prevents is specific and expensive. You place a sell to close a long. Before it fills, the long closes some other way — a stop fires, a liquidation runs, you close manually. Your sell is now an order to open a short. Without the flag, it fills, and you are short a position you never intended to hold, discovered later.

Checks at submission

An order carrying the flag is rejected outright if any of the following holds: In one-way mode the direction rule is simple: long positions accept only sells, shorts only buys. In hedge mode it is per side — holding only a long, a reduce-only buy is rejected, because there is no short for it to close.

Single order, not the total

The size check applies to each order individually, not to the sum of your reduce-only orders. That is deliberate. You can have several reduce-only orders resting at different prices whose combined size exceeds your position — a common and legitimate way to ladder an exit, because you expect only some of them to fill. What prevents over-reduction is not submission-time arithmetic but what happens next.

Automatic trimming

Whenever your position actually shrinks, the protocol re-evaluates every reduce-only order on that side. If their combined size now exceeds the position, they are trimmed to fit.
A fill
A stop firing
Liquidation
Deleveraging
The position shrinkshowever it shrank
Reduce-only total now exceeds it?
No change
Trimmed to fit
Counted in the totalTriggered conditional orders carrying the flag
Not countedOrdinary orders that merely happen to close
This is what makes the guarantee hold under any sequence of events. It does not matter how the position shrank — a fill, a stop, a liquidation, deleveraging. The moment it does, the orders resting against it are brought back into line, and the total that can execute never exceeds what you hold. Triggered conditional orders carrying the flag are included in the total. Ordinary orders that happen to be in the closing direction are not — an unflagged order is not a promise, and the protocol will not treat it as one.
Trimming fires on the position actually changing, not on you placing another order. Submitting an ordinary sell alongside your reduce-only sells changes nothing until it fills — at which point the position drops and trimming runs.

No margin is reserved

A reduce-only order does not reserve margin, and is accepted even when your available balance is zero. This matters most in exactly the situation you would want it. An account close to liquidation has no free margin, and if closing required reserving some, you would be unable to place the order that would save you. Since the order can only reduce risk, requiring collateral to place it would be backwards.

Where it is used

  • Manually, when you intend to close and want certainty that the order cannot do anything else.
  • In take-profit and stop-loss orders, which are reduce-only by nature — a protective order that could open a position would be a trap.
  • In automated strategies, where the flag is the difference between a bot that exits cleanly and one that silently reverses after an unexpected close.
Reduce-only guarantees an order cannot increase your position. It does not guarantee execution. In a fast move a reduce-only limit order may not fill at all, and being trimmed to a smaller size is not a failure — it is the flag doing its job.

Where to go next

Take-profit and stop-loss

Protective orders that are reduce-only by construction.

Conditional orders

How the flag is re-checked at the moment a trigger converts.

Order types

The order forms the flag can be attached to.

Quick reverse

Deliberately flipping direction, which is the opposite intent.