English
NAV
console python

中文社區和參考資料

歡迎使用 Bybit APIs 和 Websocket官方文檔!

如果您在使用API的過程中遇到問題需要幫助,請加入我們的 官方Telegram API討論群

中文社區和參考資料

更新日誌

2021-09-03

Websocket API

2021-06-03

REST API

2021-05-20

REST API

2021-05-17

REST API

2021-05-12

REST API

2021-05-12

REST API

2021-05-07

REST API

2021-04-15

REST API

2021-04-14

REST API

2021-04-07

REST API

2021-04-02

REST API

2021-03-12

REST API

2021-02-25

REST API

Websocket API

2021-03-01

REST API

FAQ

reduce_only and close_on_trigger - what's the difference?

Why aren't all my orders showing on the website?

Calculating order size based on available wallet balance

Can I exchange assets with the API?

Where are Bybit's servers located?

AWS Singapore, Availability Zone ID apse1-az3.

How do I get funds for testnet?

To get testnet funds, please contact the website's customer support using the yellow support button shown in the bottom-right corner.

Why are my Closed PNL prices inaccurate?

Why are values returned to too many decimal places? (float precision issue)

鑒權/認證

所有private接口都需要認證,public 接口不需要認證。

公共參數

需要簽名的接口必須包含以下參數:

另外我們提供可選的recv_window參數(單位是毫秒,默認值為5000),來指定請求在多長時間內有效,同時用來防止重放攻擊。

構建請求

拼接參數示例(以修改槓桿率為例):

param_str = "api_key=B2Rou0PLPpGqcU0Vu2&leverage=100&symbol=BTCUSDH21&timestamp=1542434791747"
param_str = "api_key=B2Rou0PLPpGqcU0Vu2&leverage=100&symbol=BTCUSDH21&timestamp=1542434791747"

# api_key=B2Rou0PLPpGqcU0Vu2&
# leverage=100&
# symbol=BTCUSDH21&
# timestamp=1542434791747

參數按照 字母順序 排列,然後計算sign

1. 所有參數按照字母順序排序,然後按照query string格式拼接。

2. 使用HMAC_SHA256算法對第1步中拼接的query string簽名,並轉換為16進製字符串,得出sign參數。

GET請求格式(查詢賬號余額):

GET /futures/private/order?symbol=BTCUSDH21&api_key=B2Rou0PLPpGqcU0Vu2&timestamp=1542434791000&sign=670e3e4aa32b243f2dedf1dafcec2fd17a440e71b05681550416507de591d908 HTTP/1.1
Host: api-testnet.bybit.com

POST請求格式(創建訂單):

POST /futures/private/order/cancel HTTP/1.1
Host: api-testnet.bybit.com
Content-Type: application/json

{
    "api_key": "B2Rou0PLPpGqcU0Vu2",
    "symbol": "BTCUSDH21",
    "order_id": "3bd1844f-f3c0-4e10-8c25-10fea03763f6",
    "timestamp": 1542434791000,
    "sign": "670e3e4aa32b243f2dedf1dafcec2fd17a440e71b05681550416507de591d908"
}

3. 將sign參數加到請求參數中即可;註意GETPOST請求參數格式不同,詳見右邊示例。

行情接口

以下市場行情數據接口不需要驗權.

Orderbook

請點擊查看接口描述。

查詢K線數據

請點擊查看接口描述。

合約最新信息

請點擊查看接口描述。

平臺交易歷史數據

請點擊查看接口描述。

查詢合約信息

請點擊查看接口描述。

查詢強平訂單數據

請點擊查看接口描述。

標記價格K線

請點擊查看接口描述。

查詢指數價格K線數據

請點擊查看接口描述。

平臺進階數據

未平合約持倉數量

請點擊查看接口描述。

主動成交大額訂單

請點擊查看接口描述。

用戶多空持倉比率

請點擊查看接口描述。

賬戶/交易接口

以下賬戶/交易接口都需要鑒權.

活動單

創建活動委托單

請求示例

curl https://api.bybit.com/futures/private/order/create \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","side"="Buy","symbol"="BTCUSDM21","order_type":"Market","qty":10,"time_in_force":"GoodTillCancel","timestamp":{timestamp},"sign":"{sign}"}'

import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_new(side="Buy",symbol="BTCUSDM21",order_type="Market",qty=1,time_in_force="GoodTillCancel").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "user_id": 1,
        "order_id": "335fd977-e5a5-4781-b6d0-c772d5bfb95b",
        "symbol": "BTCUSDM21",
        "side": "Buy",
        "order_type": "Limit",
        "price": 8800,
        "qty": 1,
        "time_in_force": "GoodTillCancel",
        "order_status": "Created",
        "last_exec_time": 0,
        "last_exec_price": 0,
        "leaves_qty": 1,
        "cum_exec_qty": 0,
        "cum_exec_value": 0,
        "cum_exec_fee": 0,
        "reject_reason": "",
        "order_link_id": "",
        "created_at": "2019-11-30T11:03:43.452Z",
        "updated_at": "2019-11-30T11:03:43.455Z"
    },
    "time_now": "1575111823.458705",
    "rate_limit_status": 98,
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100
}

市價活動委托: 一個傳統的市場價格訂單,會以當前的最優價格為您成交訂單。當且僅當選擇市價單時,price可為空!為了保護市價單遭遇嚴重的滑點,Bybit將市價單轉為限價單進入撮合,買單價格高於最優賣價,賣單價格低於最優買價。限價價格和成交價格均可通過用戶成交記錄接口查詢。

限價活動委托: 您可以為您的訂單設置一個執行價格,當市場價格達到您的設置價格時,系統會為您成交訂單。

止盈止損: 您僅能在開倉時設置止盈止損條件單,一旦持有倉位後提交活動委托時關聯的止盈止損則不會生效。

委托數量: 表示您要購買/賣出的永續合約數,對於委托數量目前Bybit只允許提交正整數。

委托價格: 如果是下限價單,該參數為必填. 在沒有倉位時,做多的委托價格需高於市價的10%、低於1百萬。如有倉位時則需優於強平價。價格增減最小單位請參考交易對接口響應中的price_filter字段。

自定義條件單ID: 您可以自定義活動委托訂單ID,我們會為您關聯到系統的訂單ID,並把系統的唯一訂單ID在活動委托創建成功後一並返回給您,您可以使用該訂單ID去取消活動委托,同時要求您傳遞的自定義訂單ID最大長度不超過36個字段且唯一

每個賬戶最多可同時持有500個活動訂單。這是針對合約的,因此可以允許出現例如:賬戶同時持有300個BTCUSD的活動單、280個ETHUSD合約的活動單。

當您達到訂單上限的時候的時候,仍然可以下單設置了參數reduce_onlycloseOnTrigger的訂單。

HTTP 請求

POST /futures/private/order/create

請求參數

參數 是否必須 類型 說明
position_idx true integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
side true string 方向
symbol true string 合約類型
order_type true string 委托單價格類型
qty true integer 委托數量(1個委托1美元),只能為正整數
price false number 委托價格
time_in_force true string 執行策略
reduce_only false bool 只減倉
close_on_trigger false bool 觸發後平倉. 如果下平倉單,請設置為true,避免因為保證金不足而導致下單失敗
order_link_id false string 機構自定義訂單ID, 最大長度36位,且同一機構下自定義ID不可重復
take_profit false number 止盈價格,僅開倉時生效
stop_loss false number 止損價格,僅開倉時生效
tp_trigger_by false string 止盈激活價格類型,默認為LastPrice
sl_trigger_by false string 止損激活價格類型,默認為LastPrice

返回參數

參數 類型 說明
user_id number 用戶ID
order_id string 訂單ID
symbol string 合約類型
side string 方向
order_type string 交易記錄類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
order_status string 訂單狀態
last_exec_time string 最近一次成交時間
last_exec_price string 最近一次成交價格
leaves_qty number 剩余委托數量
cum_exec_qty number 累計成交數量
cum_exec_value number 累計成交價值
cum_exec_fee number 累計成交手續費
reject_reason string 被拒單的原因
order_link_id string 機構自定義訂單ID
created_at string 創建時間
updated_at string 更新時間
take_profit number 止盈價格
stop_loss number 止損價格
tp_trigger_by string 止盈激活價格類型,默認為LastPrice
sl_trigger_by string 止損激活價格類型,默認為LastPrice

查詢活動委托

請求示例

curl "https://api.bybit.com/futures/private/order/list?api_key={api_key}&timestamp={timestamp}&sign={sign}&symbol=BTCUSDM21"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_getOrders(symbol="BTCUSDM21",order_status="New").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "data": [
            {
                "user_id": 160861,
                "position_idx": 0,
                "order_status": "Cancelled",
                "symbol": "BTCUSDM21",
                "side": "Buy",
                "order_type": "Market",
                "price": "9800",
                "qty": "16737",
                "time_in_force": "ImmediateOrCancel",
                "order_link_id": "",
                "order_id": "fead08d7-47c0-4d6a-b9e7-5c71d5df8ba1",
                "created_at": "2020-07-24T08:22:30Z",
                "updated_at": "2020-07-24T08:22:30Z",
                "leaves_qty": "0",
                "leaves_value": "0",
                "cum_exec_qty": "0",
                "cum_exec_value": "0",
                "cum_exec_fee": "0",
                "reject_reason": "EC_NoImmediateQtyToFill"
            }
        ],
        "cursor": "w01XFyyZc8lhtCLl6NgAaYBRfsN9Qtpp1f2AUy3AS4+fFDzNSlVKa0od8DKCqgAn"
    },
    "time_now": "1604653633.173848",
    "rate_limit_status": 599,
    "rate_limit_reset_ms": 1604653633171,
    "rate_limit": 600
}

獲取我的活動委托單列表。

創建/取消訂單是異步的,因此該接口可能返回的數據可能會有延遲。如果要獲取訂單的實時信息,可以調用接口實時查詢活動單信息.

HTTP 請求

GET /futures/private/order/list

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
order_status false string 指定訂單狀態查詢訂單列表。不傳該參數則默認查詢所有狀態訂單。該參數支持多狀態查詢,狀態之間用英文逗號分割。
direction false string 搜索方向:prev:上一頁,next:下一頁,默認為 next
limit false integer 每頁數量, 最大50. 默認每頁20條
cursor false string 翻頁標記,請使用返回的cursor,簽名時使用返回的原始數據,發送request時請進行urlencode

返回參數

參數 類型 說明
data > user_id integer 用戶ID
data > position_idx integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
data > symbol string 合約類型
data > side string 方向
data > order_type string 交易記錄類型
data > price string 委托價格
data > qty string 委托數量
data > time_in_force string 執行策略
data > order_status string 訂單狀態
data > leaves_qty string 剩余委托數量
data > leaves_value string 剩余掛單數量對應的預估價值
data > cum_exec_qty string 累計成交數量
data > cum_exec_value string 累計成交價值
data > cum_exec_fee string 累計成交手續費
data > reject_reason string 被拒單的原因
data > order_link_id string 機構自定義訂單ID
data > created_at string 創建時間
data > order_id string 訂單ID
data > take_profit number 止盈價格
data > stop_loss number 止損價格
data > tp_trigger_by string 止盈激活價格類型,默認為LastPrice
data > sl_trigger_by string 止損激活價格類型,默認為LastPrice
cursor string 翻頁標記

撤銷活動委托單

請求示例

