Futures Order Lifecycle
This page describes the states a futures order moves through after you place it. Status values appear in the status field of every order response.
Status values
| Status | Description |
|---|---|
RAISED | Open order has been accepted by the exchange. |
EXECUTED | Order has fully executed. Terminal. |
PARTIALLY_EXECUTED | Order has been partially executed. Terminal — the unfilled remainder is no longer working. |
CANCELLED | User has cancelled the order. Terminal. |
CANCELLATION_RAISED | Intermediate state. We've requested cancellation; resolves to CANCELLED once the exchange confirms. |
State machine
Differs from Spot
Unlike Spot, PARTIALLY_EXECUTED is terminal for Futures. Once you see it, the unfilled remainder of the order is no longer working — you cannot expect it to keep filling. If you want to fill more, place a new order for the remaining quantity.
When you see RAISED
When you place an order, the response status may be RAISED. This means we've sent the order to the exchange and are waiting for an acknowledgement. To find out whether it eventually filled, cancelled, or expired, poll Get Order Status with the order_id until you see a terminal status.
Cancellation is two-phase
Calling Cancel Order moves the order to CANCELLATION_RAISED while we ask the exchange to cancel. Once the exchange confirms, status becomes CANCELLED. Don't treat CANCELLATION_RAISED as fully cancelled — the order may have filled in the gap before the cancel was processed.
Tracking position-level effects
Order events feed position state. After an order fills or partially fills, check Get Positions to see the resulting position size, average entry price, and unrealised PnL. See Position Lifecycle.