OKX WebSocket Orders Channel Push Behavior Adjustment Announcement

Published on Jul 16, 20262 min read

To help clients more clearly determine the final status of "post-only" new orders (including "mmp_and_post_only") and upcoming "rpi" new orders — and to avoid scenarios where an order is still canceled after the client has already received a "state: live" event — OKX plans to adjust the "state: live" event behavior for "post-only" and "rpi" orders in the order channel.

Impact details

Timing adjustment for the "state: live" event push: instead of being pushed immediately upon order receipt, it will now be pushed only after the order has successfully entered the order book (a delay of approximately 1 ms).

In failed order placement scenarios (price crosses the BBO and is canceled), the "state: live" update will be removed entirely — only a "state: canceled" update will be pushed.

Scenario

Before

After

"post-only" order placement failure (price crosses the BBO and is canceled)

"state: live" → "state: canceled"

Only "state: canceled" (no "state: live")

"post-only" order placed successfully

"state: live" pushed immediately

"state: live" (delayed ~1 ms)

"post-only" order placed successfully, then filled by one taker order

"state: live" → "state: filled"

"state: live" (delayed ~1 ms) → "state: filled"

"post-only" order placed successfully, then filled by multiple partial fills

"state: live" → "state: partially_filled" → "state: filled"

"state: live" (delayed ~1 ms) → "state: partially_filled" → "state: filled"

"post-only" order with "reduceOnly: true", size modified

"state: live" → "state: live" ("amendSource: 4, amendResult: 0")

"state: live" ("amendSource: 4, amendResult: 0") → "state: live"

For the upcoming "rpi" order, "rpiPxRound: false", order placement failure (canceled due to not meeting the price spacing rule)

N/A

Only "state: canceled" (no "state: live")

For the upcoming "rpi" order, "rpiPxRound: true", and price is modified

N/A

"state: live" ("amendSource: 6, amendResult: 0") → "state: live"

Effective date

For "rpi" orders: Demo Trading — 21 July; Live Trading — 28 July.

For "post_only" and "mmp_and_post_only" orders: both Demo Trading and Live Trading — mid-August.

Scope of impact

The order types affected are: "post_only", "mmp_and_post_only", and "rpi" (Retail Price Improvement).

Other order types — such as "limit" (regular limit orders), "market" (market orders), "ioc", and "fok" — will have their push behavior remain unchanged.