期货量化主连和具体合约怎么切:天勤 KQ.m 与 KQ.i 用法

前言

做趋势回测时我用主连很顺手,上模拟却忘了换成具体月份,持仓和信号对不上,收益曲线完全两回事。天勤 TqSdk 里主力连续 KQ.m@、指数 KQ.i@ 与具体 SHFE.rb2510 并存,研究链和交易链要分清。

下面说明主连/指数在行情里的角色、回测与实盘如何映射、换月时策略要注意什么。合约代码写法、移仓执行流程宜分开对照,一起看更完整。

一、主连、指数、具体合约各干什么

类型 符号形态(示意) 典型用途
主力连续 KQ.m@ 如 KQ.m@SHFE.rb 长历史回测、信号研究
指数 KQ.i@ 如 KQ.i@SHFE.rb 平滑价格、指标研究
具体合约 SHFE.rb2510 模拟、实盘下单

主连把历史主力拼接,方便看长期趋势,但成交价不是历史上每一刻真实可成交的单一合约价。指数类似,更平滑。实盘报单必须落到有流动性的具体合约。

二、研究用主连、执行用具体月

常见分工:

  1. KQ.m@ 上算信号(均线、突破等)
  2. 信号触发时,查当前主力对应的具体合约(通过 quote 的 underlying_symbol 等字段,以文档为准)
  3. insert_orderTargetPosTask 只对具体合约操作

若全程只订主连、又对主连下单,模拟成交规则可能与真实交易差异很大。

python 复制代码
from tqsdk import TqApi, TqAuth, TqSim

api = TqApi(TqSim(), auth=TqAuth("账户", "密码"))
cont = "KQ.m@SHFE.rb"
q_cont = api.get_quote(cont)
api.wait_update()
# 具体交易合约以 quote 字段为准,下例名需按 wait_update 后实际值替换
trade_sym = q_cont.underlying_symbol
q_trade = api.get_quote(trade_sym)

不同版本字段名可能为 underlying_symbol 或文档中的其它名,以你打印 q_cont 对象为准。

三、回测与实盘收益对不上的常见原因

  • 回测全程主连,实盘交易 2505 却仍在看 2501 的行情
  • 换月日主力切换,信号仍用旧合约持仓
  • 手续费、滑点按主连手数算,实际开在远月

对策:回测末期用具体合约复跑一段;或回测里就用「主力映射表」记录每日交易合约(工作量大,但更贴近实盘)。

四、换月检测思路

工程上可每日比较 underlying_symbol 是否变化,变化时触发移仓逻辑(平仓旧月、开新月),移仓顺序要单独写进策略。不要假设主连 symbol 不变就不用管换月。

五、和 get_kline_serial 一起用

get_kline_serial("KQ.m@SHFE.rb", 60) 做信号,get_kline_serial(trade_sym, 60) 做执行层价格参考时,要保证时间戳对齐意识:两根 K 线来自不同合约序列,合并信号要谨慎。

入门可先「信号与交易同一具体合约」,主连只用于离线研究,减少阶段混用。

总结

主连和指数适合研究与回测连续性,具体合约适合模拟和实盘。天勤同时支持几类符号,选型关键是链条上哪一段用哪类 code,并在换月时有显式处理。

建议团队写进规范:回测默认用什么、模拟改什么、换月谁负责改配置,避免每人一套习惯导致收益无法复现。

FAQ

1)能否只对主连做 TargetPosTask?

不建议作为实盘方案;模拟规则也可能与具体合约不一致。

2)指数和主连选哪个?

趋势信号常用主连;需要更平滑曲线可看指数。

3)foreign 品种呢?

以 TqSdk 当前支持列表为准。

4)回测主连后如何找对应实盘月?

用主力 quote 的映射字段,或维护换月日历表。

风险提示

本文用于合约与数据使用技术说明,不构成投资建议。

相关推荐
先吃饱再说1 小时前
Python List 切片与 LLM Prompt 设计:从数据结构到接口调用
python
一只专注api接口开发的技术猿2 小时前
OpenClaw 对接淘宝商品 API,低成本实现全天候选品监控|附可运行 Python 实操代码
大数据·开发语言·数据库·python
xingpanvip2 小时前
星盘接口开发文档:马盘次限盘接口指南
android·开发语言·python·php·lua
FBI HackerHarry浩2 小时前
第二阶段Day07【Python生成器、yield关键字、property、正则表达式】
开发语言·python·正则表达式
梦想不只是梦与想2 小时前
Python 中的 4 种作用域
python·作用域
coderwei1232 小时前
从OpenAI到Strip:用六大支柱读懂Harness Engineering的生产实践
python·ai·ai编程
海鸥-w2 小时前
Python(FastAPI)中ORM框架Sqlalchemy的安装及建表
python
Wonderful U3 小时前
Python+Django实战|个人博客内容管理系统:搭建轻量化、高自由度的个人动态博客CMS系统
人工智能·python·django
高洁013 小时前
智能体:你的私人数字助理
人工智能·python·数据挖掘·virtualenv·知识图谱