跳转到主要内容
连接 trade.qfex.com 后,必须在 1 分钟内完成认证,否则服务器会关闭连接。认证方式为 HMAC-SHA256 签名或有效 JWT 令牌。

工作方式

HMAC

  1. 连接 wss://trade.qfex.com?api_key=YOUR_PUBLIC_KEY。
  2. 生成密码学安全随机 nonce(十六进制编码,最长 100 个字符),并获取当前 Unix 时间戳。
  3. 构造字符串 ${nonce}:${unix_ts},使用私密密钥计算 HMAC-SHA256,再将结果编码为十六进制签名。
  4. 发送包含下述 hmac 对象的认证载荷。nonce 在 15 分钟窗口内必须唯一。

JWT

对于 JWT 会话,包括通过 QFEX OAuth 获取的令牌,连接时将 JWT 作为查询参数:
随后使用同一个 JWT 认证:
要使已认证交易 WebSocket 会话使用子账户,在 hmac 或 jwt 旁添加可选字段 account_id。省略时,连接使用主账户。

Builder 归因

要将交易手续费归因给开发者,在同一认证载荷中添加可选的 builder_code。该代码为开发者在开发者设置或通过 Builder Codes API创建的 UUID。
代码在连接的整个生命周期内生效。该连接提交的普通订单、触发单和 TWAP 订单自动继承代码,无需在每个订单中重复添加。 浏览器 WebSocket 客户端不能设置自定义握手请求头,因此应通过 params.builder_code 传递代码。完整 OAuth 至交易流程见开发者集成指南。

示例代码

响应示例

客户端成功认证后,服务器通过定期发送 WebSocket ping 帧形式的心跳消息保持连接。