以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [求助]请问这样改公式效率提高大吗? (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=7561) |
-- 作者:wujiazhu -- 发布时间:2011/8/17 0:43:57 -- [求助]请问这样改公式效率提高大吗? 方法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次,而且要写很多个中间变量。 请问这样改能提高多少效率? |
-- 作者:阿火 -- 发布时间:2011/8/17 7:47:57 -- 调用1次的 ,就无需用中间变量 调用2次的,用中间变量运行效率更高。 你的模式有很多这种情况,会提高不少 |
-- 作者:wujiazhu -- 发布时间:2011/8/17 11:19:00 -- 另外,如果公式多次引用最高价HIGH函数,那么我写成 var:=HIGH; 然后再调用var,这样也能提高效率吗? |
-- 作者:fly -- 发布时间:2011/8/17 11:41:49 -- 不需要 |