方法3:通过公式编写技巧
一个简单的例子:
ENTERLONG:CROSS(C,MA(5,10));
EXITLONG:CROSS(MA(5,10),C);
通过上面的语句,我们看到了,MA(5,10)其实是被连续使用了两次,这样的重复执行函数调用,必然会带来不必要的运算开支。改进方法如下:
MA5:=MA(5,10);
ENTERLONG:CROSS(C,MA5);
EXITLONG:CROSS(MA5,C);
通过中间变量MA5,保存函数调用结果,通过重复使用内部变量MA5,达到提高效率的目的。
我公式里比较多像上面例子的情况,如果写个中间变量可能只是调用1-2次,而且要写很多个中间变量。
请问这样改能提高多少效率?
调用1次的 ,就无需用中间变量
调用2次的,用中间变量运行效率更高。
你的模式有很多这种情况,会提高不少
另外,如果公式多次引用最高价HIGH函数,那么我写成
var:=HIGH;
然后再调用var,这样也能提高效率吗?