# 实时经纪队列回调

# BrokerHandlerBase

on_recv_rsp(self, rsp_pb)

  • 介绍

    实时经纪队列回调,异步处理已订阅股票的实时经纪队列推送。
    在收到实时经纪队列数据推送后会回调到该函数,您需要在派生类中覆盖 on_recv_rsp。

  • 参数

    参数 类型 说明
    rsp_pb Qot_UpdateBroker_pb2.Response 派生类中不需要直接处理该参数
  • 返回

    参数 类型 说明
    ret RET_CODE 接口调用结果
    data tuple 当 ret == RET_OK,返回经纪队列数据
    str 当 ret != RET_OK,返回错误描述
    • 经纪队列元组内容如下:

      字段 类型 说明
      stock_code str 股票
      bid_frame_table pd.DataFrame 买盘数据
      ask_frame_table pd.DataFrame 卖盘数据
      • bid_frame_table 格式如下:
        字段 类型 说明
        code str 股票代码
        bid_broker_id int 经纪买盘 ID
        bid_broker_name str 经纪买盘名称
        bid_broker_pos int 经纪档位
        order_id int 交易所订单 ID
        order_volume int 单笔委托数量
      • ask_frame_table 格式如下:
        字段 类型 说明
        code str 股票代码
        ask_broker_id int 经纪卖盘 ID
        ask_broker_name str 经纪卖盘名称
        ask_broker_pos int 经纪档位
        order_id int 交易所订单 ID
        order_volume int 单笔委托数量
  • Example

import time
from futu import *
    
class BrokerTest(BrokerHandlerBase):
    def on_recv_rsp(self, rsp_pb):
        ret_code, err_or_stock_code, data = super(BrokerTest, self).on_recv_rsp(rsp_pb)
        if ret_code != RET_OK:
            print("BrokerTest: error, msg: {}".format(err_or_stock_code))
            return RET_ERROR, data
        print("BrokerTest: stock: {} data: {} ".format(err_or_stock_code, data))  # BrokerTest 自己的处理逻辑
        return RET_OK, data
quote_ctx = OpenQuoteContext(host='127.0.0.1', port=11111)
handler = BrokerTest()
quote_ctx.set_handler(handler)  # 设置实时经纪推送回调
quote_ctx.subscribe(['HK.00700'], [SubType.BROKER]) # 订阅经纪类型,FutuOpenD 开始持续收到服务器的推送
time.sleep(15)  # 设置脚本接收 FutuOpenD 的推送持续时间为15秒
quote_ctx.close()   # 关闭当条连接,FutuOpenD 会在1分钟后自动取消相应股票相应类型的订阅
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  • Output
BrokerTest: stock: HK.00700 data: [        code  bid_broker_id  bid_broker_name  bid_broker_pos order_id order_volume
0   HK.00700           1450            万邦亚太               1  1881527810          3000
..       ...            ...              ...             ...      ...          ...
39  HK.00700           7389    花旗环球金融亚洲有限公司               1  1885906434           100

[40 rows x 6 columns],         code  ask_broker_id ask_broker_name  ask_broker_pos order_id order_volume
0   HK.00700           5346          J.P.摩根               1  1873782274           700
..       ...            ...             ...             ...      ...          ...
39  HK.00700           2846     麦格理资本股份有限公司               1  1875174914           700

[40 rows x 6 columns]] 
1
2
3
4
5
6
7
8
9
10
11

提示