以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  开盘时,公式运行需要10多秒。怎么回事?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=181820)

--  作者:txin66
--  发布时间:2020/8/20 15:37:31
--  开盘时,公式运行需要10多秒。怎么回事?
逐K线设计的公式,在系统中,多长时间计算一次?在哪里可以设置?


在我的系统中,发现开盘的时候,设计的公式第一次刷线,需要10多秒钟,才看到结果。
这可能是什么原因导致的?

会不会是因为框架太多和公式太多的原因?但这个原因,在开盘时间的中间,并没有发现。
这种延迟,都是在晚上开盘时间,或者早上开盘时间的第一分钟出现。


--  作者:banzhuan
--  发布时间:2020/8/20 15:48:55
--  
图表上加载了多少K线量呢? 逐K模式下,新的一根K生成时,会从第一根K刷到最后一根K。如果框架又多,K线量也很多,可能会导致运算时间过长。刷新间隔时间您可以在策略中加上DEBUGFILE输出一个值,2次间隔输出的时间就是运行的时间。
--  作者:txin66
--  发布时间:2020/8/20 16:08:24
--  
是不是在 选项 中的 常规 中,修改 图形显示 的 K线根数?


--  作者:banzhuan
--  发布时间:2020/8/20 16:21:32
--  
是的在确保策略稳定的情况下,减少加载K线数量试试,这里图形显示的数量是不包括当日K线数据。
--  作者:txin66
--  发布时间:2020/8/21 7:31:34
--  如何提高刷新频率?
一个30分钟周期的窗口,大概有100根K线,每分钟,公式每分钟运行7次。

一个1分钟的窗口,窗口内大概有300根K线。每分钟,公式运行2次。

系统设置是 图形显示100根K线,内存保留200根K线。

还有什么办法,提供1分钟窗口的 公式运行频率?

--  作者:wenarm
--  发布时间:2020/8/21 7:50:00
--  

优化自己策略。以及提升计算机硬件性能


--  作者:txin66
--  发布时间:2020/8/21 10:26:44
--  是不是哪里有个参数控制了公式运行频率?
我精简了公式,或者把框架减少的极少。或者把框架内的K线数量减少。
感觉变化不大。基本是每分钟,公式运行4-5次。

是不是有个参数,控制了公式运行的频率?

--  作者:banzhuan
--  发布时间:2020/8/21 10:35:01
--  
一般影响运行效率的有3方面:加载的框架数量及窗格数量,加载到窗格中的K线数量,以及公式的复杂程度,您可以从这3方面入手优化。 

还要考虑到电脑硬件情况,没有具体参数设置

--  作者:FireScript
--  发布时间:2020/8/21 13:19:05
--  
“但这个原因,在开盘时间的中间,并没有发现。
这种延迟,都是在晚上开盘时间,或者早上开盘时间的第一分钟出现。

首次运行公式时候,会把历史的都计算一遍。后续的时候则是在历史基础上刷新最新的一个K。所以如果你公式很复杂,初次加载或运行都很容易卡顿很久。

建议检查下:
1.是否太多的跨周期调用
2.是否有循环的使用
3.是否有某些明确标注计算量很大的函数的使用。

公式的刷新是没有一个频率的设定的。是分笔驱动计算的。但是如果数据没有变化,那么可能计算结果不会变。所以
1.你注意下K线上的价格是否正常刷新。检查下工具-选项-基本设置-常规-盘中延时刷新  选项的设置。(这个设置不是控制公式计算频率的,与之无关,但是有影响到公式计算结果更新)
2.可能就是公式本身计算太耗时了。参考2楼方式试下就行了。



--  作者:txin66
--  发布时间:2020/8/21 22:38:12
--  框架是比较多,200根K线
整个系统,运行了32个框架。
其中一个主图,称为A主图。有200跟K线。其他主图,没有那么多。
运行公式A的附图,是关联这个主图A的。

另外一个主图B,运行了大约70根K线。
公式B运行在关联B的附图里。

公式A和B的刷新间隔,基本都是每分钟3-4次。