🚀 AI 一键生成 joinquant 策略代码
立即体验
👉 AI 生成代码 👈

JoinQuant 聚宽平台获取早盘 9:15-9:25 集合竞价数据的方法

joinquant | 发布时间: 2026/5/29
以下内容由 EasyQuant 生成。

问题描述

tick数据能否支持下竞价数据

试了一下get_ticks和get_current_tick目前都不支持早盘9:15到9:25之间的竞价数据,这部分数据还是挺具有参考意义的,能否支持下?

解决方案

您好!JoinQuant 聚宽平台已经支持获取早盘的集合竞价数据。不过,正如您所发现的,常规的 get_ticksget_current_tick 函数并不包含这部分数据。为了获取 9:15 到 9:25 之间的集合竞价数据,您需要使用平台专门提供的 API:get_call_auction

以下是关于如何使用 get_call_auction 获取集合竞价数据的详细指南:

get_call_auction 函数介绍

该函数用于获取指定时间区间内交易日 09:25 的集合竞价数据。当日的集合竞价数据最晚于 9:28 分返回。

支持的标的及时间范围:

  • 股票:2010年至今
  • 场内基金:2019年至今
  • 指数:2017年至今
  • 上交所ETF期权:2017年至今

函数原型:

from jqdata import *
get_call_auction(security, start_date=None, end_date=None, fields=None)

参数说明:

  • security: 标的代码或者标的代码组成的列表,支持股票、指数、50ETF期权。
  • start_date: 开始日期,一个时间字符串,例如 "2019-01-01"。注意:不能为 None
  • end_date: 结束日期,一个时间字符串,例如 "2019-02-01"。注意:不能为 None
  • fields: 选择要获取的行情字段(类似 tick 数据的每一个字段)。如果为 None,则默认获取全部字段。

可选的 fields 字段:

  • time: 时间 (datetime)
  • current: 当前价 (float)
  • volume: 累计成交量(股) (float)
  • money: 累计成交额 (float)
  • b1_v ~ b5_v: 五档买量 (float)
  • b1_p ~ b5_p: 五档买价 (float)
  • a1_v ~ a5_v: 五档卖量 (float)
  • a1_p ~ a5_p: 五档卖价 (float)

代码示例

示例 1:获取指定字段的集合竞价数据

from jqdata import *

# 获取平安银行和万科A在指定时间段内的集合竞价数据,只取特定字段
d = get_call_auction(
    ['000001.XSHE', '000002.XSHE'], 
    start_date='2019-01-01', 
    end_date='2019-10-10',
    fields=['time', 'current', 'a1_v', 'b1_v']
)
print(d)

示例 2:获取全部字段的集合竞价数据

from jqdata import *

# fields 不填,默认获取全部字段数据
d = get_call_auction('000001.XSHE', '2019-08-10', '2019-08-20')
print(d)

注意事项

  1. 数据量限制:为了防止返回数据量过大,每次调用最多返回 5000 行 数据。如果需要更长时间段的数据,请分批次获取。
  2. 返回值格式:返回的是一个 pandas.DataFrame,索引为 pandas 默认的整数索引。
  3. 调用时机:在模拟交易或回测中,如果您需要获取当天的集合竞价数据,请确保在 9:28 之后 调用该函数,因为当日数据最晚于 9:28 返回。

通过 get_call_auction,您就可以将早盘集合竞价的参考信息融入到您的量化策略中了!