以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  [建议]希望金字塔采用这个方法提高运行效率  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=54515)

--  作者:readonly
--  发布时间:2013/8/1 10:23:04
--  [建议]希望金字塔采用这个方法提高运行效率
目前图表程序,每笔新数据进入后,程序都要全部重新运算一遍。

其实程序中有些变量,不是采用当前k线数值作计算的,建议每根k线只计算一次。变量值保存起来,在图表没产生新k线时,都不用重算,一直调用之前计算的值。这样可以节约CPU运算量,提高模型运行效率。

编程环境再添加一个约定符号,可以让用户设定那些代码行,每根k线只计算一次。可以进一步提高模型的运行效率。


希望采纳,谢谢。







--  作者:lichenghu
--  发布时间:2013/8/1 10:26:48
--  

您好,您的意思是在指定的代码行加控制条件让它在逐K模式下只刷最后一根K把!这个可能目前无法做到,后续会折中进一步改善公式的运行效率。暂时变通方法就是勾选仅刷最后根K线


--  作者:readonly
--  发布时间:2013/8/1 11:26:40
--  
不是。


例如我用小时图去做交易, hh200:=ref(hhv(c,200),1) , 这个语句,每根新k线只计算一次即可,一个小时内变量值都不必再次计算了。
这就节约了3600秒x2笔-1次的重复计算量。

有些变量,即使编写时用了最新数据,但用户觉得不是很重要,不必每笔更新,也可以给代码行加个标记,强行让它每根k线只计算一次。

这样做对于复杂的程序,及多策略同时运行,对提高效率有很大的帮助。

--  作者:lichenghu
--  发布时间:2013/8/1 13:51:34
--  
理解您的意思,暂时只能统一使用仅刷最后根K线提速