以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  用hhvbars得到最近高位周期  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=70374)

--  作者:qq代人发帖
--  发布时间:2014/9/24 13:40:48
--  用hhvbars得到最近高位周期
请教,如果用hhvbars得到最近高位周期.
在4天c是10 10 10 5的情况下,hhvbars(c,4)得到3,我怎样得到1呢?

--  作者:jinzhe
--  发布时间:2014/9/24 13:45:06
--  
处理中,请稍等
--  作者:jinzhe
--  发布时间:2014/9/24 13:50:04
--  
barslast(h=hhv(h,4))
--  作者:asmcat
--  发布时间:2014/9/24 14:25:57
--  

jinzhe版主,能否再帮我想想办法,我不想用循环来代替

我想找个简捷的办法来代替hhvbars

 

 

HH:HHV(H,4);{这句的周期是:4天周期中的第4天,即我们当前周期最后一天,来做个判断}

HL:BARSLAST(H>=HH); {这句的周期是运算中,的,当统计到4天中某个周期时,引用的和h和hhv也是当天的,不是我们的当前线所在那个周期,会向前超过我们设置的4天周期}

这里面有逻辑错误,

barslast和hhvbars根本不是一种逻辑,

hhvbars可以跨周期横向判断,把一段时空的high横向判断,

barslast只能计算单个周期的条件,他的h就是周期中某一天的h,他的hh:hhv(h,4)的周期不是我们的当前周期,根本不是一回事.

barslist没有横向统计的能力.

 


--  作者:asmcat
--  发布时间:2014/9/24 14:30:05
--  

如果用barslast计算个,

barslast(close>7)之类的直接条件,很简单,

但是一旦用间接引用

 

barslast(h=hhv(h,4),hhv的周期就跟着走了,是那天的H的周期,再向前3个周期来统计.不是我们要的当前周期为准.

 

[此贴子已经被作者于2014/9/24 14:30:38编辑过]

--  作者:jinzhe
--  发布时间:2014/9/24 14:49:04
--  
有道理,我再想想
--  作者:自渔自乐
--  发布时间:2014/9/24 15:21:31
--  
cc:=hhv(c,4);
ct:barslast(not(cc=ref(cc,1)));
--  作者:jinzhe
--  发布时间:2014/9/24 15:24:04
--  
不对咯
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2014/9/24 16:23:48
--  

runmode:0;
hh:hhv(h,4);
h1:=h;
if barpos>4 then begin
 for i=0 to 3 do begin
  if h1[barpos-i]=hh then begin
   n:=i;
   goto abc;
  end
 end
end
abc@ nn:n,linethick0;

 

用循环做的


--  作者:自渔自乐
--  发布时间:2014/9/24 17:47:14
--  
哇,又学习了,谢谢jinzhe老师

我那个理解错楼主意思了,哈哈