以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  夸周期引用的头疼问题,附加一个backSet的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=10208)

--  作者:antonyxu99
--  发布时间:2012/2/19 9:12:30
--  夸周期引用的头疼问题,附加一个backSet的问题

如果用了夸周期引用,然后再用BACKSET函数,夸周期引用就不对了,数值就不变了,就跟常量一样。

例子:我想在5分钟图里得到昨日日线35日均线值。

 

建个指标:zbrx

ma2:ref(ma(C,35),1);

然后策略里引用他,

zrMa:"zbrx.ma2#DAY",linethick0;

 

这样写是没有任何问题的,调用没问题。

但是,接着我在策略里使用了backset,(目的是用来寻找一个创3日新高后,3日不再创新高的高点)

Nbar:=3;

bGD:=BACKSET(FILTER(REF(H,Nbar)=HHV(H,2*Nbar+1),Nbar),nbar+1),linethick0;

然后上面的夸周期引用就出问题了,数值不再变化,好像是常量一般。

 

我应该怎么办?如果我必须不能写backset函数,那么我该如何在已经走过3根k线以后,

再返回去设置3根k线以前的序列变量的值?

[此贴子已经被作者于2012-2-19 9:14:15编辑过]

--  作者:轮回
--  发布时间:2012/2/19 11:21:48
--  

用下面的分形解决。

HP:VALUEWHEN(REF(H,3)=HHV(H,5) AND REF(H,3)>REF(HHV(H,2),4) AND HHV(H,2)<REF(H,3),REF(H,3));
LP:VALUEWHEN(REF(L,3)=LLV(L,5) AND REF(L,3)<REF(LLV(L,2),4) AND LLV(L,2)>REF(L,3),REF(L,3));

由于没有未来函数,这个高低点有两个周期的延时。在实际应用中,比如绘制趋势线等等的时候,可以左移2个周期即可。


--  作者:antonyxu99
--  发布时间:2012/2/19 11:24:16
--  
呵呵,谢谢轮回,顶
--  作者:antonyxu99
--  发布时间:2012/2/19 11:52:00
--  

在轮回的帮助下,用drawsl并向左延伸,进行画图,这样就可以不使用BACKSET了,谢谢轮回大师,^_^

[此贴子已经被作者于2012-2-19 11:52:24编辑过]