当前位置: 首页 > news >正文

期货量化一进程多账户:天勤 TqMultiAccount 用法边界

前言

国内期货量化里,常见部署是:用 Python + 天勤 TqSdk 写一条趋势策略,订阅螺纹钢 5 分钟 K 线,均线信号出来后TargetPosTask调仓。有时同一套信号要分到两个期货公司账户执行(资金隔离、合规报备),或者一边TqSim模拟、一边TqAccount小额实盘对照。开两个 Python 进程各跑各的,行情订阅和信号计算重复,配置和日志也难对齐。

天勤提供TqMultiAccount:一个TqApi同时挂多个TqAccountTqSimTqKq等,单进程内写策略、共享行情。代价是多账户模式下,get_positionget_accountinsert_orderTargetPosTask都必须显式传account参数,漏传会报错或悄悄读错户。下面说明构造方式、适用边界和迁移注意点。

一、构造方式

multiaccount.py

fromtqsdkimportTqApi,TqAuth,TqAccount,TqSim,TqMultiAccount,TargetPosTask acc_real=TqAccount("H某期货","123456","pwd")acc_sim=TqSim()api=TqApi(TqMultiAccount([acc_real,acc_sim]),auth=TqAuth("快期账户","pwd"))

未指定账户列表时默认为[TqSim()]

二、必须带 account 的 API

文档强调多账户模式下:

  • get_position(symbol, account=...)
  • get_account(account=...)
  • insert_order(..., account=...)
  • TargetPosTask(api, symbol, ..., account=...)

示例:

task_a=TargetPosTask(api,"SHFE.rb2510",account=acc_sim)task_b=TargetPosTask(api,"SHFE.rb2510",account=acc_real)task_a.set_target_volume(2)task_b.set_target_volume(0)# 实盘暂不下

三、适用场景与边界

适合:

  • 同一信号多账户复制执行(注意合规与报备)。
  • 模拟与实盘并行验证。
  • 跨期货公司分散品种。

不适合:

  • 两账户完全独立策略、订阅差异大,却硬塞单进程——订阅并集仍大,CPU 高,故障域耦合。
  • 需要进程级隔离的风控(一账户崩拖累另一账户)。

实盘账户数量受快期账户权限限制,以官网说明为准。

四、日志与对账

每笔日志写account_id或期货公司名;get_order可能混合多账户委托,筛选时按 order 所属 account 字段(以 objs 为准)分类。日终分别导出acc_real.get_account()acc_sim.get_account()

五、与单账户代码迁移

从单TqAccount迁到TqMultiAccount,全局搜索get_positionTargetPosTaskinsert_order,补account=参数。单例TargetPosTask的 key 含 account id,同 symbol 不同户可各有一个 task。

六、风控按账户隔离

每个 account 独立维护emergencyrisk_ratio阈值。A 账户触发停机不应自动平 B 账户,除非策略明确如此设计。读get_account(account=acc_x)分别判断。

七、信号复制与手数缩放

同源信号可复制到两户,但手数可按权益比例缩放:

bal_a=acc_a.get_account().balance bal_b=acc_b.get_account().balance lots_b=int(raw_lots*bal_b/bal_a)

缩放后仍要检查available与保证金。

八、故障域

单进程多账户意味着一个未捕获异常可能两户都停。关键账户可考虑独立进程 + 独立TqApi,多账户只适合关联度高的部署。

总结

一进程多账户靠天勤TqMultiAccount把多个 tradeable 绑进同一个TqApi,适合同源信号多路执行或模拟实盘对照。关键是所有交易与查询 API 显式传accountTargetPosTask也要分账户创建。账户间策略差异大或要硬隔离时,仍应用多进程,而不是强行多账户。

FAQ

1)行情订阅共用吗?

是,同一 Api 订阅一次行情,多账户共享。

2)能否一个账户只读不下?

可以,只建 task 但不set_target_volume非零。

3)TqKq 和 TqAccount 混用?

文档示例支持,注意 auth 一致。

4)漏传 account 报什么错?

多账户模式下TargetPosTask构造会要求指定 account。


本文基于天勤 TqSdk 公开 API 整理,不构成投资建议。

http://www.zskr.cn/news/1501571.html

相关文章:

  • 泰安与德宏州贵金属回收行业现状与可靠生产商分析 - 优质品牌商家
  • 别再只懂QPSK了!手把手教你用MATLAB仿真OQPSK和IJF_OQPSK(附完整代码)
  • 2026年靠谱的家用液压电梯/济南拼装式电梯框架源头工厂推荐 - 品牌宣传支持者
  • 2026年银川劳动纠纷律师推荐 陈杰律师16年实战维权经验 - 本地品牌推荐
  • 3步轻松上手:用Bliss Shader为你的Minecraft世界注入电影级光影
  • 5分钟掌握游戏存档编辑神器:uesave让你轻松掌控游戏进度
  • 一键部署OpenClaw:5分钟搞定本地AI办公助手
  • 免费获取AMD Ryzen处理器硬件级控制权:SMU Debug Tool完整指南
  • 终极解决方案:3步让老旧Windows系统重获新生
  • 2026年广东劈裂机/液压岩石劈裂机/液压劈裂机/手动液压劈裂机厂家推荐榜:硬岩破解与矿用劈裂实力之选 - 品牌发掘
  • 2026本科论文血泪复盘:全程靠AI帮忙写稿,初稿却被导师痛批:拼凑感太重,根本不像一篇正经论文
  • 3步掌握Charticulator:零代码创建专业级交互式图表设计
  • VL53L1X传感器驱动移植避坑指南:从platform.c到稳定运行的五个关键步骤
  • 终极视频修复神器:untrunc让损坏的MP4视频起死回生
  • 3大核心功能深度解析:BililiveRecorder如何智能修复损坏的直播录制文件
  • 口碑好的仿石漆厂家哪家靠谱——2026年西南地区涂料行业分析报告 - 优质品牌商家
  • LLM 驱动的前端国际化方案:从文本提取到多语言代码生成的工程实践
  • MFC环境下可直接使用的GIF动图显示控件(含完整C++源码)
  • 紫光国微19亿收购方案获股东大会审议通过
  • 告别手算!用ADS和MATLAB脚本快速搞定不等分威尔金森功分器(附完整代码)
  • 如何构建可扩展的数字人对话系统:OpenAvatarChat架构深度解析
  • 大型语言模型中的人格子网络现象与剪枝技术
  • 2026年AI论文写作工具全攻略:分阶段搭配策略+实测横向测评,一站式提升科研写作效率
  • AUFS是什么
  • AIri项目容器化部署深度解析:从单机到云原生完整实战
  • 调试利器:手把手教你用Python解析HEX-ASCII码还原浮点数(逆向转换教程)
  • C语言扫雷项目复盘:我是如何用两个二维数组搞定游戏核心逻辑的
  • 2026年四川客梯安装厂家TOP5排行及选型参考 - 优质品牌商家
  • 从MATLAB到Simulink:把fal函数封装成S-Function,在电机控制模型中实战验证
  • 高校课程用Android人事管理App完整工程(Eclipse版,含APK与多屏适配资源)