以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  关于后台交易的数据采用  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=64588)

--  作者:leonxu
--  发布时间:2014/5/3 23:52:46
--  关于后台交易的数据采用
请问后台交易所需要的数据量是取决于选项-维护-内存数据量的吗,即比如某策略所依据的指标计算需要动用5000个数据,这样需要在选项-维护-内存中设5000个数据吗,但这样的话会令系统速度很慢,但不这样设,似乎整天策略是不交易的,因为没有这个数据量,那指标就不会在图上显示,对于程序来说,它查询的结果是无此指标数值,如图上看不见一样。请问题如何解决
--  作者:jinzhe
--  发布时间:2014/5/4 10:04:41
--  

是的,后台交易的数据量是在内存保留里面设置的,如果你公式的计算数量需要5000根才能正确运行,那么你要在这里写上5000

 


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:leonxu
--  发布时间:2014/5/6 22:23:44
--  

这样会搞到运行很慢,这个问题如何解决?


--  作者:jinzhe
--  发布时间:2014/5/7 9:00:15
--  

减少你的公式所需要的计算数据数量


--  作者:leonxu
--  发布时间:2014/5/29 19:56:21
--  
晕,这算什么建议,我那算法需要5000个数据
--  作者:admin
--  发布时间:2014/5/29 20:49:16
--  
你算法需要5000个数据,那么你当然要给你的公式5000个数据才行了,不然怎么算啊
--  作者:无极无名
--  发布时间:2014/5/30 11:08:56
--  
也许还是有点办法可以想的。虽然可以勾选仅刷最后一根K线,但是金字塔每次换K线时都会从头到尾执行公式一次,这样有这样的好处。但是如果你是很小的周期,而且计算K数量很大,那么会频繁的从头算到尾,这个速度当然就慢下来了。也许可以在第一次完整的从头到尾执行一遍公式之后,用全局变量记忆最新值传递给后面一根BAR,并用用全局变量设置开关,在之后换K线时跳过从头到尾执行,直接执行最后一根K。这样5000个数据也好,更多也好,只在加载公式时用到,之后再也跟他们无关了。不知道这样可否提高效率?
[此贴子已经被作者于2014/5/30 11:09:26编辑过]

--  作者:leonxu
--  发布时间:2014/6/2 0:40:49
--  

比如就是要算参数为5000左右的均线,怎么弄呢


--  作者:无极无名
--  发布时间:2014/6/2 22:48:31
--  
那应该没有办法了吧。我的那个办法的前提是的确只需要算一遍5000个数据就可以了,后面不需要哪些数据了。你要算5000个BAR的均线只怕是不行,均线的算法是减去第一个数据,加上最新一个数据,再平均,所以无论如何你都要用到前面的数据。但你要需要用到前面的数据的时候,所有相关的统计函数,每根BAR都要执行到,不允许出现中间被跳过不执行的BAR,否则就会出错。所以必须老老实实在换K时,从第一根到最后一根逐K运行一遍公式。
--  作者:leonxu
--  发布时间:2014/6/3 17:19:50
--  

所以金字塔总是崩溃,而且更晕的是,不知为什么,用着用着,指标就会在图上消失,只剩K线