curl https://api.bybit.com/futures/private/order/cancel \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","order_id":"","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_cancel(symbol="BTCUSDM21", order_id="").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "user_id": 1,
        "order_id": "3bd1844f-f3c0-4e10-8c25-10fea03763f6",
        "symbol": "BTCUSDM21",
        "side": "Buy",
        "order_type": "Limit",
        "price": 8800,
        "qty": 1,
        "time_in_force": "GoodTillCancel",
        "order_status": "New",
        "last_exec_time": 0,
        "last_exec_price": 0,
        "leaves_qty": 1,
        "cum_exec_qty": 0,
        "cum_exec_value": 0,
        "cum_exec_fee": 0,
        "reject_reason": "",
        "order_link_id": "",
        "created_at": "2019-11-30T11:17:18.396Z",
        "updated_at": "2019-11-30T11:18:01.811Z"
    },
    "time_now": "1575112681.814760",
    "rate_limit_status": 98,
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100
}

所有撤銷活動委托都必須填寫order_idorder_link_idorder_id - 當您成功創建了活動委托時會為您返回36位唯一的訂單ID。

您可以撤銷未成交、部分成交的活動委托單。但全部成交的活動委托不可取消。

HTTP 請求

POST /futures/private/order/cancel

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
order_id false string 訂單ID。如果未填order_link_id則為必填字段。
order_link_id false string 機構ID。如果未填order_id則為必填字段。

返回參數

參數 類型 說明
user_id number 用戶ID
order_id string 訂單ID
symbol string 合約類型
side string 方向
order_type string 交易記錄類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
order_status string 訂單狀態
last_exec_time string 最近一次成交時間
last_exec_price string 最近一次成交價格
leaves_qty number 剩余委托數量
cum_exec_qty number 累計成交數量
cum_exec_value number 累計成交價值
cum_exec_fee number 累計成交手續費
reject_reason string 被拒單的原因
order_link_id string 機構自定義訂單ID
created_at string 創建時間
updated_at string 更新時間

撤銷所有活動委托單

請求示例

curl https://api.bybit.com/futures/private/order/cancelAll \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_cancelAll(symbol="BTCUSDM21").result())

響應示例

{
    "ret_code": 0,      
    "ret_msg": "OK",    
    "ext_code": "",     
    "ext_info": "",
    "result": [
        {
            "clOrdID": "89a38056-80f1-45b2-89d3-4d8e3a203a79",  
            "user_id": 1,                                  
            "symbol": "BTCUSDM21",                                
            "side": "Buy",                                      
            "order_type": "Limit",                              
            "price": "7693.5",                                  
            "qty": 1,                                           
            "time_in_force": "GoodTillCancel",                  
            "create_type": "CreateByUser",                     
            "cancel_type": "CancelByUser",                      
            "order_status": "",                                 
            "leaves_qty": 1,                                    
            "leaves_value": "0",                                
            "created_at": "2019-11-30T10:38:53.564428Z",        
            "updated_at": "2019-11-30T10:38:59.102589Z",        
            "cross_status": "PendingCancel",  // `PendingCancel` means the matching engine received the cancellation but there is no guarantee that the cancellation will be successful.
            "cross_seq": 387734027                              
        }
    ],
    "time_now": "1575110339.105675",
    "rate_limit_status": 98,
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100
}

撤銷所有未成交、部分成交的活動委托單。但全部成交的活動委托不可取消。

HTTP 請求

POST /futures/private/order/cancelAll

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型

返回參數

參數 類型 說明
clOrdID string uuid類型的唯一訂單號
user_id number 用戶ID
symbol string 合約類型
side string 方向
order_type string 交易記錄類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
create_type string 下單操作的觸發場景
cancel_type string 取消操作的觸發場景
order_status string 訂單狀態
leaves_qty number 剩余委托數量
leaves_value number 剩余掛單數量對應的預估價值
created_at string 創建時間
updated_at string 更新時間
cross_status string 取消操作的觸發場景
cross_seq number 撮合版本號

修改活動單信息

請求示例

curl https://api.bybit.com/futures/private/order/replace \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","order_id":"","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_replace(symbol="BTCUSDM21", order_id="69bd5b88-fa2e-4c33-a489-1860f595191d", p_r_qty="2").result())

響應示例

{
    "ret_code": 0,    //Error code,
    "ret_msg": "ok",  //Error message,
    "ext_code": "",
    "result": {
        "order_id": "efa44157-c355-4a98-b6d6-1d846a936b93"
    },
    "time_now": "1539778407.210858",    // UTC timestamp
    "rate_limit_status": 99, // The remaining number of accesses in one minute
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100             
}

本接口可以修改您的活動單信息.

HTTP 請求

POST /futures/private/order/replace

請求參數

參數 是否必須 類型 說明
order_id false string 訂單ID。如果未填order_link_id則為必填字段。
order_link_id false string 機構ID。如果未填order_id則為必填字段。
symbol true string 合約類型.
p_r_qty false integer 修改後的訂單數量。如果是未完全成交訂單,則表示修改剩余未成交的部分。如果不修改這個字段,請不要傳這個參數。
p_r_price false string 修改後的訂單價格。如果不修改這個字段,請不要傳這個參數。
take_profit false number 修改後的止盈價格。如果不修改這個字段,請不要傳這個參數。
stop_loss false number 修改後的止損價格。如果不修改這個字段,請不要傳這個參數。
tp_trigger_by false string 止盈激活價格類型,默認為LastPrice
sl_trigger_by false string 止損激活價格類型,默認為LastPrice

返回參數

參數 類型 說明
order_id string 訂單ID

實時查詢活動委托

請求示例

curl "https://api.bybit.com/futures/private/order?api_key={api_key}&symbol=BTCUSDM21&timestamp={timestamp}order_id={order_id}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesOrder.FuturesOrder_query(symbol="BTCUSDM21", order_id="").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "user_id": 106958,
        "position_idx":0,
        "symbol": "BTCUSDM21",
        "side": "Buy",
        "order_type": "Limit",
        "price": "11756.5",
        "qty": 1,
        "time_in_force": "PostOnly",
        "order_status": "Filled",
        "ext_fields": {
            "o_req_num": -68948112492,
            "xreq_type": "x_create"
        },
        "last_exec_time": "1596304897.847944",
        "last_exec_price": "11756.5",
        "leaves_qty": 0,
        "leaves_value": "0",
        "cum_exec_qty": 1,
        "cum_exec_value": "0.00008505",
        "cum_exec_fee": "-0.00000002",
        "reject_reason": "",
        "cancel_type": "",
        "order_link_id": "",
        "created_at": "2020-08-01T18:00:26Z",
        "updated_at": "2020-08-01T18:01:37Z",
        "order_id": "e66b101a-ef3f-4647-83b5-28e0f38dcae0"
    },
    "time_now": "1597171013.867068",
    "rate_limit_status": 599,
    "rate_limit_reset_ms": 1597171013861,
    "rate_limit": 600
}

//當只傳參數symbol的時候,返回結構如下:
{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": [
        {
            "user_id": 100228,
            "position_idx":0,
            "symbol": "BTCUSDM21",
            "side": "Sell",
            "order_type": "Limit",
            "price": "17740",
            "qty": 10,
            "time_in_force": "GoodTillCancel",
            "order_status": "New",
            "ext_fields": {
                "o_req_num": 434743,
                "xreq_type": "x_create"
            },
            "last_exec_time": "1608193181.827761",
            "leaves_qty": 10,
            "leaves_value": "0.00056369",
            "cum_exec_qty": 0,
            "cum_exec_value": "0.00008505",
            "cum_exec_fee": "-0.00000002",
            "reject_reason": "EC_NoError",
            "cancel_type": "UNKNOWN",
            "order_link_id": "",
            "created_at": "2020-12-17T08:19:41.827637283Z",
            "updated_at": "2020-12-17T08:19:41.827761Z",
            "order_id": "d570d931-771e-4911-a24e-cdeddedb5b0e"
        },
        ...
        {
            "user_id": 100228,
            "position_idx":0,
            "symbol": "BTCUSDM21",
            "side": "Sell",
            "order_type": "Limit",
            "price": "17740",
            "qty": 10,
            "time_in_force": "GoodTillCancel",
            "order_status": "New",
            "ext_fields": {
                "o_req_num": 434728,
                "xreq_type": "x_create"
            },
            "last_exec_time": "1608193178.955412",
            "leaves_qty": 10,
            "leaves_value": "0.00056369",
            "cum_exec_qty": 0,
            "cum_exec_value": "0.00008505",
            "cum_exec_fee": "-0.00000002",
            "reject_reason": "EC_NoError",
            "cancel_type": "UNKNOWN",
            "order_link_id": "",
            "created_at": "2020-12-17T08:19:38.955297869Z",
            "updated_at": "2020-12-17T08:19:38.955412Z",
            "order_id": "88b91101-7ac1-40af-90b8-72d53fe23622"
        }
    ],
    "time_now": "1608193190.911073",
    "rate_limit_status": 599,
    "rate_limit_reset_ms": 1608193190909,
    "rate_limit": 600
}

實時查詢活動委托。當傳遞參數order_idorder_link_id其中任意一個時,將返回單條訂單數據,如果參數order_idorder_link_id都不傳遞時,將返回所有未成交的訂單,最多500條。

HTTP 請求

GET /futures/private/order

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
order_id false string 訂單ID
order_link_id false string 機構自定義訂單ID

返回參數

參數 類型 說明
user_id number 用戶ID
position_idx integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
symbol string 合約類型
side string 方向
order_type string 交易記錄類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
order_status string 訂單狀態
ext_fields json 擴展字段
leaves_qty number 剩余委托數量
leaves_value number 剩余掛單數量對應的預估價值
cum_exec_qty number 累計成交數量
cum_exec_value number 累計成交價值
cum_exec_fee order_link_id string
reject_reason string 被拒單的原因
cancel_type string 取消操作的觸發場景
order_link_id string 機構自定義訂單ID
created_at string 創建時間
updated_at string 更新時間
order_id string 訂單ID
take_profit number 止盈價格
stop_loss number 止損價格
tp_trigger_by string 止盈激活價格類型,默認為LastPrice
sl_trigger_by string 止損激活價格類型,默認為LastPrice

條件單

創建條件委托單

請求示例

curl https://api.bybit.com/futures/private/stop-order/create \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","order_type":"Limit","side":"Buy","symbol":"BTCUSDM21","qty":1,"price":8100,"base_price":8300,"stop_px":8150,"time_in_force":"GoodTillCancel","order_link_id":"cus_order_id_1","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_new(order_type="Limit",side="Buy",symbol="BTCUSDM21",qty="1",price="0.2569",base_price="15700",stop_px="0.2119",time_in_force="GoodTillCancel").result())

響應示例

{
    "ret_code":0,
    "ret_msg":"OK",
    "ext_code":"",
    "ext_info":"",
    "result":{
        "user_id":160880,
        "symbol":"BTCUSDM21",
        "side":"Buy",
        "order_type":"Limit",
        "price":"9003",
        "qty":"2",
        "time_in_force":"GoodTillCancel",
        "remark":"127.0.0.1",
        "leaves_qty":"2",
        "leaves_value":"0",
        "stop_px":"8232",
        "reject_reason":"EC_NoError",
        "stop_order_id":"eaf205ac-9dcc-44f6-8731-734e2101e61b",
        "created_at":"2020-11-06T07:48:43.940Z",
        "updated_at":"2020-11-06T07:48:43.940Z"
    },
    "time_now":"1604648923.942177"
}

市價條件委托: 一個傳統的市場價格訂單,會以當前的最優價格為您成交訂單。當且僅當選擇市價單時,'price', '可為空!

限價條件委托: 您可以為您的訂單設置一個執行價格,當市場價格達到您的設置價格時,系統會為您成交訂單。

止盈止損: 您僅能在開倉時設置止盈止損條件單,一旦持有倉位後提交活動委托時關聯的止盈止損則不再有效。一旦持倉後,當創建訂單後發送的止盈止損信息將不再有效。

