跳到主要内容

获取历史订单(3个月)

API说明

此接口提供过去三个月的历史订单记录。用户可以使用页码、页面大小、订单类型和交易合约等参数筛选结果。响应提供了全面的订单详情,包括状态、保证金、杠杆率和订单规模。

注意:历史订单数据只能通过 Restful API 获取。

注意事项

  1. 如果未指定参数,此接口默认将返回过去三个月内最近10个历史订单记录。
  2. 此接口仅返回已执行(即已进入交易)的订单。

认证

这是一个私有接口,需要认证。有关使用RESTful API的详细信息,请参考简介 > 认证和代码示例 > 合约 > RESTful私有接口。

请求方法

GET

接口地址

/v1/perpum/orders/archive

频率限制

该接口的调用频率限制为:每个 IP 和用户 ID 每秒最多请求5次。
此外,该接口还受到全局频率限制的约束。
有关"全局速率限制"和"API限频策略"的详细信息,请参阅“频率限制”部分,跳转

请求参数

参数必填类型描述
pagefalseInteger当前页码
pageSizefalseInteger每页结果数。注意:如果未指定,接口将返回过去三个月内最近10个订单的信息。
originTypefalseString初始订单类型:plan/planTrigger/execute
execute:市价单
plan:用于不同计划订单,包括限价单、触发限价单、带SL/TP的限价单、带SL/TP的触发限价单、触发市价单、带SL/TP的触发市价单
planTrigger:计划触发订单
instrumentfalseString交易品种的基础货币(例如,BTC或btc)。此参数不区分大小写。
注意:对于以数字开头的交易品种(例如1000PEPE),大写和小写格式都有效。

响应参数

参数类型描述
userIdLong合约账户用户ID
baseSizeBigDecimal基础货币订单规模
completeUsdtBigDecimalUSDT交易金额
createdDateLong订单创建的时间戳
currentPieceBigDecimal当前持有的合约数量
directionString交易方向:做多(long)/做空(short)
entrustUsdtBigDecimalUSDT订单规模
havShortfallBoolean表示用户是否有清算风险
hedgeIdLong关联对冲ID
indexPriceBigDecimal指数价格/最新价格
instrumentString交易品种的基础货币,例如BTC或ETH
leverageBigDecimal持仓杠杆率
liquidateByString开仓和平仓事件类型:Manual
marginBigDecimal持仓使用的保证金
openIdLong持仓ID
orderIdLongID(用户可忽略)
orderPriceBigDecimal用户设置的订单价格。注意:市价单情况下忽略
orderStatusString订单状态:unFinish:未成交part:部分成交Finish:完全成交Cancel:已取消
originalTypeString原始订单类型
posTypeString持仓类型:plan/planTrigger/execute
positionModelInteger持仓模式:0:逐仓,1:全仓
quantityBigDecimal基于quantityUnit 指定订单数量:
当 quantityUnit = 0 时,数量以计价货币计量(例如,BTC-USDT 中的 USDT);
当 quantityUnit = 1 时,数量以合约张数计量;
当 quantityUnit = 2 时,数量以基础货币计量(例如,BTC-USDT 中的 BTC)。
quantityUnitInteger用于指定订单数量的计量单位:
0:以计价货币计价(例如,BTC-USDT 合约中的 USDT);
1:以合约张数计价;
2:以基础货币计价(例如,BTC-USDT 合约中的 BTC)。
statusString状态:open/close
totalPieceString合约总数量
updatedDateDate最新交易更新的时间戳
thirdOrderIdString自定义订单ID
tradePieceInteger要交易的合约
stepMarginVersionInteger(用户可忽略)
idLong订单ID
cancelPieceInteger取消的合约数量
contractTypeInteger合约类型:1:U本位永续合约
sourceString来源:web/api
avgPriceString平均成交价格
triggerPriceString永续合约计划订单的触发价格
triggerTypeInteger指定触发价格满足时的订单类型:0:限价单,1:市价单
thirdOrderIdString用户分配的自定义订单ID

请求示例

以下Python代码展示了如何获取过去三个月的历史订单记录。

注意:完整代码示例请参考简介 > 认证和代码示例 > 合约 > RESTful私有接口。

params = {
"page" : 1,
"pageSize" : 5,
"originType" : "execute",
"instrument" : "BTC",
}

api_url = "/v1/perpum/orders/archive"
method = "GET"
response_code, response_data = FuturesRestfulPrivate(params, api_url, method, sec_key, api_key) # function FuturesRestfulPrivate() is defined in section (Introduction > Authentication & Code Snippet > Futures > RESTful Private Interface)

注意:完整Java代码示例请参考简介 > 认证和代码示例 > 合约 > RESTful私有接口。

响应示例

以下是上述Python请求返回的示例响应。该响应包含过去三个月内最多5个订单。为简洁起见,下面仅显示一个订单:

{'code': 0,
'data': {'nextId': 0,
'prevId': 0,
'rows': [{'avgPrice': '86070',
'baseSize': '0',
'cancelPiece': 0,
'completeUsdt': '86.07',
'contractType': 1,
'createdDate': 1740915577000,
'currentPiece': '1',
'direction': 'short',
'entrustUsdt': '86.07',
'havShortfall': False,
'hedgeId': 20811504068180998,
'id': '33308753751538235',
'indexPrice': '86077.2',
'instrument': 'BTC',
'leverage': '1',
'liquidateBy': 'manual',
'margin': '13.8267076',
'openId': 2435521222632111503,
'orderId': 2882616995,
'orderPrice': '0',
'orderStatus': 'finish',
'originalType': 'execute',
'posType': 'execute',
'positionModel': 0,
'quantity': '100',
'quantityUnit': 0,
'source': 'api',
'status': 'open',
'stepMarginVersion': 0,
'thirdOrderId': 'historyoforder',
'totalPiece': '1',
'tradePiece': 1,
'triggerPrice': '84400',
'triggerType': 0,
'updatedDate': 1740915577000,
'userId': 1162061},.........{....}],
'total': 114},
'msg': ''}