🚀 AI 一键生成 qmt 策略代码

QMT 打新工具:使用 `get_ipo_data` 查询当日申购信息

qmt | 发布时间: 2025/12/22
以下内容由 EasyQuant 生成。

问题描述

怎么查询今天有哪些新股申购?

解决方案

在 QMT 平台中,查询当日新股申购信息主要使用 get_ipo_data 函数。

核心函数说明

函数名get_ipo_data(type)

  • 参数
    • type (字符串,可选):
      • 不填:返回新股和新债信息。
      • "STOCK":只返回新股申购信息。
      • "BOND":只返回新债申购信息。
  • 返回值:返回一个字典(Dictionary),包含申购代码、名称、最大/最小申购数量等数据。

策略代码示例

以下是一个完整的 Python 策略示例,通常在 init 初始化函数中调用即可查看当天的申购信息。

# -*- coding: gbk -*-

def init(ContextInfo):
    """
    策略初始化函数
    """
    # 1. 调用 get_ipo_data 获取当日新股信息
    # 参数传入 "STOCK" 表示只查询新股
    ipo_data = get_ipo_data("STOCK")
    
    # 2. 打印结果
    if not ipo_data:
        print("今日无新股申购信息。")
    else:
        print("=" * 30)
        print("今日新股申购列表:")
        for code, info in ipo_data.items():
            # info 包含了申购名称、限额等详细信息
            print(f"申购代码: {code}")
            print(f"详细信息: {info}")
        print("=" * 30)

def handlebar(ContextInfo):
    """
    行情驱动函数
    """
    pass

结果说明

运行上述代码后,日志窗口将输出类似以下的字典结构数据(具体字段取决于当日是否有新股):

  • Key: 新股申购代码(如 732xxx.SH)。
  • Value: 包含申购名称、最大申购数量、最小申购数量等信息的对象或字典。

Q&A

Q: 如何查询新债(可转债)的申购信息?
A: 将 get_ipo_data 的参数改为 "BOND",即 get_ipo_data("BOND")

Q: 查询到新股后,如何查询我的账户有多少申购额度?
A: 可以使用 get_new_purchase_limit(accid) 函数,传入您的资金账号,它会返回包含上海主板、科创板、深圳市场的申购额度字典。

Q: 这个函数可以在回测模式下使用吗?
A: get_ipo_data 主要用于实盘或模拟盘获取当日实时数据。在回测模式下,通常无法获取历史某一日的“当日新股”列表,除非平台提供了专门的历史IPO数据接口或自行导入数据。