委托數量: 表示您要購買/賣出的永續合約數,對於委托數量目前Bybit只允許提交正整數。

委托價格: 表示您期望購買/賣出永續合約的價格,可以根據交易對接口查詢不同symbol價格階梯。

條件委托觸發價格: 您可以為您的條件委托單設置一個觸發價格,條件委托單不進入委托表(Order Book),只有觸發條件成立如市場價格到達觸發價格時,條件委托單才會進入交易系統。當市場價格到達觸發價格:1)您的限價條件委托單進入Order Book,等待被執行;2)您的市價條件委托單將按照市場最優價格立即被執行。

自定義條件單ID: 您可以自定義活動委托訂單ID,我們會為您關聯到系統的訂單ID,並把系統的唯一訂單ID在活動委托創建成功後一並返回給您,您可以使用該訂單ID去取消活動委托,同時要求您傳遞的自定義訂單ID最大長度不超過36個字段且唯一。

HTTP 請求

POST /futures/private/stop-order/create

請求參數

參數 是否必須 類型 說明
position_idx true integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
side true string 方向
symbol true string 合約類型
order_type true string 委托單價格類型
qty true string 委托數量(1個委托1美元),只能為正整數
price false string 條件委托執行價格。如果條件委托是限價單,則price為必傳字段
base_price true string 當前市價。用於和stop_px值進行比較,確定當前條件委托是看空到stop_px時觸發還是看多到stop_px觸發。主要是用來標識當前條件單預期的方向
stop_px true string 觸發價格
time_in_force true string 執行策略
trigger_by false string 觸發價格類型. 默認為最新市價
close_on_trigger false bool 觸發後平倉. 如果下平倉單,請設置為true,避免因為保證金不足而導致下單失敗
order_link_id false string 機構自定義訂單ID, 最大長度36位,且同一機構下自定義ID不可重復
take_profit false number 止盈價格,僅開倉時生效
stop_loss false number 止損價格,僅開倉時生效
tp_trigger_by false string 止盈激活價格類型,默認為LastPrice
sl_trigger_by false string 止損激活價格類型,默認為LastPrice

返回參數

參數 類型 說明
user_id integer 用戶ID
symbol string 合約類型
side string 方向
order_type string 訂單類型
price string 委托價格
qty string 委托數量
time_in_force string 執行策略
trigger_by string 觸發價格類型. 默認為最新市價
base_price string 下單時市價
remark string 備註
reject_reason string 被拒單的原因
stop_px string 觸發價格
stop_order_id string 條件委托訂單ID。
created_at string 創建時間
order_link_id string 機構自定義訂單ID
take_profit false number
stop_loss false number
tp_trigger_by string 止盈激活價格類型,默認為LastPrice
sl_trigger_by string 止損激活價格類型,默認為LastPrice

查詢條件委托

請求示例

curl "https://api.bybit.com/futures/private/stop-order/list?api_key={api_key}&timestamp={timestamp}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_getOrders(symbol="BTCUSDM21",stop_order_status="Untriggered").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "data": [
            {
                "user_id": 160861,
                "position_idx": 0,
                "stop_order_status": "Active",
                "symbol": "ETHUSD",
                "side": "Buy",
                "order_type": "Market",
                "stop_order_type": "TakeProfit",
                "price": "220",
                "qty": "120",
                "time_in_force": "ImmediateOrCancel",
                "base_price": "258",
                "order_link_id": "",
                "created_at": "2019-08-02T07:37:24Z",
                "updated_at": "2019-08-02T07:38:40Z",
                "stop_px": "224.3",
                "stop_order_id": "6d0dec74-f516-4d95-81f1-c85e60c9a331"
            }
        ],
        "cursor": "zZtvOJ0gc3UOxZOwotsJSZyMTOgyC9tj1DmFyUU6eNHUL0X4NLwZvo8iqI6ltPIc"
    },
    "time_now": "1604653512.292878",
    "rate_limit_status": 599,
    "rate_limit_reset_ms": 1604653512287,
    "rate_limit": 600
}

獲取我的條件委托單列表。

創建/取消訂單是異步的,因此該接口可能返回的數據可能會有延遲。如果要獲取訂單的實時信息,可以調用接口實時查詢條件單信息

HTTP 請求

GET /futures/private/stop-order/list

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
stop_order_status false string 指定訂單狀態查詢訂單列表。不傳該參數則默認查詢Untriggered,Active,Deactivated這三種狀態的訂單列表。該參數支持多狀態查詢,狀態之間用英文逗號分割。
direction false string 搜索方向:prev:上一頁,next:下一頁,默認為 next
limit false integer 每頁數量, 最大50. 默認每頁20條
cursor false string 翻頁標記,請使用返回的cursor,簽名時使用返回的原始數據,發送request時請進行urlencode

返回參數

參數 類型 說明
data > user_id integer 用戶ID
data > position_idx integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
data > stop_order_status string 條件單狀態
data > symbol string 合約類型
data > side string 方向
data > order_type string 訂單類型
data > price number 委托價格
data > qty number 委托數量
data > time_in_force string 執行策略
data > stop_order_type string 委托單價格類型
data > trigger_by string 觸發價格類型. 默認為最新市價
data > base_price number 下單時市價
data > order_link_id string 機構自定義訂單ID
data > created_at string 創建時間
data > updated_at string 更新時間
data > stop_px number 觸發價格
data > stop_order_id string 條件委托訂單ID。
data > take_profit number 止盈價格
data > stop_loss number 止損價格
data > tp_trigger_by string 止盈激活價格類型,默認為LastPrice
data > sl_trigger_by string 止損激活價格類型,默認為LastPrice
cursor string 翻頁標記

撤消條件委托單

請求示例

curl https://api.bybit.com/futures/private/stop-order/cancel \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","stop_order_id":"xxx","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_cancel(symbol="BTCUSDM21", stop_order_id="").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": {
        "stop_order_id": "c1025629-e85b-4c26-b4f3-76e86ad9f8cb"
    },
    "ext_info": null,
    "time_now": "1577452218.567120",
    "rate_limit_status": 97,
    "rate_limit_reset_ms": 1577452218573,
    "rate_limit": "100"
}

您可以撤銷所有未被激活的條件委托,或止盈止損單。本質上所有條件委托在被激活後都是屬於活動委托,所以條件委托一旦被激活,您需要通過調用取消活動委托接口來取消所有未成交、部分成交的活動委托單。同樣全部成交的活動委托不可取消。

HTTP 請求

POST /futures/private/stop-order/cancel

請求參數

參數 required type comments
symbol true string 合約類型
stop_order_id false string 訂單ID。如果未填order_link_id則為必填字段。
order_link_id false string 機構ID。如果未填stop_order_id則為必填字段。

返回參數

參數 類型 說明
stop_order_id string 條件委托訂單ID。

撤消全部條件委托單

請求示例

curl https://api.bybit.com/futures/private/stop-order/cancelAll \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_cancelAll(symbol="BTCUSDM21").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": [
        {
            "clOrdID": "dea89649-9492-459d-a8c4-c298b87b3d26",
            "user_id": 1,
            "symbol": "BTCUSDM21",
            "side": "Sell",
            "order_type": "Limit",
            "price": "999999",
            "qty": 1,
            "time_in_force": "PostOnly",
            "create_type": "CreateByUser",
            "cancel_type": "CancelByUser",
            "order_status": "",
            "leaves_qty": 1,
            "leaves_value": "0",
            "created_at": "2019-12-17T12:13:20Z",
            "updated_at": "2019-12-27T13:56:33.793799Z",
            "cross_status": "Deactivated",
            "cross_seq": -1,
            "stop_order_type": "Stop",
            "trigger_by": "LastPrice",
            "base_price": "6910.5",
            "expected_direction": "Rising"
        },
        {
            "clOrdID": "a85cd1c0-a9a4-49d3-a1bd-bab5ebe946d5",
            "user_id": 1,
            "symbol": "BTCUSDM21",
            "side": "Buy",
            "order_type": "Limit",
            "price": "8000",
            "qty": 1,
            "time_in_force": "GoodTillCancel",
            "create_type": "CreateByStopOrder",
            "cancel_type": "CancelByUser",
            "order_status": "",
            "leaves_qty": 1,
            "leaves_value": "0",
            "created_at": "2019-12-27T12:48:24.339323Z",
            "updated_at": "2019-12-27T13:56:33.793802Z",
            "cross_status": "Deactivated",
            "cross_seq": -1,
            "stop_order_type": "Stop",
            "trigger_by": "LastPrice",
            "base_price": "7000",
            "expected_direction": "Rising"
        }
    ],
    "time_now": "1577454993.799912",
    "rate_limit_status": 90,
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100
}

撤銷所有未被激活的條件委托。本質上所有條件委托在被激活後都是屬於活動委托,所以條件委托一旦被激活,您需要通過調用取消活動委托接口來取消所有未成交、部分成交的活動委托單。同樣全部成交的活動委托不可取消。

HTTP 請求

POST /futures/private/stop-order/cancelAll

請求參數

參數 required type comments
symbol true string 合約類型

返回參數

參數 類型 說明
clOrdID string uuid類型的唯一訂單號
user_id number 用戶ID
symbol string 合約類型
side string 方向
order_type string 訂單類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
create_type string 下單操作的觸發場景
cancel_type string 取消操作的觸發場景
order_status string 訂單狀態
leaves_qty number 剩余委托數量
leaves_value number 剩余掛單數量對應的預估價值
created_at string 創建時間
updated_at string 更新時間
cross_status string 取消操作的觸發場景
cross_seq number 撮合版本號
stop_order_type string 委托單價格類型
trigger_by string 觸發價格類型. 默認為最新市價
base_price number 下單時市價
expected_direction string 預期方向

修改條件委托單

請求示例

curl https://api.bybit.com/futures/private/stop-order/replace \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","stop_order_id":"","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_replace(symbol="BTCUSDM21", stop_order_id="69bd5b88-fa2e-4c33-a489-1860f595191d",p_r_qty="2").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": {
        "stop_order_id": "378a1bbc-a93a-4e75-87f4-502ea754ba36"
    },
    "ext_info": null,
    "time_now": "1577475760.604942",
    "rate_limit_status": 96,
    "rate_limit_reset_ms": 1577475760612,
    "rate_limit": "100"
}

修改未觸發的條件單。

HTTP 請求

POST /futures/private/stop-order/replace

請求參數

參數 是否必須 類型 說明
stop_order_id false string 訂單ID。如果未填order_link_id則為必填字段。
order_link_id false string 機構ID。如果未填stop_order_id則為必填字段。
symbol true string 合約類型.
p_r_qty false integer 修改後的訂單數量。如果是未完全成交訂單,則表示修改剩余未成交的部分。如果不修改這個字段,請不要傳這個參數。
p_r_price false string 修改後的訂單價格。如果不修改這個字段,請不要傳這個參數。
p_r_trigger_price false string 修改後的條件單的觸發價格或止盈止損的價格。如果不修改這個字段,請不要傳這個參數。
take_profit false number 修改後的止盈價格。如果不修改這個字段,請不要傳這個參數。
stop_loss false number 修改後的止損價格。如果不修改這個字段,請不要傳這個參數。
tp_trigger_by false string 止盈激活價格類型,默認為LastPrice
sl_trigger_by false string 止損激活價格類型,默認為LastPrice

返回參數

參數 類型 說明
stop_order_id string 條件委托訂單ID。

實時查詢條件委托

請求示例

