ORDER FLOW AND MARKET STATES
What the engine lets your order do depends on which of the five postures the market is in: live, reduced, close-only, session-closed, halted. The posture is the same for a $49 challenge attempt, a 90 / 10 funded account, and a public user — there is no operator override. This page walks the full ladder, the admission rules that fire at each rung, and what a posture drop means inside a 30-day evaluation window.
Whether the engine accepts your order is the product of two checks: the signed payload itself must be valid, and the current market posture must permit the action you are requesting. The first is covered on the admission page; the table below summarizes the second. Each posture is an explicit admission rule — the engine rejects forbidden actions at the gate rather than letting them sit and silently fail.
| Market posture | What the engine allows |
|---|---|
| Live | Open, close, scale in, scale out — full directional and reduction flow at the standard 0.020% / 0.060% schedule |
| Reduced | New risk is admitted under tighter inventory caps and higher skew-adjusted taker pressure; reduction stays at standard cost |
| Close-only | Only risk-reducing flow is admitted; new opens, scale-ins, and same-side adds are rejected at the gate |
| Session-closed | Underlying venue is on a scheduled break (equity, metals, energy hours); positions are held but not marked against a stale tick |
| Halted | All new execution stops, including reduction, until the oracle path recovers or operator review clears the venue |
#Admission before matching
Before pricing logic runs, the engine classifies each request along three axes: does the target market exist and pass its freshness check, is the signed payload inside its validity window, and would the fill increase or reduce the account's directional risk. The add-vs-reduce distinction is what lets a market accept close orders while rejecting opens — close-only and reduced postures both depend on that classification rather than on a UI hint.
Production runs IOC-only. The gateway enforces GATEWAY_REQUIRE_IOC, so every signed order is evaluated against live state at arrival and any unfilled remainder is cancelled in the same transition. There is no working order book sitting between the trader and the engine, which means a posture transition takes effect on the next arriving order rather than retroactively touching resting size. That keeps stress behavior narrow and reproducible: every fill is a single signed payload meeting a single state snapshot.
#What each posture means for an attempt
- Live. The default posture during major crypto sessions. Open, close, scale in, scale out at the standard 0.020% maker / 0.060% taker schedule. Skew-adjusted taker pressure is at its baseline floor.
- Reduced. The most common "stress but functional" state. Fresh size is admitted, but the inventory cap is tighter, the skew-adjusted taker rate is higher, and the per-account directional notional limit moves down. Existing positions continue to mark, accrue funding, and bind to the maintenance margin floor — only new opens are throttled.
- Close-only. Reduction is open, opens are blocked. A long can sell to flat or smaller, but cannot scale up. A flat account cannot enter. Stop-loss and take-profit reductions still route. New same-side adds are rejected at admission with an explicit reason, not queued.
- Session-closed. The venue is honoring the underlying market's calendar — NYSE bell hours for equity perps, LBMA windows for metal perps, exchange hours for energy perps. Positions are held, but marking against a stale tick is suspended. Drawdown rule checks pause until the next session opens.
- Halted. No new execution, including reduction. Typically triggered by an oracle path break, a stress event, or an operator review. While halted, equity does not advance, fundingAccrued does not progress, and the 30-day evaluation window pauses. The clock resumes only when the engine restores a normal posture and the next signed order is admitted.
Posture changes are admission rules, not UI overlays. The current state is published before you sign — if you submit an open into a close-only market, the engine returns the rejection synchronously rather than sitting on the order. Inside a 30-day challenge window, a session-closed or halted period extends your deadline by the paused duration; a reduced or close-only period does not, because the engine is still admitting valid risk-reducing flow against your equity.