天勤 TqSdk
Python 期货量化 SDK,含回测与实盘 期货
天勤量化(TqSdk)是一个基于 Python 的专业期货量化交易框架,由信易快期团队开发。它封装了 CTP 底层接口,用一套简洁的 API 同时覆盖 行情订阅、策略编写、历史回测、模拟交易和实盘交易——你只需要写一份 Python 代码,切换参数就能在回测、模拟、实盘三种模式间无缝迁移。
和通达信那种「公式语言」不同,TqSdk 是纯 Python——你可以自由使用 pandas、numpy、scipy 等任何 Python 库,灵活度远超脚本化公式平台。
适用市场
- 期货 / 期权:TqSdk 的主战场,支持国内全部期货交易所(中金所、上期所、大商所、郑商所、广期所、能源中心)的商品期货、股指期货和期权。
- 股票 / ETF:支持股票行情获取和回测,实盘股票交易需要对应券商或专业版支持。
- 外盘行情(如 CME)可通过专业版订阅。
核心能力一览
| 能力 | 说明 | 对应章节 |
|---|---|---|
| 安装与快速入门 | pip 安装、注册快期账户、第一个程序 | 安装与快速入门 |
| 策略结构 | TqApi 核心类、wait_update 循环、数据引用 | Python 策略结构 |
| 行情接口 | get_quote / get_kline_serial / Tick 数据 | 行情接口 TqApi |
| 交易下单 | insert_order / cancel_order / 目标持仓工具 | 交易接口与下单 |
| 技术指标 | tqsdk.ta 内置 MACD / KDJ / BOLL 等 60+ 指标 | 技术指标 ta |
| 历史回测 | TqBacktest 回测引擎、回测报告 | 回测 TqBacktester |
| 模拟与实盘 | TqSim / TqKq 模拟、TqAccount 实盘 | 模拟与实盘 |
| 期权交易 | 期权链查询、Greeks、隐含波动率 | 期权基本使用 |
策略结构速览
每个 TqSdk 程序都遵循同一个骨架——创建 API → 获取数据引用 → 循环等待更新 → 处理逻辑:
from tqsdk import TqApi, TqAuth
# 1. 创建 API 实例(必填快期账户)
api = TqApi(auth=TqAuth("快期账户", "账户密码"))
# 2. 获取行情/K线引用
quote = api.get_quote("SHFE.rb2410")
klines = api.get_kline_serial("SHFE.rb2410", 60)
# 3. 主循环:等待数据更新,处理策略
while True:
api.wait_update()
if api.is_changing(klines.iloc[-1], "datetime"):
ma5 = klines.close.iloc[-5:].mean()
if klines.close.iloc[-1] > ma5:
print("价格上穿均线")
TqApi是核心,一个程序只有一个实例。wait_update()是心跳——所有网络收发、后台任务都在这里完成。- 数据对象(quote / klines / account)是动态引用,随
wait_update()自动更新。
详见 Python 策略结构。
三种运行模式
TqSdk 最大的设计亮点:同一份代码,三种模式。
| 模式 | 创建方式 | 用途 |
|---|---|---|
| 回测 | TqApi(TqSim(), backtest=TqBacktest(...)) | 历史数据验证策略 |
| 模拟 | TqApi(TqKq(), auth=...) 或 TqApi(TqSim(), auth=...) | 实时行情下的模拟撮合 |
| 实盘 | TqApi(TqAccount("期货公司", "账号", "密码"), auth=...) | 真金白银交易(需专业版) |
学习路径
- 装好环境、跑通第一个程序 → 安装与快速入门
- 理解 TqApi 和 wait_update 循环 → Python 策略结构
- 掌握行情接口 → 行情接口 TqApi
- 学会下单和持仓管理 → 交易接口与下单
- 用内置指标算 MACD / KDJ → 技术指标 ta
- 回测验证策略 → 回测 TqBacktester
- 上模拟盘 / 实盘 → 模拟与实盘
- 进阶:期权策略 → 期权基本使用
左侧导航列出了本手册的全部章节,随时可以跳转查阅。
📚 天勤 TqSdk 操作手册(8 章)
函数参考
交易与回测
💡 服务
看懂了还是不会用?交给我们