以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  ref()函数有些问题  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=7491)

--  作者:longbow
--  发布时间:2011/8/11 9:28:21
--  ref()函数有些问题

有这样一段代码,为的是判断上个周期是否均线交叉,但有些问题:

LMA1:=MA(c,N);

LMA2:=MA(c,N1);

 

//买开

BK:=ref(Cross(LMA1,LMA2),1);

 

//卖开

SK:=ref(Cross(LMA2,LMA1),1);

 

实践中发现BK, SK在上个周期交叉后,一直保持正值,好像上个周期一致交叉了。这样对后续判断带来很大的麻烦。

 

要实现的目的:

 

1. 上个K线周期均线交叉 则BK, SK为正。

2. 上个K线周期均线不交叉,则BK,SK不为正。

 

请问以上的代码有何问题?如何改正?

 

谢谢!


--  作者:jinzhe
--  发布时间:2011/8/11 9:43:45
--  
是不是用序列计算了?
--  作者:longbow
--  发布时间:2011/8/11 9:45:16
--  
是在序列模式下
--  作者:jinzhe
--  发布时间:2011/8/11 9:48:25
--  
用逐k线计算
--  作者:longbow
--  发布时间:2011/8/11 10:02:42
--  

利用逐K线计算,不知道计算机是否能够承受。每个品种都有类似的算法,总计10个以上。


--  作者:王锋
--  发布时间:2011/8/11 10:06:54
--  

LMA1:=MA(c,5);

LMA2:=MA(c,10);

 

//买开

BK:ref(Cross(LMA1,LMA2),1);

 

//卖开

SK:ref(Cross(LMA2,LMA1),1);

 

序列模式在图表上测试,没发现你所说的问题


--  作者:longbow
--  发布时间:2011/8/11 10:27:46
--  
我的前台图形显示部分是逐k线的,后台执行部分是序列模式的。后台有这个问题,前台没有。
--  作者:王锋
--  发布时间:2011/8/11 10:29:33
--  

后台不可能与图表有这种差距的,还是好好检查你的公式代码吧


--  作者:longbow
--  发布时间:2011/8/11 10:34:15
--  

使用逐K线模式,好像存在同样的问题。但是CPU的用量从15增加到了40%。

 

请问CPU占用多少的使用就认为负荷过重,无法正常执行?


--  作者:longbow
--  发布时间:2011/8/11 10:41:50
--  
已经检查了很多遍,只有相交开仓与止损的部分,实在看不出来问题在哪里?