网站建设规划书东莞网站建设公司

潮州市湘桥区南春索菲亚婚纱摄影中心 2026/09/09 19:30:59

一、前言

在实际量化交易中,我们经常需要同时监控多个期货合约。比如:

本文将介绍如何使用**天勤量化(TqSdk)**同时订阅多个期货合约数据。

二、为什么选择天勤量化(TqSdk)

在众多期货量化工具中,**天勤量化(TqSdk)**是目前国内最受欢迎的开源期货量化框架之一。本文使用TqSdk获取多合约数据,主要基于以下优势:

特点说明
完全免费开源免费,无需付费即可获取实时行情
多合约支持可同时订阅多个合约,数据统一管理
数据同步支持多合约数据对比、价差计算
上手简单几行Python代码即可实现多合约监控
套利友好非常适合开发跨品种、跨期套利策略

安装方法

pipinstalltqsdk

快期账户:使用TqSdk需要注册快期账户(免费),访问 https://www.shinnytech.com 注册。

三、同时订阅多合约(完整代码)

2.1 基础示例

#!/usr/bin/env python# -*- coding: utf-8 -*-""" 功能:同时订阅多个期货合约 说明:本代码仅供学习参考 """fromtqsdkimportTqApi,TqAuth# 创建API实例api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 同时订阅多个合约的行情quote_rb=api.get_quote("SHFE.rb2501")# 螺纹钢quote_hc=api.get_quote("SHFE.hc2501")# 热卷quote_i=api.get_quote("DCE.i2501")# 铁矿石# 等待数据就绪api.wait_update()# 打印各合约最新价格print("="*50)print("多合约行情数据")print("="*50)print(f"螺纹钢(rb2501):{quote_rb.last_price}")print(f"热卷(hc2501):{quote_hc.last_price}")print(f"铁矿石(i2501):{quote_i.last_price}")api.close()

2.2 使用列表批量订阅

当需要订阅大量合约时,可以使用列表和循环:

