期货量化快期模拟资金怎么调:天勤 TqKq 出入金与账户重置
前言
用TqKq快期模拟盘测策略,资金不够测加仓、或上一轮测试把账户搞乱,需要出入金或清空重来——这类操作在快期 APP/专业版里完成,脚本侧主要是换对交易单元、理解记录是否保留。我回归测试前,会先确认模拟资金是否回到基准,避免在「残仓+乱资金」上误判策略。
天勤TqSdk里TqKq()与本地TqSim()、临时默认模拟不是同一套记录。下面说明三者区别、出入金在哪里做、重置对策略回归的影响。
一、TqSim、TqKq、默认模拟的区别
| 类型 | 记录位置 | 典型用途 |
|---|---|---|
| 临时默认模拟 | 进程结束可能丢失 | 快速试代码 |
TqSim() | 本地模拟账户对象 | 回测式验证、可配置手续费 |
TqKq() | 快期模拟,可与客户端互通 | 接近真实模拟环境、多人查看 |
要用快期客户端里看到的模拟资金与成交,构造时应显式TqKq(),而不是以为所有TqApi(TqSim())都会同步到 APP。
fromtqsdkimportTqApi,TqAuth,TqKq api=TqApi(TqKq(),auth=TqAuth("账户","密码"))二、出入金在哪里操作
模拟出入金一般在快期 APP 或快期专业版的「模拟银行」「出入金」功能里完成,不在 Python 里用一行 API 随意改余额(以当期产品为准)。脚本连接TqKq后,wait_update会反映最新资金。
实操建议:
- 在客户端调出金/入金到目标金额。
- 策略里
wait_update后读get_account().available确认。 - 再跑加仓或风控测试。
若资金未变,检查是否连的是同一个快期账户、是否用了TqSim而非TqKq。
三、测试记录清空与重置
当模拟仓、挂单、成交历史干扰下一轮测试时,应在客户端使用「重置模拟账户」「清空记录」类功能(名称以界面为准),而不是只重启 Python 进程。只重启进程、不重置账户,持仓可能仍在。
重置后策略侧应:
- 重新
TqApi(TqKq(), auth=...),必要时close旧 api 再建。 - 确认
position为零、无活跃order。 - 再启动信号逻辑。
回归测试应用「固定初始资金 + 空仓」作为基线,写进测试说明。
四、对策略回归的影响
同一策略版本,在 100 万模拟资金与 10 万模拟资金下,拒单、保证金约束不同,收益曲线不可直接比。出入金后应记日志:日期、金额、重置前后资金。
多策略共用同一TqKq账户时,A 策略平仓不干净会影响 B 策略。严肃回归宜分账户或严格串行测试。
五、与回测、实盘的衔接
TqBacktest结果 ≠TqKq结果 ≠ 实盘。资金工具只解决模拟环境准备;衔接时仍要统一合约、手续费、信号时点。
从TqKq切实盘时,重新做只读监控与小单测试,不要假设模拟账户 ID 与实盘有任何对应关系。
总结
快期模拟资金的出入金与账户重置,主要在快期 APP 或专业版完成,Python 不能代替客户端改余额。脚本侧要明确用的是TqKq()而不是默认临时模拟或本地TqSim:只有TqKq才与你在客户端看到的模拟资金、成交记录互通。出入金后应在wait_update之后读get_account().available确认已生效,再开始测加仓、风控或拒单场景。
测试回归前宜把模拟账户恢复到「空仓 + 约定初始资金」:在客户端重置后,重新建TqApi(TqKq(), auth=...),核对position为零、无残留挂单。同一轮对比测试应固定初始资金规模,否则 100 万与 10 万下的保证金约束不同,曲线不可比。多策略共用同一模拟户时,要特别注意 A 策略残仓对 B 的影响。
建议维护模拟测试检查表:本轮是否TqKq、是否已重置、初始资金多少、available打印值、测试日期。从TqKq切实盘时,仍要走只读与小单流程,不要假设模拟户与实盘有任何对应关系。
FAQ
1)能否代码里直接改模拟资金?
一般不行,以快期客户端操作为主。
2)TqSim 和 TqKq 资金互通吗?
不互通,选一种作为该轮测试标准。
3)重置后策略还要改吗?
不用改逻辑,但要确认连接的是重置后的账户状态。
4)模拟资金很大导致从不拒单?
调低到接近实盘规模再测风控。
风险提示
本文用于模拟环境操作说明,不构成投资建议。
