個人成交
訂閱個人成交的推送
提示
單筆訂單可能有多次成交
All-In-One Topic: execution
Categorised Topic: execution.spot, execution.linear, execution.inverse, execution.option
信息
- All-In-One topic 和 Categorised topic 不能放在同一個訂閱請求裡
- All-In-One topic: 允許您監聽所有業務線的websocket更新(現貨, 正向合約, 反向合約, 期權)
- Categorised Topic: 您只能監聽您指定的那個業務的websocket更新
響應參數
| 參數 | 類型 | 說明 |
|---|---|---|
| id | string | 消息id |
| topic | string | Topic名 |
| creationTime | number | 消息數據創建時間 |
| data | array | Object |
| > category | string | 產品類型
|
| > symbol | string | 合約名稱 |
| > isLeverage | string | 是否借貸. 僅統一帳戶spot有效. 0: 否, 1: 是. 經典帳戶現貨交易不支持, 總是0 |
| > orderId | string | 訂單ID |
| > orderLinkId | string | 用戶自定義訂單ID |
| > side | string | 訂單方向.買:Buy,賣:Sell |
| > orderPrice | string | 訂單價格. 經典帳戶現貨交易不支持 |
| > orderQty | string | 訂單數量. 經典帳戶現貨交易不支持 |
| > leavesQty | string | 剩餘委託未成交數量. 經典帳戶現貨交易不支持 |
| > createType | string | 訂單創建類型"" |
| > orderType | string | 訂單類型. 市價單:Market,限價單:Limit |
| > stopOrderType | string | 条件单的订单类型。如果该订单不是条件单,则不会返回任何类型. 經典帳戶現貨交易不支持 |
| > execFee | string | 交易手續費. 您可以從這裡了解現貨手續費幣種信息. 經典帳戶現貨交易不支持 |
| > execId | string | 成交Id |
| > execPrice | string | 成交價格 |
| > execQty | string | 成交數量 |
| > execPnl | string | 每筆平倉成交的盈虧. 該值和交易日誌(統一帳戶)中的"cashFlow"字段一致 |
| > execType | string | 成交類型. 經典帳戶現貨交易不支持 |
| > execValue | string | 成交價值. 經典帳戶現貨交易不支持 |
| > execTime | string | 成交時間(毫秒) |
| > isMaker | Bool | 是否是 Maker 訂單,true 為 maker 訂單,false 為 taker 訂單 |
| > feeRate | string | 手續費率. 經典帳戶現貨交易不支持 |
| > tradeIv | string | 隱含波動率,僅期權有效 |
| > markIv | string | 標記價格的隱含波動率,僅期權有效 |
| > markPrice | string | 成交執行時,該 symbol 當時的標記價格. 經典帳戶現貨交易不支持 |
| > indexPrice | string | 成交執行時,該 symbol 當時的指數價格,目前僅對期權業務有效 |
| > underlyingPrice | string | 成交執行時,該 symbol 當時的底層資產價格,僅期權有效 |
| > blockTradeId | string | 大宗交易的订单 ID ,使用 paradigm 进行大宗交易时生成的 ID |
| > closedSize | string | 平倉數量 |
| > extraFees | List | 交易費率。目前,僅針對kyc=Indian用戶或在印尼網站的現貨訂單或在歐盟站的現貨法定貨幣訂單返回此數據。在其他情況下,傳回空字串。字段枚舉: feeType, subFeeType |
| > seq | long | 序列號, 用於關聯成交和倉位的更新
|
| > feeCurrency | string | 交易費用貨幣 |
訂閱示例
{
"op": "subscribe",
"args": [
"execution"
]
}
from pybit.unified_trading import WebSocket
from time import sleep
ws = WebSocket(
testnet=True,
channel_type="private",
api_key="xxxxxxxxxxxxxxxxxx",
api_secret="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
)
def handle_message(message):
print(message)
ws.execution_stream(callback=handle_message)
while True:
sleep(1)
推送示例
{
"id": "592324803b2785-26fa-4214-9963-bdd4727f07be",
"topic": "execution",
"creationTime": 1672364174455,
"data": [
{
"category": "linear",
"symbol": "XRPUSDT",
"execFee": "0.005061",
"execId": "7e2ae69c-4edf-5800-a352-893d52b446aa",
"execPrice": "0.3374",
"execQty": "25",
"execType": "Trade",
"execValue": "8.435",
"execPnl": "0",
"isMaker": false,
"feeRate": "0.0006",
"tradeIv": "",
"markIv": "",
"blockTradeId": "",
"markPrice": "0.3391",
"indexPrice": "",
"underlyingPrice": "",
"leavesQty": "0",
"orderId": "f6e324ff-99c2-4e89-9739-3086e47f9381",
"orderLinkId": "",
"orderPrice": "0.3207",
"orderQty": "25",
"orderType": "Market",
"stopOrderType": "UNKNOWN",
"side": "Sell",
"execTime": "1672364174443",
"isLeverage": "0",
"closedSize": "25",
"extraFees":[{"feeCoin":"USDT","feeType":"GST","subFeeType":"IND_GST","feeRate":"0.0000675","fee":"0.006403779"}],
"seq": 4688002127,
"feeCurrency": "USDT"
}
]
}