A ladder distributes one target quantity across several limit-price levels.
What it does
A ladder distributes a target quantity across several limit-price levels. It expresses a scaled entry or exit without manually creating each child order.
Each level becomes an independent limit order with its own position, fills, fees, and final state.
How it works
| Setting | What it controls |
|---|---|
| Minimum price | One boundary of the ladder range |
| Maximum price | The other boundary of the ladder range |
| Levels | The number of limit orders spread across the range |
| Total quantity | The amount allocated across all levels |
Polyester spaces the levels evenly across the range as limit GTC orders. Every level, after rounding, must independently satisfy the Pair's price increment, quantity increment, and minimum-order rules.
Levels are always spaced evenly. Geometric, weighted, or other distributions are not available.
The Ladder itself reserves nothing. All its orders are placed immediately, and each resting order reserves its own balance. The Ladder keeps running after the browser closes.
Placement is all-or-nothing. Polyester checks every level when the Ladder is created. If any level cannot be placed, for example because the balance does not cover it, the whole Ladder is rejected with LADDER_LEVEL_REJECTED: no Ladder and no child order is created, and nothing is reserved. Otherwise the Ladder and all of its child orders are created together.
Each account can have up to 5 Ladders on a Pair at once, and they also count toward its 100-trigger limit on that Pair. A Ladder that would pass either limit is rejected before any child is created. See Limits per Pair.
How a ladder ends
Canceling the ladder itself ends it right away as Canceled and cancels its open child orders. Otherwise, a ladder reaches its final status only after every child order has ended:
| Final status | When |
|---|---|
| Completed | At least one child order was placed and any of them filled, however the others ended. A ladder whose children filled nothing and were canceled only by self-trade prevention, or by Polyester while it recovered your account, also completes. |
| Failed | The order book refused every child order before any fill, so the ladder placed nothing. The failure reason is the first refused child's reason. |
| Canceled | You canceled the ladder itself, or none of its children filled and they were canceled by you, by a cancel-all, or by the dead man's switch. The cancel reason is a user request. |
Each child order keeps its own status and cancel reason. Fills are never reversed: a canceled ladder keeps the quantity its children already filled.
When to use it
- Use it when entry or exit should span a price range. Ladder fits a plan that intentionally distributes quantity across several limit-price levels.
- Avoid it when one price or immediate execution matters. Choose one Limit or Market order when separate children would add unnecessary exposure, reservations, or monitoring.
Review the generated children before submission. One level can fill while other levels remain active, so the result can be only part of the intended ladder.
Example
Let's say Bitcoin is currently trading at 100,000 USDT. You want to buy 0.01 BTC across several price levels instead of relying on one entry price. You choose a five-level LINEAR Ladder with 0.002 BTC at each level.
- Polyester creates Limit buys at 98,000, 99,000, 100,000, 101,000, and 102,000 USDT.
- Each 0.002 BTC child order is admitted and reserves balance independently.
- One price level can fill while the other child orders remain open.
- If any of the five levels could not be placed, for example because the balance did not cover it, Polyester would have rejected the whole Ladder with
LADDER_LEVEL_REJECTEDand created none of the child orders.
Result: The five planned child orders total 0.01 BTC and exactly 1,000 USDT across the example price range.
These are example prices. Rounding, Pair minimums, available balance, fills, and fees apply separately to every child order.
What to watch
- A wide range can leave some children far from the market.
- Open children reserve balance independently.
- Partial execution changes the remaining exposure across the range.
- Canceling the parent can race with a match at one level.
- A ladder does not guarantee that every level fills.