curl "https://api.bybit.com/futures/private/stop-order?api_key={api_key}&symbol=BTCUSDM21&timestamp={timestamp}order_id={order_id}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesConditional.FuturesConditional_query(symbol="BTCUSDM21", stop_order_id="", p_r_trigger_price="16003").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "user_id": 1,
        "position_idx": 0,
        "symbol": "BTCUSDM21",
        "side": "Buy",
        "order_type": "Limit",
        "price": "8000",
        "qty": 1,
        "time_in_force": "GoodTillCancel",
        "order_status": "Untriggered",
        "ext_fields": {},
        "leaves_qty": 1,
        "leaves_value": "0.00013333",
        "cum_exec_qty": 0,
        "cum_exec_value": null,
        "cum_exec_fee": null,
        "reject_reason": "",
        "order_link_id": "",
        "created_at": "2019-12-27T19:56:24.052194Z",
        "updated_at": "2019-12-27T19:56:24.052194Z",
        "order_id": "378a1bbc-a93a-4e75-87f4-502ea754ba36"
    },
    "time_now": "1577476584.386958",
    "rate_limit_status": 99,
    "rate_limit_reset_ms": 1580885703683,
    "rate_limit": 100
}

//當只傳參數symbol的時候,返回結構如下:
{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": [
        {
            "user_id": 100328,
            "position_idx": 0,
            "symbol": "EOSUSD",
            "side": "Sell",
            "order_type": "Limit",
            "price": "2.7",
            "qty": 1,
            "stop_px": "2.0000",
            "base_price": "2.7000",
            "time_in_force": "GoodTillCancel",
            "order_status": "Untriggered",
            "ext_fields": {},
            "leaves_qty": 1,
            "leaves_value": "0.37037037",
            "cum_exec_qty": 0,
            "cum_exec_value": null,
            "cum_exec_fee": null,
            "reject_reason": "EC_NoError",
            "cancel_type": "UNKNOWN",
            "order_link_id": "",
            "created_at": "2020-12-17T08:21:15.246331281Z",
            "updated_at": "2020-12-17T08:21:15.246331281Z",
            "order_id": "a0dee45e-ae2a-4eb4-8205-9739075a7a81",
            "trigger_by": "MarkPrice"
        },
        ...
        {
            "user_id": 100328,
            "position_idx": 0,
            "symbol": "EOSUSD",
            "side": "Sell",
            "order_type": "Limit",
            "price": "2.6",
            "qty": 1,
            "stop_px": "2.0000",
            "base_price": "2.7000",
            "time_in_force": "GoodTillCancel",
            "order_status": "Untriggered",
            "ext_fields": {},
            "leaves_qty": 1,
            "leaves_value": "0.38461538",
            "cum_exec_qty": 0,
            "cum_exec_value": null,
            "cum_exec_fee": null,
            "reject_reason": "EC_NoError",
            "cancel_type": "UNKNOWN",
            "order_link_id": "",
            "created_at": "2020-12-17T08:21:10.924193413Z",
            "updated_at": "2020-12-17T08:21:10.924193413Z",
            "order_id": "51d048ba-a71f-40ef-b4c4-897e94590b80",
            "trigger_by": "MarkPrice"
        }
    ],
    "time_now": "1608193281.690286",
    "rate_limit_status": 599,
    "rate_limit_reset_ms": 1608193281687,
    "rate_limit": 600
}

實時查詢條件委托。當傳遞參數order_idorder_link_id其中任意一個時,將返回單條訂單數據;如果參數order_idorder_link_id都不傳遞時,將返回所有未成交的訂單,最多50條。

HTTP 請求

GET /futures/private/stop-order

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
stop_order_id false string 訂單ID
order_link_id false string 機構自定義訂單ID

返回參數

參數 類型 說明
user_id number 用戶ID
position_idx integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
symbol string 合約類型
side string 方向
order_type string 訂單類型
price number 委托價格
qty number 委托數量
time_in_force string 執行策略
order_status string 訂單狀態
ext_fields json 擴展字段
leaves_qty number 剩余委托數量
leaves_value number 剩余掛單數量對應的預估價值
cum_exec_qty number 累計成交數量
cum_exec_value number 累計成交價值
cum_exec_fee number 累計成交手續費
reject_reason string 被拒單的原因
order_link_id string 機構自定義訂單ID
created_at string 創建時間
updated_at string 更新時間
order_id string 訂單ID
base_price string 下單時市價
stop_px string 觸發價格
trigger_by string 觸發價格類型. 默認為最新市價
take_profit number 止盈價格
stop_loss number 止損價格
tp_trigger_by string 止盈激活價格類型,默認為LastPrice
sl_trigger_by string 止損激活價格類型,默認為LastPrice

持倉

獲取持倉(實時)

請求示例

curl "https://api.bybit.com/futures/private/position/list?api_key={api_key}&symbol=BTCUSDM21&timestamp={timestamp}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_myPosition(symbol="BTCUSDM21").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": [
        {
            "data": {
                "id": 0,
                "position_idx": 1,
                "mode": 3,
                "user_id": 103669,
                "risk_id": 61,
                "symbol": "BTCUSDM21",
                "side": "Buy",
                "size": 200000,
                "position_value": "3.62934747",
                "entry_price": "55106.32466392",
                "is_isolated": true,
                "auto_add_margin": 0,
                "leverage": "10",
                "effective_leverage": "0",
                "position_margin": "0.36592896",
                "liq_price": "50325.5",
                "bust_price": "50097",
                "occ_closing_fee": "0.0029942",
                "occ_funding_fee": "0",
                "take_profit": "0",
                "stop_loss": "0",
                "trailing_stop": "0",
                "position_status": "Normal",
                "deleverage_indicator": 4,
                "oc_calc_data": "{\"blq\":0,\"slq\":0,\"bmp\":0,\"smp\":0,\"fq\":-200000,\"bv2c\":0.101575,\"sv2c\":0.101425}",
                "order_margin": "0",
                "wallet_balance": "9.95270565",
                "realised_pnl": "-0.00272207",
                "unrealised_pnl": 0,
                "cum_realised_pnl": "-0.00272207",
                "cross_seq": 2392689554,
                "position_seq": 0,
                "created_at": "2021-03-11T08:11:17.747178448Z",
                "updated_at": "2021-03-11T08:24:18.923067183Z"
                "tp_sl_mode": "Full"
            },
            "is_valid": true
        },
        {
            "data": {
                "id": 0,
                "position_idx": 0,
                "mode": 0,
                "user_id": 103669,
                "risk_id": 71,
                "symbol": "BTCUSDM21",
                "side": "Buy",
                "size": 2,
                "position_value": "0.00003644",
                "entry_price": "54884.74204171",
                "is_isolated": false,
                "auto_add_margin": 1,
                "leverage": "100",
                "effective_leverage": "0",
                "position_margin": "0.0000004",
                "liq_price": "0.5",
                "bust_price": "0.5",
                "occ_closing_fee": "0.003",
                "occ_funding_fee": "0",
                "take_profit": "0",
                "stop_loss": "0",
                "trailing_stop": "0",
                "position_status": "Normal",
                "deleverage_indicator": 3,
                "oc_calc_data": "{\"blq\":0,\"slq\":0,\"bmp\":0,\"smp\":0,\"fq\":-2,\"bv2c\":0.0115075,\"sv2c\":0.0114925}",
                "order_margin": "0",
                "wallet_balance": "9.95270565",
                "realised_pnl": "0",
                "unrealised_pnl": 0,
                "cum_realised_pnl": "-0.00000002",
                "cross_seq": 2360303954,
                "position_seq": 0,
                "created_at": "2021-02-24T05:56:07.964274148Z",
                "updated_at": "2021-03-11T08:52:06.772110817Z"
                "tp_sl_mode": "Full"
            },
            "is_valid": true
        }
    ],
    "time_now": "1615452727.664848",
    "rate_limit_status": 119,
    "rate_limit_reset_ms": 1615452727660,
    "rate_limit": 120
}

獲取我的倉位列表。通過該接口可以獲取當前用戶的持倉信息,如持倉數量、賬戶余額等信息

HTTP 請求

GET /futures/private/position/list

請求參數

參數 是否必須 類型 說明
symbol false string 合約類型

返回參數

參數 類型 說明
id number 倉位ID
position_idx integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
mode number 倉位模式
user_id number 用戶ID
risk_id number 風險限額ID
symbol string 合約類型
side string 方向
size number 倉位數量
position_value string 倉位價值
entry_price string 平均入場價
is_isolated bool 是否逐倉,true-逐倉 false-全倉
auto_add_margin number 是否自動追加保證金
leverage string 逐倉模式下, 值為用戶設置的杠桿;全倉模式下,值為當前風險限額下最大杠桿
effective_leverage string 有效杠桿
position_margin string 倉位保證金
liq_price string 強平價格
bust_price string 破產價格
occ_closing_fee string 倉位占用的平倉手續費
occ_funding_fee string 倉位size和當前資金費率預占用資金費用
take_profit string 止盈價格
stop_loss string 止損價格
trailing_stop string 追蹤止損
position_status string 倉位狀態,正常,強平,減倉
deleverage_indicator number 風險指示燈等級(1,2,3,4,5)
oc_calc_data string 預占保證證計算參數, blq-多方所有未成交委托數; bmp-多方最低價; slq-空方所有未成交委托數; smp-空方最低價
order_margin string 委托預占用保證金
wallet_balance string 錢包余額
realised_pnl string 當日已結盈虧
unrealised_pnl number 未結盈虧
cum_realised_pnl string 累計已結盈虧
cross_seq number 撮合版本號
position_seq number 倉位變化版本號
created_at string The account creation time
updated_at string 更新時間
tp_sl_mode string 止盈止損模式

更新保證金

請求示例

curl https://api.bybit.com/futures/private/position/change-position-margin \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21",margin:"10","timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_changeMargin(symbol="BTCUSDM21", margin="10").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": 9.996e-05,
    "ext_info": null,
    "time_now": "1577480720.003444",
    "rate_limit_status": 74,
    "rate_limit_reset_ms": 1577480720011,
    "rate_limit": 75
}

更新保證金。

HTTP 請求

POST /futures/private/position/change-position-margin

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
position_idx true integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
margin true string 保證金

返回參數

參數 類型 說明
result number 倉位保證金

設置止盈止損

請求示例

curl https://api.bybit.com/futures/private/position/trading-stop \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","stop_loss":7000,"timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_tradingStop(symbol="BTCUSDM21",take_profit="0", stop_loss="9110", trailing_stop="0", new_trailing_active="0").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": {
        "id": 27913,
        "user_id": 1,
        "symbol": "BTCUSDM21",
        "side": "Buy",
        "size": 5,
        "position_value": 0.0006947,
        "entry_price": 7197.35137469,
        "risk_id": 1,
        "auto_add_margin": 0,
        "leverage": 6.95,
        "position_margin": 9.996e-05,
        "liq_price": 6320,
        "bust_price": 6292.5,
        "occ_closing_fee": 6e-07,
        "occ_funding_fee": 0,
        "take_profit": 0,
        "stop_loss": 7000,
        "trailing_stop": 0,
        "position_status": "Normal",
        "deleverage_indicator": 5,
        "oc_calc_data": "{\"blq\":2,\"blv\":\"0.0002941\",\"slq\":0,\"bmp\":6800.408,\"smp\":0,\"fq\":-5,\"fc\":-0.00004279,\"bv2c\":0.14549282,\"sv2c\":0.14527699}",
        "order_margin": 4.279e-05,
        "wallet_balance": 0.03000227,
        "realised_pnl": -1.26e-06,
        "cum_realised_pnl": -1.306e-05,
        "cum_commission": 0,
        "cross_seq": 444081383,
        "position_seq": 287176872,
        "created_at": "2019-10-19T17:04:55.000Z",
        "updated_at": "2019-12-27T21:17:27.000Z",
        "ext_fields": {
            "trailing_active":"9000",
            "sl_trigger_by": "LastPrice",
            "v": 221,
            "mm": 0
        }
    },
    "ext_info": null,
    "time_now": "1577481447.436689",
    "rate_limit_status": 73,
    "rate_limit_reset_ms": 1577481447443,
    "rate_limit": 75
}