fromtqsdkimportTqApi,TqAuth api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 定义要订阅的合约列表symbols=["SHFE.rb2501",# 螺纹钢"SHFE.hc2501",# 热卷"DCE.i2501",# 铁矿石"DCE.j2501",# 焦炭"DCE.jm2501",# 焦煤]# 批量订阅,存入字典quotes={}forsymbolinsymbols:quotes[symbol]=api.get_quote(symbol)# 等待数据api.wait_update()# 打印所有合约价格print("合约代码		最新价		涨跌幅")print("-"*50)forsymbol,quoteinquotes.items():# 计算涨跌幅ifquote.pre_closeandquote.pre_close!=0:change=(quote.last_price-quote.pre_close)/quote.pre_close*100else:change=0print(f"{symbol}	{quote.last_price}		{change:.2f}%")api.close()

四、实时监控多合约

3.1 持续监控价格变化

fromtqsdkimportTqApi,TqAuthimportdatetime api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 订阅黑色系主要品种quote_rb=api.get_quote("SHFE.rb2501")quote_i=api.get_quote("DCE.i2501")quote_j=api.get_quote("DCE.j2501")print("开始监控黑色系品种,按Ctrl+C停止...")print("-"*60)whileTrue:api.wait_update()# 检测任一合约价格变化updated=Falseifapi.is_changing(quote_rb,"last_price"):updated=Trueifapi.is_changing(quote_i,"last_price"):updated=Trueifapi.is_changing(quote_j,"last_price"):updated=Trueifupdated:now=datetime.datetime.now().strftime("%H:%M:%S")print(f"[{now}] 螺纹:{quote_rb.last_price:.0f}| "f"铁矿:{quote_i.last_price:.1f}| "f"焦炭:{quote_j.last_price:.1f}")

五、同时获取多合约K线

4.1 获取多个合约的K线数据

fromtqsdkimportTqApi,TqAuth api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 同时获取两个合约的5分钟K线klines_rb=api.get_kline_serial("SHFE.rb2501",300,100)klines_hc=api.get_kline_serial("SHFE.hc2501",300,100)api.wait_update()print("螺纹钢最近3根K线:")print(klines_rb[["datetime","close"]].tail(3))print()print("热卷最近3根K线:")print(klines_hc[["datetime","close"]].tail(3))api.close()

4.2 计算价差(跨品种套利基础)

fromtqsdkimportTqApi,TqAuth api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 获取螺纹钢和热卷的行情quote_rb=api.get_quote("SHFE.rb2501")quote_hc=api.get_quote("SHFE.hc2501")print("螺纹钢-热卷 价差监控")print("-"*40)whileTrue:api.wait_update()ifapi.is_changing(quote_rb)orapi.is_changing(quote_hc):# 计算价差spread=quote_rb.last_price-quote_hc.last_priceprint(f"螺纹:{quote_rb.last_price:.0f}- 热卷:{quote_hc.last_price:.0f}= 价差:{spread:.0f}")

六、跨期合约对比

同时订阅同一品种的不同月份合约:

fromtqsdkimportTqApi,TqAuth api=TqApi(auth=TqAuth("你的快期账户","你的密码"))# 订阅螺纹钢不同月份合约quote_01=api.get_quote("SHFE.rb2501")# 近月quote_05=api.get_quote("SHFE.rb2505")# 远月api.wait_update()print("螺纹钢跨期价差分析")print("="*40)print(f"rb2501 (近月):{quote_01.last_price}")print(f"rb2505 (远月):{quote_05.last_price}")print(f"跨期价差:{quote_05.last_price-quote_01.last_price}")api.close()

七、注意事项

事项说明
订阅数量TqSdk免费版有合约订阅数量限制
数据同步不同合约的数据更新时间可能不同步
内存占用订阅过多合约会增加内存占用
网络延迟合约越多,数据推送量越大

八、总结

功能代码
订阅单个合约api.get_quote("SHFE.rb2501")
订阅多个合约多次调用get_quote,分别存储
批量订阅使用循环 + 字典存储
检测变化api.is_changing(quote, "last_price")

同时订阅多合约是构建套利策略、组合策略的基础,掌握这一技能后可以开发更复杂的交易系统。


免责声明:本文仅供学习交流使用,不构成任何投资建议。期货交易有风险,入市需谨慎。

更多资源

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

网站建设策划书宜昌网站建设

Dify在家居装修建议生成中的美学判断力当一位年轻业主打开手机App,输入“我想把80平米的小两居装成现代简约风,预算20万,喜欢原木和浅灰”时,

2026/06/30 11:35:26

网站建设哪家公司好网站建设 流程

从零开始玩转模拟电路仿真:Proteus元件库实战指南你有没有过这样的经历?手绘了一张完美的放大器电路图,满心期待地接上电源——结果LED不亮、信号失真、运放

2026/06/30 12:15:00

推广网站建设做网站建设

嘿,各位电脑玩家!是不是总觉得自己的Windows系统像一辆老爷车,启动慢、运行卡、还特别爱收集你的隐私?今天我要给你介绍一个能让你的系统脱胎换

2026/06/30 11:01:53

网站建设总结做网站建设

大模型幻觉的定义大模型幻觉指模型生成与事实不符、逻辑错误或脱离上下文的内容,表现为虚构信息、错误推理或矛盾输出。这种现象在生成式AI中尤为常见。训练数据偏差大模型依赖海量数据训练

2026/06/30 12:36:32

物流网站建设东莞网站建设公司

LobeChat菜谱推荐系统结合用户偏好在智能健康日益成为生活刚需的今天,如何为不同体质、饮食习惯和健康目标的人群提供真正个性化的饮食建议,是一个兼具技术挑战与现实意义的问

2026/06/30 10:45:22

青岛网站建设西宁网站建设

Dify镜像运行时的资源占用情况监测报告在大语言模型(LLM)迅速渗透到智能客服、内容生成和知识管理等领域的今天,企业面临的不再是“有没有模型可用”ÿ

2026/06/30 12:16:30

龙岗网站建设西安网站建设公司

什么是机器学习?机器学习是人工智能 (AI)> 的一个子集,专注于能够“学习”训练数据模式并随后对新数据做出准确推断的算法。这种模式识别能力使机器学习模型能够在没有明确的、硬编码指令的情况下做出

2026/06/30 11:14:24

黄石网站建设东莞网站建设公司

Excalidraw 支持导入/导出 JSON 实现数据迁移在远程协作日益成为常态的今天,团队对可视化工具的需求早已超越了“画图”本身。工程师、产品经理和设计师们需要一种既能快速表达想法

2026/06/30 10:36:21