查詢歷史訂單
獲取歷史訂單紀錄. 由於訂單創建/撤銷是異步的, 該接口返回數據可能會有延遲. 若您想實時獲取訂單信息, 您可以查詢該接口或者通過websocket推送(推薦)
提示
- 7天內的訂單:
統一帳戶2.0, 統一帳戶1.0(除了inverse)支持查詢除了"Cancelled"(完全取消), "Rejected", "Deactivated"以外的終態訂單
统一账户1.0(inverse)和經典帳戶支持查詢活動態+終態的訂單 - 24小時的订单:
統一帳戶2.0, 統一帳戶1.0(除了inverse): 對於完全取消(Cancelled),以及"Rejected", "Deactivated"的訂單僅支持查詢過去24小時的訂單記錄 - 7天外的訂單: 所有账户都只能查詢到有過成交的訂單, 即完全成交, 部分成交但最終取消的訂單
- 統一帳戶2.0, 統一帳戶1.0(除了inverse) 支持查詢過去2年的數據
信息
- 經典帳戶現貨僅能查詢終態訂單, 且取消單、拒絕單、未觸發取消單, 最多保留7天
HTTP請求
GET /v5/order/history
請求參數
| 參數 | 是否必需 | 類型 | 說明 |
|---|---|---|---|
| category | true | string | 產品類型 |
| symbol | false | string | 合約名稱 |
| baseCoin | false | string | 交易幣種 統一帳戶1.0(反向)和經典帳戶不支持該字段的查詢 |
| settleCoin | false | string | 結算幣種 統一帳戶1.0(反向)和經典帳戶不支持該字段的查詢 |
| orderId | false | string | 訂單ID |
| orderLinkId | false | string | 用戶自定義訂單ID |
| orderFilter | false | string | Order: 普通單, StopOrder: 條件單, 支持現貨和期貨tpslOrder: 現貨止盈止損單, OcoOrder: OCO訂單BidirectionalTpslOrder: 現貨(UTA)雙向止盈止損訂單
|
| orderStatus | false | string | 訂單狀態 |
| startTime | false | integer | 開始時間戳 (毫秒)
|
| endTime | false | integer | 結束時間戳 (毫秒) |
| limit | false | integer | 每頁數量限制. [1, 50]. 默認: 20 |
| cursor | false | string | 游標,用於翻頁 |
響應參數
| 參數 | 類型 | 說明 |
|---|---|---|
| category | string | 產品類型 |
| list | array | Object |
| > orderId | string | 訂單Id |
| > orderLinkId | string | 用戶自定義Id |
| > blockTradeId | string | 大宗交易訂單Id |
| > symbol | string | 合約名稱 |
| > price | string | 訂單價格 |
| > qty | string | 訂單數量 |
| > side | string | 方向. Buy,Sell |
| > isLeverage | string | 是否借貸. 僅統一帳戶spot有效0: 否1: 是0 |
| > positionIdx | integer | 倉位標識。用戶不同倉位模式 |
| > orderStatus | string | 訂單狀態 |
| > createType | string | 訂單創建類型 |
| > cancelType | string | 訂單被取消類型 |
| > rejectReason | string | 拒絕原因. 經典帳戶現貨交易不支持 |
| > avgPrice | string | 訂單平均成交價格 """0", 以及部分成交但最終被手動取消的訂單 |
| > leavesQty | string | 訂單剩餘未成交的數量. 經典帳戶現貨交易不支持 |
| > leavesValue | string | 訂單剩餘未成交的價值. 經典帳戶現貨交易不支持 |
| > cumExecQty | string | 訂單累計成交數量 |
| > cumExecValue | string | 訂單累計成交價值. 經典帳戶現貨交易不支持 |
| > cumExecFee | string | 已棄用。訂單累計成交的手續費. 經典帳戶現貨交易不支持 |
| > timeInForce | string | 執行策略 |
| > orderType | string | 訂單類型. Market,Limit. 對於止盈止損單, 則表示為觸發後的訂單類型 |
| > stopOrderType | string | 條件單類型 |
| > orderIv | string | 隱含波動率 |
| > marketUnit | string | 統一帳戶現貨交易時給入參qty選擇的單位. baseCoin, quoteCoin |
| > slippageToleranceType | string | 市價單滑點容差類型, TickSize, Percent, UNKNOWN(默認值) |
| > slippageTolerance | string | 滑點容差數值 |
| > triggerPrice | string | 觸發價格. 若stopOrderType=TrailingStop, 則這是激活價格. 否則, 它是觸發價格 |
| > takeProfit | string | 止盈價格 |
| > stopLoss | string | 止損價格 |
| > tpslMode | string | 止盈止損模式 Full: 全部倉位止盈止損, Partial: 部分倉位止盈止損現貨不返回該字段, 期權總是返回"" |
| > ocoTriggerBy | string | 現貨OCO訂單的觸發類型.OcoTriggerByUnknown, OcoTriggerByTp, OcoTriggerBySl經典帳戶現貨不支持該字段 |
| > tpLimitPrice | string | 觸發止盈後轉換為限價單的價格 |
| > slLimitPrice | string | 觸發止損後轉換為限價單的價格 |
| > tpTriggerBy | string | 觸發止盈的價格類型 |
| > slTriggerBy | string | 觸發止損的價格類型 |
| > triggerDirection | integer | 觸發方向. 1: 上漲, 2: 下跌 |
| > triggerBy | string | 觸發價格的觸發類型 |
| > lastPriceOnCreated | string | 下單時的市場價格, 現貨不適用 |
| > basePrice | string | 下單時的市場價格, 僅現貨有這個字段 |
| > reduceOnly | boolean | 只減倉. true表明這是只減倉單 |
| > closeOnTrigger | boolean | 觸發後平倉委託. 什麼是觸發後平倉委託? |
| > placeType | string | 下單類型, 僅期權使用. iv, price |
| > smpType | string | SMP執行類型 |
| > smpGroup | integer | 所屬Smp組ID. 如果uid不屬於任何組, 則默認為0 |
| > smpOrderId | string | 觸發此SMP執行的交易對手的 orderID |
| > createdTime | string | 創建訂單的時間戳 (毫秒) |
| > updatedTime | string | 訂單更新的時間戳 (毫秒) |
| > extraFees | string | 交易費率。目前,僅針對kyc=Indian用戶或在印尼網站的現貨訂單或在歐盟站的現貨法定貨幣訂單返回此數據。在其他情況下,傳回空字串。字段枚舉: feeType, subFeeType |
| > cumFeeDetail | json | 累積交易費詳情, 替代cumExecFee |
請求示例
- HTTP
- Python
- Java
- Node.js
GET /v5/order/history?category=linear&limit=1 HTTP/1.1
Host: api-testnet.bybit.com
X-BAPI-SIGN: XXXXX
X-BAPI-API-KEY: xxxxxxxxxxxxxxxxxx
X-BAPI-TIMESTAMP: 1672221263407
X-BAPI-RECV-WINDOW: 5000
from pybit.unified_trading import HTTP
session = HTTP(
testnet=True,
api_key="xxxxxxxxxxxxxxxxxx",
api_secret="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
)
print(session.get_order_history(
category="linear",
limit=1,
))
import com.bybit.api.client.config.BybitApiConfig;
import com.bybit.api.client.domain.trade.request.TradeOrderRequest;
import com.bybit.api.client.domain.*;
import com.bybit.api.client.domain.trade.*;
import com.bybit.api.client.service.BybitApiClientFactory;
var client = BybitApiClientFactory.newInstance("YOUR_API_KEY", "YOUR_API_SECRET", BybitApiConfig.TESTNET_DOMAIN).newTradeRestClient();
var orderHistory = TradeOrderRequest.builder().category(CategoryType.LINEAR).limit(10).build();
System.out.println(client.getOrderHistory(orderHistory));
const { RestClientV5 } = require('bybit-api');
const client = new RestClientV5({
testnet: true,
key: 'xxxxxxxxxxxxxxxxxx',
secret: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
});
client
.getHistoricOrders({
category: 'linear',
limit: 1,
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
響應示例
{
"retCode": 0,
"retMsg": "OK",
"result": {
"list": [
{
"orderId": "14bad3a1-6454-43d8-bcf2-5345896cf74d",
"orderLinkId": "YLxaWKMiHU",
"blockTradeId": "",
"symbol": "BTCUSDT",
"price": "26864.40",
"qty": "0.003",
"side": "Buy",
"isLeverage": "",
"positionIdx": 1,
"orderStatus": "Cancelled",
"cancelType": "UNKNOWN",
"rejectReason": "EC_PostOnlyWillTakeLiquidity",
"avgPrice": "0",
"leavesQty": "0.000",
"leavesValue": "0",
"cumExecQty": "0.000",
"cumExecValue": "0",
"cumExecFee": "0",
"timeInForce": "PostOnly",
"orderType": "Limit",
"stopOrderType": "UNKNOWN",
"orderIv": "",
"triggerPrice": "0.00",
"takeProfit": "0.00",
"stopLoss": "0.00",
"tpTriggerBy": "UNKNOWN",
"slTriggerBy": "UNKNOWN",
"triggerDirection": 0,
"triggerBy": "UNKNOWN",
"lastPriceOnCreated": "0.00",
"reduceOnly": false,
"closeOnTrigger": false,
"smpType": "None",
"smpGroup": 0,
"smpOrderId": "",
"tpslMode": "",
"tpLimitPrice": "",
"slLimitPrice": "",
"placeType": "",
"slippageToleranceType": "UNKNOWN",
"slippageTolerance": "",
"createdTime": "1684476068369",
"updatedTime": "1684476068372",
"extraFees":"",
"cumFeeDetail": {
"MNT": "0.00242968"
}
}
],
"nextPageCursor": "page_token%3D39380%26",
"category": "linear"
},
"retExtInfo": {},
"time": 1684766282976
}