設置倉位止盈止損、追蹤止損。

HTTP 請求

POST /futures/private/position/trading-stop

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
position_idx true integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell
take_profit false number 不小於0,如果等於0則是取消止盈(TP)
stop_loss false number 不小於0,如果等於0則是取消止損(SL)
trailing_stop false number 不小於0,如果等於0則是取消追蹤止損(TS)
tp_trigger_by false string 止盈激活價格類型,默認為LastPrice
sl_trigger_by false string 止盈激活價格類型,默認為LastPrice
new_trailing_active false number 追蹤止損觸發價格。追蹤止損會在到達該價格後才會觸發(追蹤止損默認立即觸發)。
sl_size false number 在部分止盈止損模式下,止損合約數量
tp_size false number 在部分止盈止損模式下,止盈合約數量

返回參數

參數 類型 說明
id number 倉位ID
user_id number 用戶ID
symbol string 合約類型
side string 方向
size number 倉位數量
position_value string 倉位價值
entry_price string 平均入場價
risk_id number 風險限額ID
auto_add_margin number 是否自動追加保證金
leverage string 逐倉模式下, 值為用戶設置的杠桿;全倉模式下,值為當前風險限額下最大杠桿
position_margin string 倉位保證金
liq_price string 強平價格
bust_price string 破產價格
occ_closing_fee string 倉位占用的平倉手續費
occ_funding_fee string 倉位size和當前資金費率預占用資金費用
take_profit string 止盈價格
stop_loss string 止損價格
trailing_stop string 追蹤止損
position_status string 倉位狀態,正常,強平,減倉
deleverage_indicator number 風險指示燈等級(1,2,3,4,5)
oc_calc_data string 預占保證證計算參數, blq-多方所有未成交委托數; bmp-多方最低價; slq-空方所有未成交委托數; smp-空方最低價
order_margin string 委托預占用保證金
wallet_balance string 錢包余額
realised_pnl string 當日已結盈虧
cum_realised_pnl string 累計已結盈虧
cum_commission number 累計傭金
cross_seq number 撮合版本號
position_seq number 倉位變化版本號
created_at string 創建時間
updated_at string 更新時間
ext_fields>trailing_active string 激活價格
ext_fields>sl_trigger_by string 止損激活價格類型

修改杠桿

請求示例

curl https://api.bybit.com/futures/private/position/leverage/save \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","buy_leverage":14,"sell_leverage":14,"timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_saveLeverage(symbol="BTCUSDM21", buy_leverage="14",sell_leverage="14").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": 2,
    "ext_info": null,
    "time_now": "1577477968.175013",
    "rate_limit_status": 74,
    "rate_limit_reset_ms": 1577477968183,
    "rate_limit": 75
}

設置杠桿

HTTP 請求

POST /futures/private/position/leverage/save

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
buy_leverage true number 杠桿大於0,小於風險限額對應的杠桿
sell_leverage true number 杠桿大於0,小於風險限額對應的杠桿

返回參數

參數 類型 說明
result number 用戶杠桿

切換倉位模式

請求示例

curl https://api.bybit.com/futures/private/position/switch-mode \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","mode":0,"timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_switchPositionMode(symbol="BTCUSDM21",mode=0).result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": null,
    "ext_info": null,
    "time_now": "1577477968.175013",
    "rate_limit_status": 74,
    "rate_limit_reset_ms": 1577477968183,
    "rate_limit": 75
}

單倉模式下,只能在單方向下持倉
雙倉模式下,可以同時在兩個方向持倉。

HTTP 請求

POST /futures/private/position/switch-mode

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
mode true int 倉位模式: 0 - 單倉模式 3 - 雙倉模式

切換止盈止損模式

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "tp_sl_mode": "Partial"
    },
    "time_now": "1598266294.610276",
    "rate_limit_status": 72,
    "rate_limit_reset_ms": 1598266294607,
    "rate_limit": 75
}

切換止盈止損模式至全倉或部分

HTTP 請求

POST /futures/private/tpsl/switch-mode

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
tp_sl_mode true string 止盈止損模式

返回參數

參數 類型 說明
tp_sl_mode string 止盈止損模式

全倉/逐倉切換

請求示例

curl https://api.bybit.com/futures/private/position/switch-isolated \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21", "is_isolated":true,"buy_leverage":10,"sell_leverage":20, "timestamp":{timestamp},"sign":"{sign}"}'
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_switchIsolated(symbol="BTCUSDM21",is_isolated=True, buy_leverage="1", sell_leverage="1").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "ok",
    "ext_code": "",
    "result": null,
    "ext_info": null,
    "time_now": "1577477968.175013",
    "rate_limit_status": 74,
    "rate_limit_reset_ms": 1577477968183,
    "rate_limit": 75
}

全倉/逐倉切換,從全倉切換至逐倉時需要傳杠桿

HTTP 請求

POST /futures/private/position/switch-isolated

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
is_isolated true bool 全倉/逐倉, true是逐倉,false是全倉
buy_leverage true number 杠桿大於0,小於風險限額對應的杠桿
sell_leverage true number 杠桿大於0,小於風險限額對應的杠桿

用戶成交記錄

請求示例

curl "https://api.bybit.com/futures/private/execution/list?api_key={api_key}&symbol=BTCUSDM21&timestamp={timestamp}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesExecution.FuturesExecution_getTrades(symbol="BTCUSDM21").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "order_id": "已廢棄!!", // 已廢棄!!
        "trade_list": [
            {
                "closed_size": 0, // 平倉委托對應的平倉大小
                "cross_seq": 277136382,
                "exec_fee": "0.0000001",
                "exec_id": "256e5ef8-abfe-5772-971b-f944e15e0d68",
                "exec_price": "8178.5",
                "exec_qty": 1,
                "exec_time": "1571676941.70682",    //已廢棄!!
                "exec_type": "Trade", //交易類型枚舉
                "exec_value": "0.00012227",
                "fee_rate": "0.00075",
                "last_liquidity_ind": "RemovedLiquidity", //流動性類型枚舉, 只有當exec_type字段類型為Trade、AdlTrade、BustTrade時有效
                "leaves_qty": 0,
                "nth_fill": 2,
                "order_id": "7ad50cb1-9ad0-4f74-804b-d82a516e1029",
                "order_link_id": "",
                "order_price": "8178",
                "order_qty": 1,
                "order_type": "Market", //訂單類型枚舉
                "side": "Buy", //方向枚舉
                "symbol": "BTCUSDM21", //交易對枚舉
                "user_id": 1,
                "trade_time_ms": 1577480599000
            }
        ]
    },
    "time_now": "1577483699.281488",
    "rate_limit_status": 118,
    "rate_limit_reset_ms": 1577483699244737,
    "rate_limit": 120
}

獲取用戶成交記錄,按時間升序排列。

HTTP 請求

GET /futures/private/execution/list

請求參數

參數 是否必須 類型 說明
order_id false string 訂單號,如果沒有填寫訂單號,將返回用戶交易記錄
symbol true string 交易對 必填
start_time false int 開始時間戳(毫秒)
page false integer 頁碼.默認取第一頁
limit false integer 返回數據最大200條. 默認返回50條
order false string 按創建時間排序

返回參數

參數 類型 說明
closed_size number 平倉委托對應的平倉大小
cross_seq number 撮合版本號
exec_fee string 交易手續費
exec_id string 成交ID
exec_price number 成交價格
exec_qty number 成交數量
exec_type string 交易類型枚舉
exec_value string 成交價值
fee_rate string 手續費率
last_liquidity_ind string 流動性類型枚舉, 只有當exec_type字段類型為Trade、AdlTrade、BustTrade時有效
leaves_qty number 剩余委托數量
nth_fill number 該筆流水對應了撮合響應包裏的第幾筆成交
order_id string 訂單ID
order_link_id string 機構自定義訂單ID
order_price string 訂單價格
order_qty string 訂單數量
order_type string 訂單類型枚舉
side string 方向
symbol string 交易對枚舉
user_id number 用戶ID
trade_time_ms number 交易時間

平倉盈虧

請求示例

curl "https://api.bybit.com/futures/private/trade/closed-pnl/list?api_key={api_key}&symbol=BTCUSDM21&timestamp={timestamp}&sign={sign}"
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.FuturesPositions.FuturesPositions_closePnlRecords(symbol="BTCUSDM21").result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "current_page": 1,
        "data": [
            {
                "id": 9982,
                "user_id": 160320,
                "symbol": "BTCUSDM21",
                "order_id": "e976ac13-10e7-4883-a7ba-13b0e93659f1",
                "side": "Sell",
                "qty": 226,
                "order_price": 1600,
                "order_type": "Limit",
                "exec_type": "Trade",
                "closed_size": 113,
                "cum_entry_value": 0.07062500000000001,
                "avg_entry_price": 1600,
                "cum_exit_value": 0.066198,
                "avg_exit_price": 1707,
                "closed_pnl": 0.0043950000000000005,
                "fill_count": 1,
                "leverage": 100,
                "created_at": 1591155741
            }
        ]
    },
    "time_now": "1591173153.876047",
    "rate_limit_status": 119,
    "rate_limit_reset_ms": 1591173153852,
    "rate_limit": 120
}

獲取用戶平倉記錄,按時間降序排列。

HTTP 請求

GET /futures/private/trade/closed-pnl/list

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
start_time false int 開始時間戳(秒)
end_time false int 結束時間戳(秒)
exec_type false string 交易類型(不能為"Funding")
page false integer 頁碼.默認取第一頁,最大50
limit false integer 每頁數量, 最大50. 默認每頁20條,最多50條每頁

返回參數

參數 類型 說明
id number 倉位ID
user_id number 用戶ID
symbol string 合約類型
order_id string 訂單ID
side string Side of the closing order
qty number 委托數量
order_price number 訂單價格
order_type string 訂單類型
exec_type string 交易類型枚舉
closed_size number 平倉委托對應的平倉大小
cum_entry_value number 被平掉的倉位價值
avg_entry_price number 平均入場價
cum_exit_value number 平倉訂單累計成交價值
avg_exit_price number 平均出場價
closed_pnl number 與平倉size等比例對應的盈虧
fill_count number 成交筆數
leverage number 逐倉模式下, 值為用戶設置的杠桿;全倉模式下,值為當前風險限額下最大杠桿
created_at number 創建時間

風險限額

查詢風險限額表

請點擊查看接口描述。

設置風險限額

請求示例

curl https://api.bybit.com/futures/private/position/risk-limit \
-H "Content-Type: application/json" \
-d '{"api_key":"{api_key}","symbol":"BTCUSDM21","risk_id":2,"timestamp":{timestamp},"sign":"{sign}"}'

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {
        "risk_id": 2
    },
    "time_now": "1620283810.393787",
    "token": null
}

HTTP 請求

POST futures/private/position/risk-limit

請求參數

參數 是否必須 類型 說明
symbol true string 合約類型
risk_id true integer 風險限額ID
position_idx false integer Position idx, 用於在不同倉位模式下標識倉位:
0-單向持倉
1-雙向持倉Buy
2-雙向持倉Sell

返回參數

參數 類型 說明
risk_id number 風險限額ID

APIKey信息

請點擊查看接口描述。

錢包接口

錢包相關接口需要認證。

賬號余額

請點擊查看接口描述。

資金記錄

請點擊查看接口描述。

