news 2026/6/11 4:47:53

期货量化模拟盘资金曲线:天勤 get_account balance 采样记录

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
期货量化模拟盘资金曲线:天勤 get_account balance 采样记录

前言

国内期货量化策略在回测阶段,天勤TqBacktest会自动产出资金曲线;进入模拟盘阶段,程序改成TqApi(account=TqSim())TqKq(),主循环仍是while True: api.wait_update(),均线等信号触发后TargetPosTask调仓。很多人回测报告很漂亮,模拟盘跑了两周却没有同等口径的权益记录——程序里从没把get_account().balance(账户动态权益)落盘,说不清最大回撤多少、日亏风控线有没有误触,上线只能凭感觉。

天勤get_account()balance随每次wait_update()更新,与快期客户端权益同口径。只要在主循环里按 K 线收盘或日频采样写入 csv,就能在模拟盘画出与实盘可对照的资金曲线。下面说明采哪些字段、频率怎么定。

一、该采哪些字段

字段用途
balance权益曲线纵轴
available可用资金变化
margin保证金占用
risk_ratio风险度曲线
float_profit浮盈贡献
commission成本累积
datetime横轴,用quote.datetime或本机 UTC

同时记策略版本version、环境mode=sim/kq/live

二、采样频率怎么定

  • 日频:每个交易日收盘后采一次,对齐结算。
  • intraday:每根 K 线收盘采一次,用is_changing(klines.iloc[-1], "datetime")触发。
  • 事件驱动:成交或set_target_volume后采一次,点更密。

避免每个 tick 写盘,IO 会拖慢wait_update循环。

三、示例代码

importcsvfromdatetimeimportdatetimedefsample_equity(api,quote,path,version="v1"):acc=api.get_account()ifacc.balance!=acc.balance:returnts=quote.datetime# 纳秒,或转成可读时间row={"ts":ts,"balance":acc.balance,"available":acc.available,"margin":acc.margin,"risk_ratio":acc.risk_ratio,"commission":acc.commission,"version":version,}withopen(path,"a",newline="",encoding="utf-8")asf:w=csv.DictWriter(f,fieldnames=row.keys())iff.tell()==0:w.writeheader()w.writerow(row)

主循环片段:

klines=api.get_kline_serial(SYMBOL,300,data_length=200)whileTrue:api.wait_update()ifapi.is_changing(klines.iloc[-1],"datetime"):sample_equity(api,api.get_quote(SYMBOL),"equity_sim.csv")

四、画图与对比

用 pandas 读 csv,balance归一化后与TqBacktest导出的权益对比。关注最大回撤、夏普(需无风险利率自行处理)、手续费占比。模拟盘曲线若长期高于回测,检查TqSim.set_commission是否过低。

五、TqKq 与 TqSim 区别

TqKq走快期模拟环境,规则更接近柜台;TqSim本地模拟,便于批量测试。两者get_account()字段一致,曲线口径可统一,但不应与实盘曲线直接等同。

六、用 pandas 画净值

importpandasaspd df=pd.read_csv("equity_sim.csv")df["nav"]=df["balance"]/df["balance"].iloc[0]# df["nav"].plot()

叠加risk_ratio子图,可看杠杆是否随净值恶化。

七、与回测曲线叠图

回测导出权益序列,与模拟盘按日期 align。偏差大于 5% 连续一周,先查 commission 与成交模式,再怀疑策略逻辑。

八、断线缺口处理

曲线中balance平直而行情在动,多半是断线未采样。重连后补点并标注gap字段,避免误判策略回撤。

九、采样策略选择

日内高频策略可用 K 线收盘采一次;日频策略用日盘结束采一次即可;多策略共账户应在同一文件用strategy_id分列,或只记账户总权益、分策略记贡献成交。无论哪种,采样时刻应固定写进交付文档,避免后人用不同频率重画曲线得出相反结论。

总结

模拟盘资金曲线不自动生成,需要程序在wait_update后采样get_account().balance等字段落盘。按 K 线收盘或日频记录,配上versionmode,就能在TqSim/TqKq阶段画出与回测可对照的权益轨迹,为是否上实盘提供第二份证据。采样别在每个 tick 写文件,以免反过来影响模拟表现。曲线本身不是目的,能解释回撤、能对上手续费、能发现断线缺口,才是模拟盘留痕的价值。

FAQ

1)balance 跳动很抖?

正常,含浮盈波动;可看日频曲线。

2)多品种共账户怎么记?

一条账户曲线即可,品种归因另记 position 快照。

3)能否用 api.get_trade 重算权益?

成交可辅助,账户以get_account为准。

4)断线后曲线缺口?

重连后补采一点,标注断线区间。


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

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

Blender四边形重构革命:QRemeshify插件让你的3D模型焕然一新

Blender四边形重构革命:QRemeshify插件让你的3D模型焕然一新 【免费下载链接】QRemeshify A Blender extension for an easy-to-use remesher that outputs good-quality quad topology 项目地址: https://gitcode.com/gh_mirrors/qr/QRemeshify 你是否曾为B…

作者头像 李华
网站建设 2026/6/11 4:40:55

Windows和Office智能激活完整指南:KMS_VL_ALL_AIO使用教程

Windows和Office智能激活完整指南:KMS_VL_ALL_AIO使用教程 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活和Office办公软件激活而烦恼吗?KMS_VL_A…

作者头像 李华
网站建设 2026/6/11 4:40:04

3分钟解锁Translumo:Windows实时屏幕翻译的终极解决方案

3分钟解锁Translumo:Windows实时屏幕翻译的终极解决方案 【免费下载链接】Translumo Advanced real-time screen translator for games, hardcoded subtitles in videos, static text and etc. 项目地址: https://gitcode.com/gh_mirrors/tr/Translumo 你是否…

作者头像 李华
网站建设 2026/6/11 4:39:36

分子图与LLM高效对齐:EDT-Former动态令牌技术解析

1. 项目概述:分子图与LLM的高效对齐挑战在药物发现和计算化学领域,分子图(Molecular Graph)作为描述化合物结构的标准表示形式,包含了原子(节点)和化学键(边)的拓扑信息。…

作者头像 李华
网站建设 2026/6/11 4:35:02

如何永久保存微信聊天记录?免费开源工具WeChatMsg终极解决方案

如何永久保存微信聊天记录?免费开源工具WeChatMsg终极解决方案 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/…

作者头像 李华
网站建设 2026/6/11 4:35:00

30分钟从零到生产:AIri云原生部署实战指南

30分钟从零到生产:AIri云原生部署实战指南 【免费下载链接】airi 💖🧸 Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-samas altitude. C…

作者头像 李华