错误响应
下单和撤单错误通常以与批量请求长度相同的向量形式返回。
以下是可能的批量错误响应列表:
| 错误来源 | 错误类型 | 错误字符串 |
|---|---|---|
| Order | Tick | Price must be divisible by tick size. |
| Order | MinTradeNtl | Order must have minimum value of $10. |
| Order | MinTradeSpotNtl | Order must have minimum value of 10 {quote_token}. |
| Order | PerpMargin | Insufficient margin to place order. |
| Order | ReduceOnly | Reduce only order would increase position. |
| Order | BadAloPx | Post only order would have immediately matched, bbo was {bbo}. |
| Order | IocCancel | Order could not immediately match against any resting orders. |
| Order | BadTriggerPx | Invalid TP/SL price. |
| Order | MarketOrderNoLiquidity | No liquidity available for market order. |
| Order | PositionIncreaseAtOpenInterestCap | Order would increase open interest while open interest is capped |
| Order | PositionFlipAtOpenInterestCap | Order would increase open interest while open interest is capped |
| Order | TooAggressiveAtOpenInterestCap | Order rejected due to price more aggressive than oracle while at open interest cap |
| Order | OpenInterestIncrease | Order would increase open interest too quickly |
| Order | InsufficientSpotBalance | (Spot-only) Order has insufficient spot balance to trade |
| Order | Oracle | Order price too far from oracle |
| Order | PerpMaxPosition | Order would cause position to exceed margin tier limit at current leverage |
| Cancel | MissingOrder | Order was never placed, already canceled, or filled. |
重要提示:某些错误是负载本身的确定性函数,这些错误会作为预校验(pre-validation)的一部分提前返回。在这种情况下,整个负载只返回一个错误,因为其中一些错误并不针对特定的订单或撤单。
示例包括:空的订单批量、非只减仓(reduce-only)的 TP/SL 订单、订单价格偏离参考价过大,以及某些形式的 tick size 校验。
对于使用批量处理的 API 用户,建议处理一个批量多笔订单只返回单个错误的情况。此时,该响应可以在被送入回调函数之前复制 n 份,因为整个批量都是因同一原因被拒绝的。
对于使用历史订单的 API 用户,所有撤单/拒绝历史订单状态的列表可在这里查看。