QMT实盘前必须做的三场压力测试
发布时间:2小时前阅读:8
策略从回测走向实盘,中间隔着的不是代码问题,而是极端情形的应对能力。压力测试就是提前把极端情形演练一遍,QMT环境里至少要做以下三场测试,做完才有底气上真金白银。
1、行情中断测试。人为断开行情连接,观察策略的表现:会不会在无数据状态下继续发委托?重连后能不能恢复正常订阅?正确的表现应该是策略暂停发单、记录中断时刻的持仓状态,恢复后先同步数据再继续。如果断线期间程序还在按旧数据疯狂下单,这个bug在真实断网时会酿成大错。
2、委托异常测试。测试委托被拒、部分成交、长时间不回报三种情形。比如故意下一笔价格超涨跌停限制的委托让它被拒,看策略的异常分支是否正确捕获并跳过,而不是卡死或者重复尝试;部分成交的情形要测试撤单补单逻辑;委托发出去迟迟没有回报时,程序要有超时查询机制主动向柜台查询委托状态。
3、资金与持仓边界测试。测试资金不足时下单的表现、持仓到达预设上限时策略是否停止加仓、以及程序强制重启后的仓位恢复能力。仓位恢复是最关键的一项,重启后策略必须能从柜台读取真实持仓和资金,而不是依赖本地缓存,否则重启一次持仓就乱一次。
三场测试的具体做法:在模拟环境里人为制造上述故障,逐一观察策略行为并修复缺陷。测试通过的标准不是不报错,而是报错之后行为符合预期、状态可以恢复。
压力测试做完,你对策略的边界就心里有数了。实盘里出问题的从来不是平均情况,而是那些你没演练过的极端情形。
另外,压力测试不是一次性工作。策略每次大幅修改之后,这三场测试都要重跑一遍,改动可能引入新的异常路径。把测试清单保存成固定模板,每次发版前对照执行,习惯养成了,实盘事故率会明显下降。
股票开户欢迎找我!可以申请万0.854的股票佣金、etf 可转债佣金万0.5、国债逆回购一折(百万分之一)!量化软件QMT+ptrade免费使用!还有888、999资金靓号等你选!
温馨提示:投资有风险,选择需谨慎。
什么是压力测试,如何进行压力测试?



问一问
从业认证

+微信
分享该文章
