miniQMT获取ETF基金510300全推行情的代码demo

miniqmt 阅读:876 2024-12-31 16:31:03 评论:0

202412311641242299502.jpg

需要的行情接口

subscribe_whole_quote

get_full_tick

要获取ETF基金(如510300)的全推行情数据,可以使用 xtdata 模块中的 subscribe_whole_quote 和 get_full_tick 接口。以下是一个示例代码,展示如何订阅并获取ETF基金510300的全推行情数据:

import xtquant.xtdata as xtdata

# 定义ETF基金的代码
etf_code = '510300.SH'  # 510300是沪深300ETF,SH表示上海证券交易所

# 定义回调函数,用于处理接收到的全推数据
def on_data(datas):
    for stock_code, data in datas.items():
        print(f"Stock Code: {stock_code}")
        print(data)  # 打印接收到的行情数据

# 订阅全推行情数据
# 传入市场代码 'SH' 表示订阅上海证券交易所的全推数据
seq = xtdata.subscribe_whole_quote(['SH'], callback=on_data)

# 阻塞线程以持续接收行情数据
try:
    xtdata.run()
except KeyboardInterrupt:
    print("Stopped by user.")

# 反订阅行情数据
xtdata.unsubscribe_quote(seq)

代码说明:

  1. ETF代码:510300.SH 表示沪深300ETF,SH 表示上海证券交易所。

  2. 回调函数:on_data 是处理接收到的全推数据的回调函数。每当有新的行情数据时,该函数会被调用,并打印出接收到的数据。

  3. 订阅全推数据:subscribe_whole_quote 用于订阅全推行情数据。传入市场代码 [‘SH’] 表示订阅上海证券交易所的全推数据。

  4. 阻塞线程:xtdata.run() 用于阻塞当前线程,以持续接收行情数据。可以通过 Ctrl+C 停止程序。

  5. 反订阅:unsubscribe_quote 用于反订阅行情数据,释放资源。

注意事项:

  1. 数据权限:确保你有权限获取全推数据,代码运行前必须登录miniQMT客户端。

  2. 数据缓存:get_full_tick 获取的是缓存中的数据,确保在调用之前已经订阅了相关数据。

  3. 实时性:如果需要实时数据,建议使用订阅接口 subscribe_whole_quote,并通过回调函数处理数据。

本文由 海星量化研究所 作者提供,转载请保留链接和署名!网址:https://qmt.hxquant.com/?id=12

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源; 2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任; 3.作者投稿可能会经我们编辑修改或补充。

搜索
排行榜
关注我们

扫码开通QMT/ptrade