跳到主要内容

下单

类型:TRADE · 权重:1 · 计入订单计数桶

状态:已实现。

POST /api/v3/order

下一笔 LIMIT(一直有效直到撤销)或 MARKET(立即成交否则撤销)现货订单。响应是受理确认,不是成交报告:即使订单立即成交,executedQty 也恒为 0。成交请从 myTrades 读取,最终状态请从 allOrders 读取。

请求 —— 所有参数放在 query string 中,signature 最后,请求体为空(见 请求规范)

POST /api/v3/order?symbol=CBTC-USDCB&side=BUY&type=LIMIT&quantity=0.001&price=50000&timestamp=1756600000000&signature=...

参数

字段类型必填说明
symbolstring是如 CBTC-USDCB。
sidestring是BUY 或 SELL。
typestring是LIMIT 或 MARKET。
quantitystring是基础资产数量,正小数。下单时不校验 stepSize / minQty;请在客户端自行取整。
pricestring仅 LIMIT限价,正小数(下单时不校验 tickSize)。MARKET 单必须不传(否则 -1100)。
newClientOrderIdstring否幂等 key;省略时自动生成随机 UUID。以 clientOrderId 回显。15 分钟内以相同值重复提交会返回原来的 orderId,不会再下一笔新单。
timestamp、recvWindow、signature见 鉴权。

timeInForce、quoteOrderQty、icebergQty、stopPrice、newOrderRespType、selfTradePreventionMode 会被忽略。

执行语义

  • LIMIT 以 GTC 方式挂单。现货始终为 1 倍:BUY 在下单时锁定 price × quantity 的计价资产,SELL 锁定 quantity 的基础资产。
  • MARKET 为 IOC,带 5% 保护价带:BUY 最多吃到 bestAsk × 1.05 的卖单,SELL 最低打到 bestBid × 0.95 的买单;未成交的剩余部分被撤销。保护价带的价格同时也是 BUY 锁定的金额。对手方一侧为空时以 -2010 Market order rejected: no counterparty liquidity. 拒绝。
  • 自成交防护始终开启:撮合器会跳过你自己的挂单并继续匹配下一个对手方;你的挂单既不会成交也不会被撤销。
  • 钱包出资账户(见 链上结算):price × quantity(MARKET 单为保护价 × quantity)必须不低于该交易对的 minNotional(-1013);账户必须已完成 MemberAuth(-2012)且未被冻结(-2010)。这些门槛在其他任何校验之前执行。

响应 — 200(值仅为示意)

{
"symbol": "CBTC-USDCB",
"orderId": "019910a4-9f21-7b34-8c56-1d2e3f4a5b6c",
"orderListId": -1,
"clientOrderId": "mm-quote-1756600000-17",
"transactTime": 1756600000123,
"price": "50000",
"origQty": "0.001",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY"
}
字段说明
orderIdUUID 字符串。用于 GET / DELETE /api/v3/order。
orderListId恒为 -1(无 OCO)。
clientOrderId你传入的 newClientOrderId,或自动生成的 UUID。不会被存储供后续查询——见 查询订单。
priceLIMIT 单回显 price;MARKET 单在本受理确认中为 "0"(GET /api/v3/order 与 allOrders 会把保护价作为 price 返回)。
origQty回显 quantity,未做归一化。
executedQty、cummulativeQuoteQty在本受理确认中恒为 "0.00000000"。
status恒为 "NEW"。
timeInForceLIMIT 为 "GTC",MARKET 为 "IOC"。

错误

HTTPcodemsg / 原因
400-1100side 或 type 非法;MARKET 单带了 price;交易服务拒绝了某个参数(未知交易对、price / quantity 非数字或非正数)。
400-1102symbol、quantity 或(LIMIT)price 缺失或为空。
400-1013Filter failure: NOTIONAL —— 低于 minNotional(钱包出资账户)。
422-2010余额不足以锁定(市场未激活或下单被风控闸门暂停时 msg 相同);或 MARKET 单无流动性;或账户被冻结。通过 msg 区分。
422-2012需要完成钱包注册(MemberAuth)。
429-1003权重桶或订单计数桶耗尽。
500-1000交易服务不可用。

鉴权错误(-1021、-1022、-2014、-2015)见 错误码。

与 Binance 的差异

  • 仅支持 LIMIT/GTC 与 MARKET/IOC。没有 LIMIT_MAKER、止损单、quoteOrderQty 或 newOrderRespType=FULL(响应永远不带 fills)。
  • orderId 为 UUID 字符串;clientOrderId 不可用于查询。
  • 参数必须放在 query string 中。