This page is about creating market orders. In the request, you must specify "tradeType": "market". For limit orders, please see here.

Market Orders vs. Limit Orders

Market orders can be created via the same WebSocket API for creating limit orders. The table below highlights the key differences in payload between a limit order and a market order:
FieldLimit Order ValueMarket Order Value
tradeTypelimitmarket
postOnlytrue or falseNot supported
maxSlippageNot supported0 - 1 inclusive
priceStrict priceExpected price
All other fields and behaviors are consistent with limit orders. For full details, see the Create Order - Limit documentation. Note that if maxSlippage is not specified, it will default to 0.02.

Fill Price

When submitting a market order, the price field in the payload represents the expected price for the order. The actual fill price may differ due to market conditions, but is constrained by the maxSlippage parameter.
  • For buy orders, the fill price will never exceed expectedPrice × (1 + maxSlippage).
  • For sell orders, the fill price will never be lower than expectedPrice × (1 - maxSlippage).
This mechanism ensures that your market order is executed within a predictable price range, providing protection against excessive slippage.

Order Fill and Cancellation Behavior

Market orders are only executed once and any unfilled quantities are cancelled. If your market order is not fully filled, you will receive a cancellation confirmation message, as described in Cancel Order By ID. The cancellation confirmation message will include filledQuantity and avgFillPrice fields if the order was partially filled. If your market order is fully filled, you will receive a completeFillOrder notification, as described in Order Filled Notifications.

IOC Orders

Immediate-Or-Cancel (IOC) orders allow traders to execute as much of the order as possible immediately, with any unfilled portion automatically cancelled. This can be achieved by placing a market order with a maxSlippage of 0.