QMT里改完参数不生效,八成漏了这一步
发布时间:2小时前阅读:21
改了参数、保存、看着界面上显示的是新值,跑起来结果却和改之前一模一样。这种情况非常常见,原因通常是策略实例没有重新加载。
量化终端的运行机制是:策略启动时把代码和参数读进内存,之后按内存里的版本执行。你在编辑器里改了文件、点了保存,磁盘上的内容变了,但内存里跑的还是旧版本。界面上的参数显示可能来自配置文件,和实际执行的那份不一定同步。
正确的流程有四步,缺一步都可能白改。
1、改完代码,先保存,确认文件修改时间变了。
2、停止当前运行的策略实例,不是暂停,是停止。
3、重新启动策略,让新代码重新加载。
4、在策略开头打印一次关键参数值,启动后看日志确认打印出来的是新值。
第四步最容易被跳过,也最关键。没有这一步,你只是「觉得」改动生效了。加上这一行日志,改动是否落地就有了客观依据。
还有一种更隐蔽的情况:策略有多个实例,你只重启了其中一个。界面上的列表要看清,实例名、绑定的账号、启动时间都对一遍。
养成这个习惯之后,你会发现自己排查问题的速度明显变快。因为「改动是否生效」这个变量被固定住了,剩下的问题只可能在逻辑里,范围一下子缩小很多。
工程上的确定性,是靠这种笨办法一点点攒出来的。
还有一点值得养成:每次改动前用一句话写下这次要解决什么问题,改完记录结果。三五次之后回头翻,你会发现自己反复在同一个地方出错,那才是真正需要补的短板,而不是继续加新功能。
还有一类情况值得单独说:策略依赖的外部文件被改动过。比如标的列表被别人更新了、参数表格式变了,代码没动,行为也会变。所以每次异常都要先确认「除了我改的地方,还有什么是新的」。
股票/量化开户欢迎找我!满足条件股票佣金万0.854、etf 可转债佣金万0.5、国债逆回购一折(百万分之一)!期权1.8元一张全包价!量化软件QMT+ptrade免费使用!还有888、999资金靓号等你选!
温馨提示:投资有风险,选择需谨慎。



问一问
从业认证

+微信
分享该文章
