Orders, RMS & Exchange¶
For order APIs, first identify where the order was in its lifecycle when the error happened. This is safer than handling every failure only by HTTP status.
50 documented errors
Order Error Lookup
Search order placement, modify/cancel, flexi/basket, RMS, margin, and exchange rejection errors.
Order Lifecycle¶
Created locally
|
Submitted to Nubra
|
Broker / OMS accepted
|
Exchange acknowledged
|
Open / Partial / Filled / Rejected / Cancelled
| Stage | Failure Pattern | Handling |
|---|---|---|
| Created locally | Invalid input, missing strategy fields | Stop before API call. |
| Submitted to Nubra | HTTP timeout, network disconnect | Reconcile before retry. |
| Broker / OMS accepted | Session/routing issue, delayed ACK | Poll order status and watch WebSocket. |
| Exchange acknowledged | RMS rejection, price band, market closed | Mark rejected and show reason. |
| Open / Partial | WebSocket delayed, partial fill mismatch | Confirm latest status from REST orderbook. |
| Filled | Slippage or unexpected quantity | Update strategy P&L and audit log. |
| Cancel / Modify | Already executed, stale order ID | Fetch latest order state first. |
RMS and Exchange Rejections¶
RMS and exchange rejections are usually final for that payload.
| Rejection | Meaning | Action |
|---|---|---|
| Insufficient margin | Funds or collateral are not enough | Check funds and reduce order size. |
| Insufficient holdings | Sell quantity exceeds available holdings | Refresh holdings and available quantity. |
| Aggressor limit | Limit price is too aggressive for market rules | Recalculate price against current bid/ask. |
| Price band hit | Price violates exchange band | Use valid price range or wait. |
| Invalid lot size | Quantity does not match contract lot | Round to valid lot multiple. |
| Market closed | Segment is not open for trading | Retry only when market is open. |
Retry Rule¶
Do not retry a rejected order without changing the payload or account state. For example, fix margin, holdings, price, quantity, or product before placing again.