# 查询历史成交

history_deal_list_query(code='', start='', end='', trd_env=TrdEnv.REAL, acc_id=0, acc_index=0)

  • 介绍

    查询指定交易业务账户的历史成交列表。
    该接口只支持实盘交易,不支持模拟交易。

  • 参数

    参数 类型 说明
    code str 代码过滤
    start str 开始时间
    end str 结束时间
    trd_env TrdEnv 交易环境
    acc_id int 交易业务账户 ID
    acc_index int 交易业务账户列表中的账户序号
    • start 和 end 的组合如下
      Start 类型 End 类型 说明
      str str start 和 end 分别为指定的日期
      None str start 为 end 往前 90 天
      str None end 为 start 往后 90 天
      None None start 为往前 90 天,end 当前日期
  • 返回

    参数 类型 说明
    ret RET_CODE 接口调用结果
    data pd.DataFrame 当 ret == RET_OK 时,返回交易成交列表
    str 当 ret != RET_OK 时,返回错误描述
    • 交易成交列表格式如下:
      字段 类型 说明
      trd_side TrdSide 交易方向
      deal_id str 成交号
      order_id str 订单号
      code str 股票代码
      stock_name str 股票名称
      qty float 成交数量
      price float 成交价格
      create_time str 创建时间
      counter_broker_id int 对手经纪号
      counter_broker_name str 对手经纪名称
      status DealStatus 成交状态
  • Example

from futu import *
trd_ctx = OpenSecTradeContext(filter_trdmarket=TrdMarket.HK, host='127.0.0.1', port=11111, security_firm=SecurityFirm.FUTUSECURITIES)
ret, data = trd_ctx.history_deal_list_query()
if ret == RET_OK:
    print(data)
    if data.shape[0] > 0:  # 如果成交列表不为空
        print(data['deal_id'][0])  # 获取历史成交的第一个成交号
        print(data['deal_id'].values.tolist())  # 转为 list
else:
    print('history_deal_list_query error: ', data)
trd_ctx.close()
1
2
3
4
5
6
7
8
9
10
11
  • Output
    code stock_name              deal_id             order_id    qty  price trd_side              create_time  counter_broker_id counter_broker_name status
0  HK.00388      香港交易所  5056208452274069375  4665291631090960915  100.0  370.0      BUY  2020-09-17 21:15:59.979                  5                         OK)    
5056208452274069375
['5056208452274069375']
1
2
3
4

接口限制

  • 每 30 秒内最多请求 10 次查询历史成交接口

提示

  • 历史成交,按照时间的“倒序”进行排列,即:后成交的记录在前,先成交的记录在后