跳转到主要内容
订阅 order_responses 频道以接收订单响应。消息实时推送。

1. 身份认证

连接 wss://trade.qfex.com?api_key=YOUR_API_KEY 后立即发送:

2. 订阅

示例代码

响应示例

订单响应为实时数据。

自动转换为只减仓

在软清算及订单保证金释放期间,QFEX 可在没有客户端请求的情况下,将挂单转换为只减仓订单。order_responses 订阅者会对每个新转换订单收到一条 MODIFIED 更新。已经是只减仓的订单不会收到额外转换更新。 以下示例仅展示相关字段,省略其他标准订单响应字段:
转换保留价格/时间优先级。与客户端请求的改单不同,它不会替换订单 ID。

生命周期处理

  1. 依赖实时订单状态之前,先订阅频道。处理账户的主动推送;不要仅因 MODIFIED 不对应待处理请求就丢弃它。
  2. 更新本地订单的 reduce_only 标志,并保留转换事件用于诊断。不要假定该值一直等于 add_order 中发送的值,也不要假定保证金恢复后会自动变回 false。
  3. 继续处理成交和撤单。转换后的订单,只能成交执行时仍可减少的持仓数量。若会增加或反转持仓,不能成交的数量会以 status: "CANCELLED" 取消。这可能在委托价本来可以撮合时发生,包括其他订单或清算已经减少或平掉持仓之后。应结合较早的转换更新诊断撤单;单独的 CANCELLED 不能说明原因。
  4. 修改已转换订单时,发送 reduce_only: true。发送旧的 false 会以 CANNOT_MODIFY_NO_SUCH_ORDER 拒绝;客户端改单不能关闭只减仓。
  5. 重连后,重新认证并订阅,再使用获取用户订单或获取单笔订单核对当前委托,并读取每笔返回订单的当前 reduce_only。实时更新不会重放错过的事件,查询也不包含已完全成交或完全取消的订单。
例如,面对 5 单位多头,一笔已转换的 8 单位卖单最多成交 5 单位,随后剩余部分取消。如果尝试撮合时持仓已经为零,订单可能在没有成交的情况下收到 CANCELLED。最初的订单确认不保证其始终有资格执行原始数量。