跳至主要内容

Websocket下單指南

信息

當前僅testnet可用

路徑

wss://stream-testnet.bybit.com/v5/trade

支持範圍

統一帳戶

category=linear, spot, option

鑒權請求

請求參數

參數是否必需類型說明
reqIdfalsestring可選參數, 可用於匹配響應
  • 若不傳, 該字段不會從響應種返回
  • optruestringOp類型 auth
    argsfalsestring["api密鑰", 過期時間, "簽名"]. 請參閱這裡來生成簽名

    響應參數

    參數類型說明
    reqIdstring
  • 若請求有傳, 則響應存在該字段
  • 若請求不傳, 則響應沒有該字段
  • retCodeinteger
  • 0: 鑒權成功
  • 20001: 重複請求
  • 10004: 無效簽名
  • 10001: 參數錯誤
  • retMsgstring
  • OK
  • 報錯信息
  • opstringOp類型
    connIdstring連接的唯一id

    請求示例

    {
    "op": "auth",
    "args": [
    "XXXXXX",
    1711010121452,
    "ec71040eff72b163a36153d770b69d6637bcb29348fbfbb16c269a76595ececf"
    ]
    }

    響應示例

    {
    "retCode": 0,
    "retMsg": "OK",
    "op": "auth",
    "connId": "cnt5leec0hvan15eukcg-2t"
    }

    下單/改單/撤單

    請求參數

    參數是否必需類型說明
    reqIdfalsestring請求reqId, 可作為請求的唯一標識, 若有傳, 則響應會返回該字段
  • 當傳, 需保證唯一, 否則將會拿到錯誤 "20006"
  • headertrueobject請求頭
    > X-BAPI-TIMESTAMPtruestring當前時間戳
    > X-BAPI-RECV-WINDOWfalsestring默認5000(毫秒). 請求的時間需要滿足該公式: Bybit服務器時間 - X-BAPI-RECV-WINDOW <= X-BAPI-TIMESTAMP < Bybit服務器時間 + 1000
    > RefererfalsestringAPI broker用戶返佣標識
    optruestringOp類型
  • order.create: 創建訂單
  • order.amend: 修改訂單
  • order.cancel: 撤銷訂單
  • argsfalsearray<object>參數數組, 目前僅支持一個元素
  • order.create: 請參閱創建訂單請求參數
  • order.amend: 請參閱修改訂單參數
  • order.cancel: 請參閱撤銷訂單參數
  • 響應參數

    參數類型說明
    reqIdstring
  • 若請求有傳, 則響應存在該字段
  • 若請求不傳, 則響應沒有該字段
  • retCodeinteger
  • 0: 成功
  • 10404: 1. op類型未找到; 2. category不支持/未找到
  • 10429: 觸發系統級別的頻率保護
  • 20006: reqId重複
  • 10016: 1.內部錯誤; 2. 服務重啟
  • 10019: ws下單服務正在重啟, 拒絕新的請求, 正在處理中的請求不受影響. 您可以重新/新建連接, 會分配到正常的服務上
  • retMsgstring
  • OK
  • ""
  • 報錯信息
  • opstringOp類型
    dataobject業務數據, 和rest api響應的result字段業務數據一致
  • order.create: 請參閱創建訂單響應參數
  • order.amend: 請參閱修改訂單響應參數
  • order.cancel: 請參閱取消訂單響應參數
  • headerobject響應頭信息
    > TraceIdstringTrace ID, 用於追蹤請求鏈路 (內部使用)
    > Timenowstring當前時間戳
    > X-Bapi-Limitstring該類型請求的帳戶總頻率
    > X-Bapi-Limit-Statusstring該類型請求的帳戶剩餘可用頻率
    > X-Bapi-Limit-Reset-Timestampstring如果您已超過該接口當前窗口頻率限製,該字段表示下個可用時間窗口的時間戳(毫秒)即什麽時候可以恢復訪問;如果您未超過該接口當前窗口頻率限製,該字段表示返回的是當前服務器時間(毫秒).
    connIdstring連接的唯一id

    請求示例

    {
    "reqId": "test-005",
    "header": {
    "X-BAPI-TIMESTAMP": "1711001595207",
    "X-BAPI-RECV-WINDOW": "8000",
    "Referer": "bot-001" // for api broker
    },
    "op": "order.create",
    "args": [
    {
    "symbol": "ETHUSDT",
    "side": "Buy",
    "orderType": "Limit",
    "qty": "0.2",
    "price": "2800",
    "category": "linear",
    "timeInForce": "PostOnly"
    }
    ]
    }

    響應示例

    {
    "reqId": "test-005",
    "retCode": 0,
    "retMsg": "OK",
    "op": "order.create",
    "data": {
    "orderId": "a4c1718e-fe53-4659-a118-1f6ecce04ad9",
    "orderLinkId": ""
    },
    "header": {
    "X-Bapi-Limit": "10",
    "X-Bapi-Limit-Status": "9",
    "X-Bapi-Limit-Reset-Timestamp": "1711001595208",
    "Traceid": "38b7977b430f9bd228f4b19724794dfd",
    "Timenow": "1711001595209"
    },
    "connId": "cnt5leec0hvan15eukcg-2v"
    }

    Ping

    請求參數

    參數是否必需類型說明
    optruestringOp類型. ping

    響應參數

    參數類型說明
    retCodeinteger響應碼
    retMsgstring響應信息
    opstringOp類型 pong
    dataarray數組會有有一個元素, 當前時間戳 (字符串類型)
    connIdstring連接的唯一id

    請求示例

    {
    "op": "ping"
    }

    響應示例

    {
    "retCode": 0,
    "retMsg": "OK",
    "op": "pong",
    "data": [
    "1711002002529"
    ],
    "connId": "cnt5leec0hvan15eukcg-2v"
    }