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

萍乡泥刮刮建材有限公司 2026/09/09 20:09:24

一、前言

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

本文将介绍如何使用**天勤量化(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")

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


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

更多资源

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

医院网站建设网站建设解决方案

凌晨的台灯下,你盯着电脑屏幕,文档里“参考文献”部分一片空白,查重报告上的“重复率28%”像根刺扎在眼里;导师的微信消息弹出:“下

2026/06/30 11:39:56

装饰网站建设吉林网站建设

目录已开发项目效果实现截图开发技术系统开发工具:核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档

2026/06/30 10:07:48

莆田网站建设网站建设专家

SiYuan网页剪藏终极指南:从零开始构建个人知识体系【免费下载链接】siyuanA privacy-first, self-hosted, fully open source pers

2026/06/30 12:55:03

建设网站制作龙华网站建设

一、测试策略优化:从源头提升效率1.1 风险导向的测试规划基于风险分析的测试策略能够将有限的测试资源集中在最关键的功能模块。建议采用以下方法:建立功能风险矩阵,

2026/06/30 11:35:56

建设银行官方网站网站建设运营

提示链(Prompt Chain)是大语言模型(LLM)处理复杂任务的核心优化范式,其核心逻辑是 “分而治之”—— 将单一大模型难

2026/06/30 13:50:07

深圳营销型网站建设吉安网站建设

Turn.js 作为 HTML5 时代专业的翻页效果解决方案,正在重塑企业数字内容的阅读体验。在前端技术快速迭代的今天,如何选择并有效部署一个稳定可靠的翻页组件࿰

2026/06/30 11:02:53

兰州网站建设网站模板建设

本地图像智能检索工具终极使用指南:从零基础到高效应用【免费下载链接】ImageSearch基于.NET8的本地硬盘千万级图库以图搜图案例Demo和图片exif信息移除小工具分享项目地址:

2026/06/30 12:11:59

学校网站建设西安企业网站建设

m3u8-downloader桌面版:流媒体视频下载的终极解决方案【免费下载链接】m3u8-downloaderm3u8 视频在线提取工具 流媒体下载 m3u8下载 桌面客户端 wind

2026/06/30 12:26:01

岳阳网站建设购物网站建设

第一章:Open-AutoGLM支付失败的宏观背景与系统架构近年来,随着大语言模型在自动化决策与金融场景中的深度集成,Open-AutoGLM作为一款开源的智

2026/06/30 11:27:55

医院网站建设徐家汇网站建设

系统程序文件列表项目功能:学生,教师,使用说明,意见反馈,课程信息开题报告内容SpringBoot学校试卷生成系统开题报告一、研究背景与意义1.1 研究背景传统试卷生成依赖教师手动命题&

2026/06/30 10:05:48