前言¶
写量化策略的开发者通常要同时对接三件事:行情数据、回测框架、实盘通道,代码分散在多个库里。把 AI 编码工具拉进来写策略时,这个问题更明显——它需要一份明确的上下文,说明有哪些数据接口、怎么回测、怎么下单,否则产出的策略要么缺行情接入,要么下单逻辑对不上真实柜台。
TqSdk(天勤量化SDK)这个 Skill 就是补这个位置。它把天勤量化 TqSdk 库的使用方法整理成 SKILL.md 格式的技能包,AI 编码工具先读总体指引,再按任务查 references/ 里的细分说明,产出的策略代码直接落在 TqSdk 的统一接口上。
这是什么¶
TqSdk 是信易科技(shinnytech)发起并贡献主要代码的开源 Python 库,官网 shinnytech.com/tqsdk,PyPI 包名 tqsdk,当前版本 3.10.4,要求 Python 3.9 及以上。它面向期货、期权、股票,覆盖历史数据、实时行情、开发调试、策略回测、模拟交易、实盘交易、运行监控、风险管理的完整链路。
这个 Skill 是同一项目官方维护的 AI/Agent 技能包,在 SkillHub 上坐标 @org-eyw2ohcx/coderwpf-tqsdk-102,分类 professional,来源 enterprise,发布者 RealQ,评分 100000,下载 2298 次。它解决的是一个文档问题:SKILL.md 先给出总体指引,references/ 按任务细分,AI 编码工具按需读取,不用把整份文档塞进上下文。
核心功能¶
下面列出的都是官方资料中已核实的能力。
1、行情:覆盖当前所有可交易合约自上市以来的 Tick 数据和 K 线数据。实时行情由行情网关提供,交易中继网关连接期货公司交易系统,两者统一以 Diff 协议对下服务。
2、交易:支持 CTP 直连,以及众期、融航、杰宜斯等资管柜台,易达、ctpmini 等高速柜台,覆盖市场上约 90% 的期货公司实盘交易。
3、多账户:多个实盘账户、模拟账户可同时交易。
4、回测:支持 Tick 级和 K 线级回测,可跑复杂策略。
5、技术指标:提供近百个技术指标函数及源码。
6、数据处理:行情和交易数据放在内存数据库,无访问延迟,用户无需自建和维护数据库;优化支持 pandas 和 numpy。
7、策略编写:无强制框架结构,一个策略程序里可同时使用多个品种的 K 线/实时行情并交易多个品种。
安装与启用¶
这个 Skill 分两层:一层是 Python 库本体,用 pip 装;一层是 SKILL.md 技能包,交给 AI 编码工具读取。先装库,再启用 Skill。
1、安装 Python 库。要求 Python 3.9+,用 pip 安装:
pip install tqsdk
注意按项目依赖要求安装到对应环境,验证能导入即可,不要自动升级已有版本。
2、下载并完整解压官方技能包:
https://doc.shinnytech.com/tqsdk/latest/ai_editor/skills/tqsdk-trading-and-data.zip
解压后先阅读其中的 SKILL.md,再按具体任务读取 references/ 中的说明。
3、把使用指引交给 AI 编码工具。官方给出的提示词可以直接粘贴:
请先下载并解压 TqSdk 官方技能包:
https://doc.shinnytech.com/tqsdk/latest/ai_editor/skills/tqsdk-trading-and-data.zip
先阅读其中的 SKILL.md,再按任务读取 references/ 中的说明。
如果需要在本地运行代码,请先检查项目的 Python 环境和 TqSdk;未安装时按项目依赖要求安装到该环境,验证能导入后再继续,不要自动升级已有版本。
官方说明两点:技能包需要完整解压;它本身不会自动安装软件或连接账户,安装和运行需要有本地执行能力的 AI 工具。文档另提供了 Trae、WorkBuddy、Codex 等工具的具体使用说明链接。
典型用法¶
官方快速开始示例是一个跨期价差策略:订阅螺纹钢近月和远月合约行情,价差过大时空近月、多远月,价差回复时清仓。
from tqsdk import TqApi, TqAuth, TqAccount, TargetPosTask
api = TqApi(TqAccount("H海通期货", "4003242", "123456"), auth=TqAuth("快期账户", "账户密码"))
q_2610 = api.get_quote("SHFE.rb2610")
t_2610 = TargetPosTask(api, "SHFE.rb2610")
q_2701 = api.get_quote("SHFE.rb2701")
t_2701 = TargetPosTask(api, "SHFE.rb2701")
while True:
api.wait_update()
spread = q_2610["last_price"] - q_2701["last_price"]
print("当前价差:", spread)
if spread > 250:
print("价差过高: 空近月,多远月")
t_2610.set_target_volume(-1)
t_2701.set_target_volume(1)
elif spread < 200:
print("价差回复: 清空持仓")
t_2610.set_target_volume(0)
t_2701.set_target_volume(0)
逐步看:TqApi 是总入口,TqAccount 指定期货公司账户,TqAuth 用快期账户做认证;get_quote 订阅合约行情;TargetPosTask 按目标持仓量自动调仓,不需要手工算手数;wait_update 驱动主循环,价差判断在每次行情更新后执行。十分钟快速入门见官方文档 quickstart 页面。
适用场景与注意¶
适合谁:想在 AI 编码工具里直接生成、调试、运行期货/期权/股票策略,并希望回测、模拟、实盘走同一套接口的开发者。Skill 的价值在文档组织,策略代码本体仍由 TqSdk 库执行。
注意几点:
1、实盘需要自己的期货账户和快期账户,Skill 包不提供账户,账号密码不要写进代码提交历史。
2、技能包只提供使用指引,不自动安装软件、不自动连接账户;要跑通代码,AI 工具需具备本地执行能力。
3、Skill 包版本与 Python 库版本是两套,当前分别为 1.0.0 和 3.10.4,更新节奏独立。
4、已有环境里不要自动升级 tqsdk 版本,按项目依赖要求安装。
5、回测和实盘共用同一套 API,但真实下单前建议先用模拟账户验证。
结尾¶
TqSdk 本体是把行情、回测、实盘收敛到一个 Python 库里的开源 SDK,这个 Skill 则把官方用法整理成 AI 编码工具能消费的 SKILL.md 结构,两者配合可以在一个工作流里从策略编写走到实盘交易。
官方地址:
- SkillHub 页面:https://www.skillhub.cn/skills/org-eyw2ohcx/coderwpf-tqsdk-102
- 技能包说明:https://doc.shinnytech.com/tqsdk/latest/ai_editor/tqsdk_skills.html
- PyPI 包页:https://pypi.org/project/tqsdk/
- 在线文档:https://doc.shinnytech.com/tqsdk/latest