New Order Single (35=D)
Example New Margin Order
Order Cancel/Replace Request (35=G)
Used to modify an existing order without canceling it.Supported Modifications
- OrderQty: Increase or decrease the quantity. Increasing quantity forfeits queue priority.
- Price: Change the limit price.
Order Cancel Request (35=F)
Cancel all remaining quantity of an existing order.Execution Report (35=8)
This message is sent by the exchange to reflect changes to an order’s state.Order Status (39)
- New<0>: Active order, no fills
- Partially Filled<1>: Some quantity filled
- Filled<2>: Completely filled
- Canceled<4>: Canceled
- Replaced<5>: Order modified via Cancel/Replace
- Pending Cancel<6>: Cancel pending
- Rejected<8>: Order rejected
- Pending New<A>: Order pending acceptance
- Expired<C>: Time-in-force expired
- Pending Replace<E>: Modification pending
With default settings, expiry-style system cancellations are reported as
Canceled<4>. If 21012 (UseExpiredOrdStatus)=Y, expiry-style system cancellations emit Expired<C>.Order Rejection Reasons (103)
- Unknown symbol<1>
- Exchange closed<2>
- Order exceeds limit<3>
- Too late to enter<4>
- Stale order<5>
- Duplicate order<6>
- Unsupported order characteristic<11>
- Incorrect quantity<13>
- Unknown account<15>
- Other<99>
Execution Types (150)
- New<0>
- Trade<F>
- Canceled<4>
- Replaced<5>
- Rejected<8>
- Expired<C>
- Pending New<A>
- Pending Cancel<6>
- Pending Replace<E>
Text Field Values (58)
Common values include:EXCHANGE_UNAVAILABLEINTERNAL_ERRORMARKET_ALREADY_CLOSEDMARKET_INACTIVEMARKET_NOT_FOUNDSELF_CROSS_ATTEMPTORDER_ALREADY_EXISTSEXCEEDED_PER_MARKET_RISK_LIMITEXCEEDED_ORDER_GROUP_RISK_LIMITORDER_GROUP_NOT_FOUNDFOK_INSUFFICIENT_VOLUMEPOST_ONLY_CROSSORDER_GROUP_CANCELTAKER_CANCEL_FOR_SELF_TRADE_PREVENTIONMAKER_CANCEL_FOR_SELF_TRADE_PREVENTIONIMMEDIATE_OR_CANCELLED
OrderCancelReject (35=9)
Exchange-returned amend and cancel failures are returned as OrderCancelReject (35=9), not ExecutionReport.Position and Fee Information
WhenExecType = Trade:
Collateral Changes
Party Information
Party fields from the original request are echoed in execution reports when a sub-account is involved.Rejection Reasons (102)
- Too late to cancel<0>
- Unknown order<1>
- Other<99>
Mass Cancel Request (35=q)
Cancel all orders for the trading session. Only available on KalshiNR (NewOrderMode) sessions.Mass Cancel Report (35=r)
Response to mass cancel request.Individual ExecutionReports follow for each cancelled order.