最近在搞一个一目均衡表的自定义指标,碰到几个挺有意思的坑,来跟大家唠唠。
早上盯盘的时候突然来了点灵感,做EA开发的朋友应该懂这种感觉。
先说第一个坑:指标挂在1小时周期上死活不刷新,查了半天才发现是OnCalculate里prev_calculated没处理好,血泪教训。
第二个坑:用iCustom跨周期取数据的时候,如果目标周期还没加载完,它直接给你返回个0,不加容错处理的话后面全乱套。
第三个坑:回测跑大数据量的时候内存直接起飞,后来发现ArraySetAsSeries得配合正确的释放姿势,不然就是给自己挖坑。
说到底,别跟行情对着干,写代码也一样,先让它跑起来再慢慢调优。
个人经验,不喜勿喷哈。
补充个小细节:OnCalculate里prev_calculated最好在每根K线收盘后再更新,不然盘中来回跳会反复重算历史数据,白白拖慢速度。
早上盯盘的时候突然来了点灵感,做EA开发的朋友应该懂这种感觉。
先说第一个坑:指标挂在1小时周期上死活不刷新,查了半天才发现是OnCalculate里prev_calculated没处理好,血泪教训。
第二个坑:用iCustom跨周期取数据的时候,如果目标周期还没加载完,它直接给你返回个0,不加容错处理的话后面全乱套。
第三个坑:回测跑大数据量的时候内存直接起飞,后来发现ArraySetAsSeries得配合正确的释放姿势,不然就是给自己挖坑。
说到底,别跟行情对着干,写代码也一样,先让它跑起来再慢慢调优。
个人经验,不喜勿喷哈。
补充个小细节:OnCalculate里prev_calculated最好在每根K线收盘后再更新,不然盘中来回跳会反复重算历史数据,白白拖慢速度。