提幣記錄

請點擊查看接口描述。

資產兌換記錄

請點擊查看接口描述。

通用數據接口

通用數據接口不需要鑒權。

服務器時間

請求示例

curl https://api-testnet.bybit.com/v2/public/time
import bybit
client = bybit.bybit(test=True, api_key="api_key", api_secret="api_secret")
print(client.Common.Common_getTime().result())

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": {},
    "time_now": "1577444332.192859"
}

獲取Bybit服務器時間

HTTP 請求

GET /v2/public/time

請求參數

參數 是否必須 類型 說明

公告

請求示例

curl https://api.bybit.com/v2/public/announcement

響應示例

{
    "ret_code": 0,
    "ret_msg": "OK",
    "ext_code": "",
    "ext_info": "",
    "result": [
        {
            "id": 2,
            "title": "2019-12-02 RELEASE",
            "link": "https://github.com/bybit-exchange/bybit-official-api-docs/blob/master/en/CHANGELOG.md",
            "summary": "<p>New `cancel all` endpoint is here now!</p><p>Additionally, we strongly recommend that you use the new released place and cancel active V2 endpoints, which are more stable and efficient.The old ones are deprecated (although still working for the time be",
            "created_at": "2019-12-02T11:33:42Z"
        }
    ],
    "time_now": "1577444818.227082"
}

獲取Bybit最近30天OpenAPI公告(時間倒敘排列)

HTTP 請求

GET /v2/public/announcement

請求參數

參數 是否必須 類型 說明

頻率限製

IP頻率限製

Bybit會基於請求IP做頻率限製,針對不同的請求方法有以下規則(現貨的IP用量是獨立計算的):

賬戶頻率限製

Bybit基於每分鐘的滾動時間窗口來做頻率限製,並且是按賬戶(uid)和交易對(symbol)來做劃分限製,每次請求API響應中都會包含如下字段:

"rate_limit_status": 119,
"rate_limit_reset_ms": 1572114055663,
"rate_limit": 120

接口頻率限製表

頻率限製 請求路徑 消耗
100/min
/futures/private/order/cancel 1 / request
/futures/private/stop-order/create 1 / request
/futures/private/stop-order/cancel 1 / request
/futures/private/order/replace 1 / request
/futures/private/stop-order/replace 1 / request
/futures/private/order/create 1 / request
/futures/private/order/cancel 1 / request
/futures/private/order/cancelAll 10 / request
/futures/private/stop-order/cancelAll 10 / request
600/min /futures/private/order/list 1 / request
/futures/private/stop-order/list 1 / request
/futures/private/order 1 / request
/futures/private/stop-order 1 / request
120/min /futures/private/execution/list 1 / request
75/min /futures/private/position/leverage/save 1 / request
/futures/private/position/change-position-margin1 / request
/futures/private/position/trading-stop1 / request
/futures/private/position/switch-mode1 / request
/futures/private/position/switch-isolated1 / request
/futures/private/tpsl/switch-mode1 / request
120/min
/futures/private/position/list1 / request

下單限製

每個交易對可以持有的訂單數量上限:

如何提高頻率限製

Bybit流動性貢獻系統

Bybit 使用報單成交率流動性貢獻打分來評價用戶對改善bybit可執行流動性作出的貢獻。

不同symbol的貢獻分報單成交率是獨立計算的。

報單成交率

平臺上每天提交超過2000個報單的賬戶,需要保持7天的報單成交率高於最小報單成交率門檻值,違反此規則將會被降低頻率或禁用 API。

報單成交率

報單成交率舉例
A用戶:
已成交報單數量 = 2
已提交報單數量 =8
報單成交率 = 2 / 8 = 25%

B用戶:
已成交報單數量 = 1
已提交報單數量 =1
報單成交率 = 1 / 1 = 100%

API 交易用戶最小報單成交率門檻

7日內API 交易用戶最小報單成交率門檻 0.1%

API 交易用戶提高頻率的條件

平臺會根據API用戶近7日掛單對平臺流動性貢獻分的最低值,對滿足條件的用戶進行提高頻率上限的獎勵

流動性貢獻分 Order頻率限製
20-100 800次 / 每分鐘
10-20 600次 / 每分鐘
5-10 400次 / 每分鐘
2-5 200次 / 每分鐘
<2 100次 / 每分鐘
流動性貢獻打分

名詞解釋
有效價格掛單

有效價格範圍
[最佳競價中間價 - 3 * 價格最小變動單位, 最佳競價中間價 + 3 * 價格最小變動單位]

舉例:
 BTC最佳競買價 = 10000
 BTC最佳競賣價 = 10001
 「有效價格」範圍:
 [(10000 + 10001) / 2 - 3* 0.5, (10000 + 10001) / 2 + 3* 0.5] = [9999,10002]

有效價格掛單自占比

每秒計算 該用戶在有效價格範圍內的報掛單數量 /該用戶提交的掛單總數量,然後每日計算用戶當日占比的平均值。

該用戶在有效價格範圍內的掛單數量 = 8000
該用戶提交的掛單總數量 = 10000
有效價格掛單自占比 = 8000 / 10000 = 0.8

有效價格掛單平臺占比

每秒計算 該用戶在有效價格範圍內的掛單數量 / 平臺所有用戶在有效價格範圍內的掛單總數量,然後每日計算用戶當日占比的平均值。

有效價格掛單平臺占比舉例:

某一秒,用戶在「有效價格」範圍:[9999, 10002] 內的掛單有8000張,全平臺的交易委托賬本在 [9999, 10002] 內的掛單總量為200000。

該用戶在有效價格範圍內的掛單數量 = 8000
平臺所有用戶在有效價格範圍內的掛單總數量 = 200000
有效價格掛單量平臺占比 = 8000 / 200000 = 0.04

WebSocket接口

鑒權/認證

認證方式:

方法1: 建立連接時附帶驗證信息.

# based on: https://github.com/verata-veritatis/pybit/blob/master/pybit/__init__.py

import hmac
import json
import time
import websocket

ws_url = "wss://stream.bybit.com/realtime"

api_key = ""
api_secret = ""

# Generate expires.
expires = int((time.time() + 1) * 1000)

# Generate signature.
signature = str(hmac.new(
    bytes(api_secret, "utf-8"),
    bytes(f"GET/realtime{expires}", "utf-8"), digestmod="sha256"
).hexdigest())

param = "api_key={api_key}&expires={expires}&signature={signature}".format(
    api_key=api_key,
    expires=expires,
    signature=signature
)

url = ws_url + "?" + param

ws = websocket.WebSocketApp(
    url=url,
    ...
)

方法2: 建立連接後發送auth請求驗證.

ws = websocket.WebSocketApp(
    url=url,
    ...
)

# Authenticate with API.
ws.send(
    json.dumps({
        "op": "auth",
        "args": [api_key, expires, signature]
    })
)

Websocket服務器地址:

如右側代碼區所示,一共有兩種驗證方法.

心跳包/Ping

如何發送心跳包

ws.send('{"op":"ping"}');

響應示例

{
    "success": true, // Whether ping is successful
    "ret_msg": "pong",
    "conn_id": "036e5d21-804c-4447-a92d-b65a44d00700",// current connection id
    "request": {
        "op": "ping",
        "args": null
    }
}

訂閱方式

Websocket訂閱方式

直接訂閱

// Subscribing to the trade data for BTCUSDH21
ws.send('{"op":"subscribe","args":["trade.BTCUSDH21"]}')

通過分隔符來訂閱多個topic

// Example: Subscribing to the trade data for BTCUSDH21 and BTCUSDM21
ws.send('{"op":"subscribe","args":["trade.BTCUSDH21|BTCUSDM21"]}')

通過匹配符來訂閱多個topic

// Example: Subscribing to the trade data for all symbols
ws.send('{"op": "subscribe", "args": ["trade.*"]}')

建立連接後, 可以通過發送JSON請求來訂閱topic. 其中binary為false表示不進行壓縮傳輸,為true時表示以GZIP格式進行壓縮,請求格式如下:

ws.send('{"op": "subscribe", "args": ["topic.filter"]}');

您也可以同時訂閱多個感興趣的topic,訂閱方式如下

ws.send('{"op": "subscribe", "args": ["topic.filter", "topic.filter"]}');

您可以使用管道符號(|)來分割多個參數,前提是這些參數都是合法的.

您還可以使用匹配符號(*)來匹配多個topic,具體用法見右側代碼欄

Websocket取消訂閱方式

取消訂閱

// Unsubscribing from the trade data for BTCUSDM21
ws.send('{"op":"unsubscribe","args":["trade.BTCUSDM21"]}')

您可以在不斷開連接的前提下動態調整您要訂閱的信息,取消訂閱方式如下:

ws.send('{"op": "unsubscribe", "args": ["topic.filter", "topic.filter"]}');

推送周期

如果topic名中包含一個推送周期,如100ms, 那麽表明這個topic是每隔100ms推送一次.否則, 這個topic只要有消息就會推送.

訂閱結果

訂閱推送

{
   "success": true, // Whether subscription is successful
   "ret_msg": "",   // Successful subscription: "", otherwise it shows error message
   "conn_id":"e0e10eee-4eff-4d21-881e-a0c55c25e2da",// current connection id
   "request": {     // Request to your subscription
       "op": "subscribe",
       "args": [
           "kline.BTCUSDH21.1m"
       ]
   }
}

每個topic訂閱請求都會有對應的響應,您可以根據返回結果判斷是否訂閱成功。

公共 Topics

orderBook25檔

請求訂閱

ws.send('{"op": "subscribe", "args": ["orderBookL2_25.BTCUSDH21"]}');
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=None, api_secret=None)
ws.subscribe_orderBookL2(symbol="BTCUSDH21")
while True:
    data = ws.get_data("orderBookL2_25.BTCUSDH21")
    if data:
        print(data)

快照推送示例 - 連接建立成功後首次推送

{
     "topic": "orderBookL2_25.BTCUSDH21",
     "type": "snapshot",
     "data": [
        {
            "price": "2999.00",
            "symbol": "BTCUSDH21",
            "id": 29990000,
            "side": "Buy",
            "size": 9
        },
        {
            "price": "3001.00",
            "symbol": "BTCUSDH21",
            "id": 30010000,
            "side": "Sell",
            "size": 10
        }
     ],
     "cross_seq": 11518,
     "timestamp_e6": 1555647164875373
}

增量推送示例 - 快照數據推送後,推送的增量數據

{
     "topic": "orderBookL2_25.BTCUSDH21",
     "type": "delta",
     "data": {
          "delete": [
             {
                   "price": "3001.00",
                   "symbol": "BTCUSDH21",
                   "id": 30010000,
                   "side": "Sell"
             }
          ],
          "update": [
             {
                   "price": "2999.00",
                   "symbol": "BTCUSDH21",
                   "id": 29990000,
                   "side": "Buy",
                   "size": 8
             }
          ],
          "insert": [
             {
                   "price": "2998.00",
                   "symbol": "BTCUSDH21",
                   "id": 29980000,
                   "side": "Buy",
                   "size": 8
             }
          ],
          "transactTimeE6": 0
     },
     "cross_seq": 11519,
     "timestamp_e6": 1555647221331673
}

獲取25檔orderbook數據.

訂閱成功後, 會立即得到一個當前快照包的推送信息. orderbook數據按訂單價格升序排列, 從最低價格的買單到最高價格的賣單.

快照包之後,每當orderbook發生變化,websocket都會推送這些變化的增量數據.

返回參數

參數 類型 說明
price string 委托價格
symbol string 合約類型
side string 方向
size number 倉位數量

orderBook200檔

請求訂閱

ws.send('{"op": "subscribe", "args": ["orderBook_200.100ms.BTCUSDH21"]}');

