news 2026/6/5 14:02:32

期货自动交易最小骨架:五模块与一段可跑示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
期货自动交易最小骨架:五模块与一段可跑示例

前言

读者问“期货自动交易程序最短要多长”,本质是:在国内期货市场,用 Python 把行情 → 决策 → 下单 → 核对连起来最少需要哪些部件。不是均线公式,而是TqApi 循环K 线 datetime 触发这类工程骨架。

本文用天勤TqSdk给出五模块说明和一段可跑示例,并逐块解释在螺纹钢等期货合约上各自解决什么问题。适合零实盘经验、已装 TqSdk 的读者照抄改calc_target

一、五模块(期货语义)

  1. 环境:连接谁——模拟TqSim、快期模拟TqKq或实盘TqAccount
  2. 订阅:订哪个合约的 K 线或 quote。
  3. 循环wait_update收国内期货行情包。
  4. 触发+信号:何时算——此处用 K 线表最后一行datetime是否变化(字段由行情服务写入)。
  5. 执行+核对TargetPosTask设目标手数;get_position看是否到位。

二、完整示例(建议整段运行一次)

fromtqsdkimportTqApi,TqAuth,TqSimfromtqsdk.libimportTargetPosTaskdefcalc_target(kl):"""输入 K 线表,返回目标净仓手数或 None 表示本 bar 无操作"""returnNone# 读者在此写均线等逻辑api=TqApi(TqSim(),auth=TqAuth("快期账户","密码"))symbol="SHFE.rb2510"kl=api.get_kline_serial(symbol,60,data_length=200)task=TargetPosTask(api,symbol)try:whileTrue:api.wait_update()ifnotapi.is_changing(kl.iloc[-1],"datetime"):continuetgt=calc_target(kl)iftgtisnotNone:task.set_target_volume(tgt)pos=api.get_position(symbol)ifapi.is_changing(pos,"pos"):print("核对",symbol,"净仓",pos.pos)exceptKeyboardInterrupt:passfinally:api.close()

阅读要点:duration=60为 1 分钟 K 线;datetime变表示新 bar;calc_target内应使用iloc[-2]set_target_volume后循环不能停;pos核对防止你以为成交了其实没有。

三、扩展顺序

  1. calc_target写双均线,返回 -1/0/1 乘以手数。
  2. quote交易时段过滤(国内夜盘品种)。
  3. 拆 config / signals / main。
  4. TqKq()TqAccount仅改TqApi行。

四、勿删的最小要素

去掉wait_update、去掉datetime过滤、去掉close,就不是可靠的期货自动交易骨架,只是行情演示。

总结

期货自动交易最小骨架= 环境 + serial + wait_update +datetime 触发+ TargetPosTask + position 核对。天勤把国内期货行情表与交易对象放在同一 API;读者只需填充calc_target

先模拟跑通打印与一笔小单,再谈资金规模。

FAQ

1)能否更短?

再短会缺核对或 close,不推荐。

2)insert_order 版?

可替换 task,仍要 wait_update 与触发。

3)多合约?

tasks/targets 字典。

4)回测?

make_api 加 TqBacktest。

风险提示

本文提供示例结构,不构成投资建议。

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

工程师绩效评估四大维度:从技术贡献到职场价值的全面解析

1. 从一次“扎心”的共鸣说起:工程师的自我认知与现实评价春节假期,难得清闲,我在自己的技术博客上随手写了两篇关于工程师职场生存现状的随笔。本意是记录些个人观察,和圈内朋友聊聊,没想到文章发出去后,后…

作者头像 李华
网站建设 2026/6/5 13:58:21

机器人软件开发中的进程线程同步机制深度解析

在当今的机器人技术领域,软件开发扮演着核心角色。机器人系统通常涉及复杂的实时任务处理,如传感器数据采集、决策规划、运动控制等。这些任务需要高效的并发执行,以确保系统响应迅速且可靠。进程和线程作为操作系统的基本并发单元,是实现这一目标的关键。本文将聚焦于进程…

作者头像 李华
网站建设 2026/6/5 13:57:21

番茄钟神器TomatoBar:macOS菜单栏最高效的时间管理工具

番茄钟神器TomatoBar:macOS菜单栏最高效的时间管理工具 【免费下载链接】TomatoBar 🍅 Worlds neatest Pomodoro timer for macOS menu bar 项目地址: https://gitcode.com/gh_mirrors/to/TomatoBar 在当今快节奏的工作环境中,如何保持…

作者头像 李华
网站建设 2026/6/5 13:55:23

MOSFET栅极驱动电路设计:分立元件实现低压高效与自适应钳位

1. 项目概述:一个通用型MOSFET栅极驱动电路的设计与实现在电源管理、电机驱动或者开关电源的设计中,MOSFET的栅极驱动电路是决定系统效率、可靠性和开关速度的核心环节。很多工程师,尤其是刚入行的朋友,可能会直接选用现成的驱动I…

作者头像 李华