3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 QMT (迅投量化平台) 中使用 xtdata.download_history_data2 下载历史数据时遇到 ErrorId: 210008,通常是因为请求的数据不存在或请求参数无效。
针对您提供的代码,最直接的原因是时间参数设置错误(请求了未来的时间)。
观察您的代码:
xtdata.download_history_data2(stock_list=['600000.SH'], start_time="20250612", end_time="20250618", period="tick",callback=on_data1)
您设置的 start_time 为 20250612,end_time 为 20250618。这是一个未来的时间段。服务器上显然没有未来的历史行情数据,因此接口在尝试获取数据时找不到对应内容,从而返回了 ErrorID: 210008(数据不存在/参数错误)。
请将 start_time 和 end_time 修改为已经发生的、真实存在的历史交易日。例如,修改为 2023 年或 2024 年的某个有效交易日:
import xtdata
def on_data1(data):
print("下载回调:", data)
# 修改为有效的历史时间
xtdata.download_history_data2(
stock_list=['600000.SH'],
start_time="20230612",
end_time="20230618",
period="tick",
callback=on_data1
)
如果您在修改为正确的历史时间后仍然遇到此错误,请排查以下几点:
YYYYMMDD 或 YYYYMMDDHHMMSS 格式的字符串。确保没有多余的空格或特殊字符。stock_list 中的代码格式为 代码.市场(如 600000.SH,000001.SZ),且该品种在请求的时间段内已经上市且未退市。tick 数据。部分服务器或账号权限可能对极早期历史的 tick 数据有限制,或者本地未开启相应权限。如果请求太早的 tick 数据也可能报错。start_time 和 end_time 之间全是节假日(没有交易数据),也可能触发无数据的错误。总结:请先将代码中的 2025 年修改为实际的历史年份,该报错即可解决。