快照推送示例 - 連接建立成功後首次推送

{
     "topic": "orderBook_200.100ms.BTCUSDH21",
     "type": "snapshot",
     "data": [
        {
            "price": "2999.00",
            "symbol": "BTCUSDH21",
            "id": 29990000,
            "side": "Buy",
            "size": 9
        },
        {
            "price": "3001.00",
            "symbol": "BTCUSDH21",
            "id": 30010000,
            "side": "Sell",
            "size": 10
        }
     ],
     "cross_seq": 11518,
     "timestamp_e6": 1555647164875373
}

增量推送示例 - 快照數據推送後,推送的增量數據

{
     "topic": "orderBook_200.100ms.BTCUSDH21",
     "type": "delta",
     "data": {
          "delete": [
             {
                   "price": "3001.00",
                   "symbol": "BTCUSDH21",
                   "id": 30010000,
                   "side": "Sell"
             }
          ],
          "update": [
             {
                   "price": "2999.00",
                   "symbol": "BTCUSDH21",
                   "id": 29990000,
                   "side": "Buy",
                   "size": 8
             }
          ],
          "insert": [
             {
                   "price": "2998.00",
                   "symbol": "BTCUSDH21",
                   "id": 29980000,
                   "side": "Buy",
                   "size": 8
             }
          ],
          "transactTimeE6": 0
     },
     "cross_seq": 11519,
     "timestamp_e6": 1555647221331673
}

獲取200檔orderbook數據.

訂閱成功後, 會立即得到一個當前快照包的推送信息. orderbook數據按訂單價格升序排序, 從最低價格的買單到最高價格的賣單.

快照包之後,每當orderbook發生變化,websocket將會繼續推送這些增量數據.

返回參數

參數 類型 說明
price string 委托價格
symbol string 合約類型
side string 方向
size number 倉位數量

平臺成交

請求訂閱

