3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
出现这个报错的原因是股票/ETF代码的市场后缀格式不正确。
在很多其他的量化平台(如聚宽、米筐等)中,上交所的后缀通常是 .XSHG,深交所是 .XSHE。但是,在 QMT 平台中,上交所的后缀是 .SH,深交所的后缀是 .SZ。
因此,QMT 无法识别 513100.XSHG 这种格式,从而提示“无效股票代码”。
将代码列表中的 .XSHG 替换为 .SH 即可。修改后的代码如下:
def init(ContextInfo):
ContextInfo.trade_code_list = [
"513100.SH", # 纳指ETF
"513520.SH", # 日经ETF
"513030.SH", # 德国ETF
]
ContextInfo.set_universe(ContextInfo.trade_code_list)
根据 QMT API 文档的规定,常用的市场代码后缀如下:
SH (如 600000.SH, 510300.SH)SZ (如 000001.SZ, 159915.SZ)IF (如 IF2309.IF)SFDFZF在编写 QMT 策略时,请务必使用 QMT 专属的市场代码规范。