ws.send('{"op": "subscribe", "args": ["trade"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=None, api_secret=None)
ws.subscribe_trade()
while True:
    data = ws.get_data("trade.BTCUSDH21")
    if data:
        print(data)

響應示例

{
    "topic": "trade.BTCUSDH21",
    "data": [
        {
            "timestamp": "2020-01-12T16:59:59.000Z",
            "trade_time_ms": 1582793344685, // trade time in millisecond
            "symbol": "BTCUSDH21",
            "side": "Sell",
            "size": 328,
            "price": 8098,
            "tick_direction": "MinusTick",
            "trade_id": "00c706e1-ba52-5bb0-98d0-bf694bdc69f7",
            "cross_seq": 1052816407
        }
    ]
}

獲取Bybit平臺最近成交數據.

返回參數

參數 類型 說明
time string UTC 時間
trade_time_ms number 毫秒時間戳
symbol string 合約類型
side string 方向
size number 倉位數量
price number 委托價格
tick_direction string 價格變化方向
trade_id string 交易ID
cross_seq number 撮合版本號

保險基金

請求訂閱

ws.send('{"op": "subscribe", "args": ["insurance"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=None, api_secret=None)
ws.subscribe_insurance()
while True:
    data = ws.get_data("insurance.BTC")
    if data:
        print(data)

響應示例

{
    "topic": "insurance.BTC",
    "data": [
        {
            "currency": "BTC",
            "timestamp": "2020-01-11T20:00:00Z",
            "wallet_balance": 98786916569
        }
    ]
}

獲取保險基金數據.

返回參數

參數 類型 說明
currency string 幣種類型
timestamp string UTC 時間
wallet_balance number 錢包余額

行情

請求訂閱

ws.send('{"op": "subscribe", "args": ["instrument_info.100ms.BTCUSDH21"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=None, api_secret=None)
ws.subscribe_instrument_info(symbol="BTCUSDH21")
while True:
    data = ws.get_data("instrument_info.100ms.BTCUSDH21")
    if data:
        print(data)

快照推送示例 - 連接建立成功後首次推送

{
    "topic":"instrument_info.100ms.BTCUSDH21",
    "type":"snapshot",
    "data":{
        "id":8,
        "symbol":"BTCUSDM21",
        "symbol_name":"BTCUSD0625",
        "symbol_year":2021,
        "contract_type":"InverseFutures",  // 合約類型枚舉             
        "coin":"BTC",
        "quote_symbol":"BTCUSD",
        "mode":"MergedSingle", // Supported position mode: MergedSingle - Single side position mode  BothSide - Both side mode
        "is_up_borrowable":0,
        "import_time_e9":0,
        "start_trading_time_e9":1602732600000000000,
        "time_to_settle":1038939,
        "settle_time_e9":1616833800000000000,
        "settle_fee_rate_e8":0,
        "contract_status":"Trading",
        "system_subsidy_e8":0,
        "last_price":"500340000",
        "last_price_e4":500340000,
        "last_tick_direction":"MinusTick",
        "bid1_price":"400025000",
        "bid1_price_e4":400025000,
        "ask1_price":"475450000",
        "ask1_price_e4":475450000,
        "prev_price_24h":"467820000",
        "prev_price_24h_e4":467820000,
        "price_24h_pcnt_e6":90205,
        "high_price_24h":"573420000",
        "high_price_24h_e4":573420000,
        "low_price_24h":"510020000",
        "low_price_24h_e4":510020000,
        "prev_price_1h":"543920000",
        "prev_price_1h_e4":543920000,
        "price_1h_pcnt_e6":-62325,
        "mark_price":"507019537",
        "mark_price_e4":507019537,
        "index_price":"579821900",
        "index_price_e4":579821900,
        "open_interest":0,
        "open_value_e8":0,
        "total_turnover_e8":874161217,
        "turnover_24h_e8":6781366,
        "total_volume":426476,
        "volume_24h":3613,
        "fair_basis_e8":-793519000000,
        "fair_basis_rate_e8":-13685564,
        "basis_in_year_e8":-412313782,
        "expect_price":"0",
        "expect_price_e4":0,
        "cross_seq":8761176,
        "created_at_e9":0,
        "updated_at_e9":1615541855287480000
    },
    "cross_seq":9267002,
    "timestamp_e6":1615794861826248
}

增量推送示例 - 快照數據推送後,推送的增量數據

{
    "topic": "instrument_info.100ms.BTCUSDH21",
    "type": "delta",
    "data": {
        "delete": [],
        "update": [
            {
                "id": 1,
                "symbol": "BTCUSDH21",
                "prev_price_24h_e4": 81565000,
                "prev_price_24h": 81565000,
                "price_24h_pcnt_e6": -4904,
                "open_value_e8": 2000479681106,
                "total_turnover_e8": 2029370495672976,
                "turnover_24h_e8": 9066215468687,
                "volume_24h": 735316391,
                "cross_seq": 1053192657,
                "created_at": "2018-11-14T16:33:26Z",
                "updated_at": "2020-01-12T18:25:25Z"
            }
        ],
        "insert": []
    },
    "cross_seq": 1053192657,
    "timestamp_e6": 1578853525691123
}

獲取合約的最新數據.

返回參數

參數 類型 說明
symbol string 合約類型
last_price_e4 integer (已廢棄)最新成交價 * 10^4
tick_direction string 價格變化方向
prev_price_24h_e4 integer (已廢棄)24小時前的整點市價 * 10^4
price_24h_pcnt_e6 integer 市價相對24h變化百分比 * 10^4
high_price_24h_e4 integer (已廢棄)最近 24 小時最高價 * 10^4
low_price_24h_e4 integer (已廢棄)最近 24 小時最低價 * 10^4
prev_price_1h_e4 integer (已廢棄)1小時前的整點市價 * 10^4
price_1h_pcnt_e6 integer 市價相對1小時前變化百分比 * 10^6
mark_price_e4 integer (已廢棄)標記價格 * 10^4
index_price_e4 integer (已廢棄)指數價格 * 10^4
last_price integer 最新成交價
prev_price_24h integer 24小時前的整點市價
high_price_24h integer 最近 24 小時最高價
low_price_24h integer 最近 24 小時最低價
prev_price_1h integer 1小時前的整點市價
mark_price integer 標記價格
index_price integer 指數價格
open_interest integer 未平倉合約數量. 不是實時更新,最慢更新時間是一分鐘
open_value_e8 integer 未平倉價值 * 10^8. 不是實時更新,最慢更新時間是一分鐘
total_turnover_e8 integer 總營業額 * 10^8
turnover_24h_e8 integer 24小時營業額 * 10^8
total_volume integer 總交易量
volume_24h integer 最近 24 小時成交量
predicted_funding_rate_e6 integer 預測資金費率 * 10^6
cross_seq integer 撮合版本號
created_at string 創建時間
updated_at string 更新時間
next_funding_time string 下次結算資金費用時間
countdown_hour integer 結算資金費用剩余時間

K線

請求訂閱

ws.send('{"op":"subscribe","args":["klineV2.1.BTCUSDH21"]}')

響應示例

{
    "topic": "klineV2.1.BTCUSDH21",                //topic name
    "data": [{
        "start": 1572425640,                    //start time of the candle
        "end": 1572425700,                      //end time of the candle
        "open": 9200,                           //open price
        "close": 9202.5,                        //close price
        "high": 9202.5,                         //max price
        "low": 9196,                            //min price
        "volume": 81790,                        //volume
        "turnover": 8.889247899999999,          //turnover
        "confirm": False,                       //snapshot flag
        "cross_seq": 297503466,                 
        "timestamp": 1572425676958323           //cross time
    }],
    "timestamp_e6": 1572425677047994            //server time
}

目前所支持的周期:

返回參數

參數 類型 說明
start integer 開始時間戳(秒)
end integer 結束時間戳(秒)
open number 開始價格
close number 結束價格
high number 最高價格
low number 最低價格
volume number 交易量
turnover number 成交金額
confirm bool 是否確認
cross_seq integer 撮合版本號
timestamp integer 結束時間戳(秒)

私有 Topics

持倉

請求訂閱

ws.send('{"op": "subscribe", "args": ["position"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=api_key, api_secret=api_secret)
ws.subscribe_position()
while True:
    data = ws.get_data("position")
    if data:
        print(data)

響應示例

{
   "topic": "position",
   "action": "update",
   "data": [
       {
           "user_id":  1,                            // user ID
           "symbol": "BTCUSDH21",                       // the contract for this position
           "position_idx":1,
           "size": 11,                               // the current position amount
           "side": "Sell",                           // side
           "mode": 0,                                // 0- merged single mode 3- both side mode
           "isolated":true,
           "position_value": "0.00159252",           // positional value
           "entry_price": "6907.291588174717",       // entry price
           "liq_price": "7100.234",                  // liquidation price
           "bust_price": "7088.1234",                // bankruptcy price
           "leverage": "1",                           // leverage
           "order_margin":  "1",                      // order margin
           "position_margin":  "1",                   // position margin
           "available_balance":  "2",                 // available balance
           "take_profit": "0",                        // take profit price           
           "tp_trigger_by":  "LastPrice",             // take profit trigger price, eg: LastPrice, IndexPrice. Conditional order only
           "stop_loss": "0",                          // stop loss price
           "sl_trigger_by":  "",                     // stop loss trigger price, eg: LastPrice, IndexPrice. Conditional order only
           "realised_pnl":  "0.10",               // realised PNL
           "trailing_stop": "0",                  // trailing stop points
           "trailing_active": "0",                // trailing stop trigger price
           "wallet_balance":  "4.12",             // wallet balance
           "risk_id":  1,                       
           "occ_closing_fee":  "0.1",             // position closing
           "occ_funding_fee":  "0.1",             // funding fee
           "auto_add_margin": 0,                  // auto margin replenishment switch
           "cum_realised_pnl":  "0.12",           // Total realized profit and loss
           "position_status": "Normal",           // status of position (Normal: normal Liq: in the process of liquidation Adl: in the process of Auto-Deleveraging)
                        // Auto margin replenishment enabled (0: no 1: yes)
           "position_seq": 14                     // position version number
       }
   ]
}

獲取我的倉位列表。通過該接口可以獲取當前用戶的持倉信息,如持倉數量、賬戶余額等信息

返回參數

參數 類型 說明
user_id number 用戶ID
symbol string 合約類型
side string 方向
size number 倉位數量
position_value string 倉位價值
entry_price string 平均入場價
liq_price string 強平價格
bust_price string 破產價格
leverage string 逐倉模式下, 值為用戶設置的杠桿;全倉模式下,值為當前風險限額下最大杠桿
order_margin string 委托預占用保證金
position_margin string 倉位保證金
available_balance string 可用余額, 錢包余額 - 倉位保證金
take_profit string 止盈價格
tp_trigger_by string 止盈激活價格類型,默認為LastPrice
stop_loss string 止損價格
sl_trigger_by string 止損激活價格類型,默認為LastPrice
realised_pnl string 當日已結盈虧
trailing_stop string 追蹤止損
trailing_active string 激活價格
wallet_balance string 錢包余額
risk_id number 風險限額ID
occ_closing_fee string 倉位占用的平倉手續費
occ_funding_fee string 倉位size和當前資金費率預占用資金費用
auto_add_margin number 是否自動追加保證金
cum_realised_pnl string 累計已結盈虧
position_status string 倉位狀態,正常,強平,減倉
position_seq number 倉位變化版本號

個人成交

請求訂閱

ws.send('{"op": "subscribe", "args": ["execution"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=api_key, api_secret=api_secret)
ws.subscribe_execution()
while True:
    data = ws.get_data("execution")
    if data:
        print(data)

響應示例

{
    "topic": "execution",
    "data": [
        {
            "symbol": "BTCUSDH21",
            "side": "Buy",
            "order_id": "xxxxxxxx-xxxx-xxxx-9a8f-4a973eb5c418",
            "exec_id": "xxxxxxxx-xxxx-xxxx-8b66-c3d2fcd352f6",
            "order_link_id": "",
            "price": "8300",
            "order_qty": 1,
            "exec_type": "Trade",
            "exec_qty": 1,
            "exec_fee": "0.00000009",
            "leaves_qty": 0,
            "is_maker": false,
            "trade_time": "2020-01-14T14:07:23.629Z" // trade time
        }
    ]
}

獲取用戶成交記錄,按時間升序排列。

返回參數

參數 類型 說明
symbol string 合約類型
side string 方向
order_id string 訂單ID
exec_id string 成交ID
order_link_id string 機構自定義訂單ID
price string 成交價格
order_qty number 訂單數量
exec_type string 交易類型枚舉
exec_qty number 成交數量
exec_fee string 交易手續費
leaves_qty number 剩余委托數量
is_maker bool 是否是maker
trade_time string 交易時間

活動單

請求訂閱

ws.send('{"op": "subscribe", "args": ["order"]}')
from BybitWebsocket import BybitWebsocket
ws = BybitWebsocket(wsURL="wss://stream-testnet.bybit.com/realtime",
                    api_key=api_key, api_secret=api_secret)
ws.subscribe_order()
while True:
    data = ws.get_data("order")
    if data:
        print(data)

響應示例

{
    "topic": "order",
    "data": [
        {
            "order_id": "xxxxxxxx-xxxx-xxxx-9a8f-4a973eb5c418",
            "order_link_id": "",
            "symbol": "BTCUSDH21",
            "side": "Sell",
            "order_type": "Market",
            "price": "8579.5",
            "qty": 1,
            "time_in_force": "ImmediateOrCancel",
            "create_type": "CreateByClosing",
            "cancel_type": "",
            "order_status": "Filled",
            "leaves_qty": 0,
            "cum_exec_qty": 1,
            "cum_exec_value": "0.00011655",
            "cum_exec_fee": "0.00000009",
            "timestamp": "2020-01-14T14:09:31.778Z",
            "take_profit": "0",
            "stop_loss": "0",
            "trailing_stop": "0",
            "trailing_active": "0",
            "last_exec_price": "8580",
            "reduce_only": false,
            "close_on_trigger": false
        }
    ]
}

返回參數

參數 類型 說明
order_id string 訂單ID
order_link_id string 機構自定義訂單ID
symbol string 合約類型
side string 方向
order_type string 委托單價格類型
price string 委托價格
qty number 成交數量
time_in_force string 執行策略
create_type string 下單操作的觸發場景
cancel_type string 取消操作的觸發場景
order_status string 訂單狀態
leaves_qty number 剩余委托數量
cum_exec_qty number 累計成交數量
cum_exec_value string 累計成交價值
cum_exec_fee string 累計成交手續費
timestamp string 委托時間
take_profit string 止盈價格
stop_loss string 止損價格
trailing_stop string 追蹤止損
trailing_active string 激活價格
last_exec_price string 最近一次成交價格
reduce_only bool 只減倉
close_on_trigger bool 觸發後平倉. 如果下平倉單,請設置為true,避免因為保證金不足而導致下單失敗

條件單

請求訂閱

ws.send('{"op": "subscribe", "args": ["stop_order"]}')

響應示例

{
    "topic": "stop_order",
    "data": [
        {
            "order_id": "xxxxxxxx-xxxx-xxxx-98fb-335aaa6c613b",
            "order_link_id": "",
            "user_id": 1,
            "symbol": "BTCUSDH21",
            "side": "Buy",
            "order_type": "Limit",
            "price": "8584.5",
            "qty": 1,
            "time_in_force": "ImmediateOrCancel",
            "create_type": "CreateByStopOrder",
            "cancel_type": "",
            "order_status": "Untriggered", //條件單狀態stop_order_status枚舉
            "stop_order_type": "Stop",
            "trigger_by": "LastPrice",
            "trigger_price": "8584.5", //如果stop_order_type為`TrailingProfit`時,為激活價格,否則為觸發價格。
            "close_on_trigger": false,
            "timestamp": "2020-01-14T14:11:22.062Z"
        }
    ]
}

返回參數

參數 類型 說明
order_id string 訂單ID
order_link_id string 機構自定義訂單ID
user_id number 用戶ID
symbol string 交易對枚舉
order_type string 訂單類型枚舉
side string 方向
price string 委托價格
qty number 委托數量
time_in_force string 執行策略
create_type string 下單操作的觸發場景
cancel_type string 取消操作的觸發場景
order_status string 訂單狀態
stop_order_type string 委托單價格類型
trigger_by string 觸發價格類型. 默認為最新市價
trigger_price string 如果stop_order_type為`TrailingProfit`時,為激活價格,否則為觸發價格。
close_on_trigger bool 觸發後平倉. 如果下平倉單,請設置為true,避免因為保證金不足而導致下單失敗
timestamp string UTC 時間

歸檔數據

歷史行情

您可以在這裏獲取Bybit 歷史行情數據

枚舉定義

以下是各個接口請求參數或返回結果中定義的枚舉。

Side (side)

Symbol (symbol)

您可以根據Query Symbol接口獲取所有交易中的symbol。

Currency (currency/coin)

Contract Type(contract_type)

Contract Status(status)

Wallet fund type (wallet_fund_type / type)

Withdraw status (status)

Order type (order_type)

Quantity (qty)

Price (price)

Time in force (time_in_force)

Trigger price type (trigger_by)

Order (order)

排序方向

Order status (order_status)

Stop order status (stop_order_status)

Cancel type (cancel_type)

Create type (create_type)

Exec type (exec_type)

Liquidity type (last_liquidity_ind)

Tick direction type (tick_direction)

表示價格的波動,相對於上一筆交易是漲還是跌

TP/SL mode (tp_sl_mode)

止盈止損模式

Kline interval (interval)

Stop order type (stop_order_type)

錯誤碼

Bybit使用以下HTTP Code和錯誤碼:

HTTP Code 含義
200 請求有效
403 拒絕訪問
404 訪問路徑不存在
Error Code 含義
10001 內部錯誤; 無法處理您的請求。 請再試一次.
10002 請求過期,請檢查 timestamprecv_window
10003 無效的apikey
10004 簽名錯誤
10005 apikey權限不足
10006 請求次數超限
10007 您的請求中沒有api_key
10010 請求ip不匹配
10016 服務異常或請求超時
10017 請求路徑不存在或請求方法錯誤
10018 超過ip頻率限製
20001 訂單不存在
20003 缺少參數side
20004 side不合法
20005 缺少參數symbol
20006 symbol不合法
20007 缺少參數order_type
20008 order_type不合法
20009 缺少參數qty
20010 新增訂單被拒絕
20011 撤銷訂單被拒絕
20012 qty 必須大於0並小於1百萬
20013 訂單不存在
20014 API-key格式無效
20015 無效的API密鑰,IP或操作權限。.
20016 找不到該交易對的交易窗口。 嘗試改為24小時自動報價。
20017 缺少參數order_id
20018 日期格式不對
20019 缺少參數stop_px
20020 缺少參數base_price
20021 缺少參數stop_order_id
20022 缺少參數leverage
20023 leverage必須是數字
20031 leverage必須大於0
20070 缺少參數margin
20071 margin必須大於0
20084 order_idorder_link_id必須二選一
30001 order_link_id重復
30003 qty太小
30004 qty太大
30005 price太大
30007 price太小
30008 order_type非法
30009 持倉不存在
30010 錢包余額不足
30011 由於倉位清算,不允許操作
30012 由於ADL,不允許操作
30013 持倉處於強平、ADL或其他非可操作狀態
30014 平倉數量不能大於持倉數量
30015 平倉訂單不合法,應和持倉方向相反
30016 平倉前請先取消止盈止損單
30017 不能低於買方向強平價格
30018 不能高於賣方向強平價格
30019 非開倉單不能使用TP/SL參數
30020 持倉已有TP/SL設置
30021 預估保證金不足
30022 預估買方向強平價格不能高於標記價格
30023 預估賣方向強平價不能低於標記價格
30024 空倉無法設置TP/SL/TS
30025 觸發價格必須高於市價10%
30026 價格過高
30027 止盈價應高於上筆成交價
30028 止損價應在強平價和上筆成交價之間
30029 止損價格應在上筆成交價和清算價格之間
30030 設定的止盈價格應低於上筆成交價
30031 可用余額不足以支付訂單費用
30032 訂單已成交或已取消
30033 條件單的數量超限
30034 訂單不存在
30035 取消訂單過快
30036 訂單執行後的預期倉位值超過當前風險限額
30037 訂單已取消
30041 持倉不存在
30042 錢包余額不足
30043 由於倉位清算,不允許操作
30044 由於ADL,不允許操作
30045 持倉處於其他不可操作狀態
30049 可用余額不足
30050 任何調整都將立即引發清算
30051 杠桿設置非法,因為它將超出您的風險限額
30052 杠桿設置非法,不能小於1
30054 保證金設置不合法
30057 請求的合約數量超過風險限額
30063 不滿足只減倉的條件
30067 可用余額不足
30068 退出價值必須大於0
30074 無法創建條件單,由base_pricestop_px比較可知預期漲至stop_px時觸發條件單,而此時LastPrice(或IndexPriceMarkPrice,由trigger_by指定)已經達到或高於stop_px
30075 無法創建條件單,由base_pricestop_px比較可知預期跌至stop_px時觸發條件單,而此時LastPrice(或IndexPriceMarkPrice,由trigger_by指定)已經達到或低於stop_px
33004 apikey已過期
34026 風險限額沒有變化