JC:=CROSS(K,D),NODRAW; //KD金叉
SC:=CROSS(D,K),NODRAW; //KD死叉
jc1:SUMBARS(JC,1); //最新一个金叉的位置
jc2:SUMBARS(JC,2); //倒数第二个金叉的位置
jc3:SUMBARS(JC,3);
jc4:SUMBARS(JC,4);
sc1:SUMBARS(SC,1);
sc2:SUMBARS(SC,2);
sc3:SUMBARS(SC,3);
sc4:SUMBARS(SC,4);
HH:=if(jc1>sc1, REF(HHV(H,jc1),sc1), REF(HHV(H,jc2),sc1); //可求得最后一段从金叉到死叉之间的最高价格,结果显示该语句与直接用
REF(HHV(H,jc1),sc1) 效果相同,不jc1>sc1还是jc1<sc1.
但是在求倒数第二段和第三段当中的最高价格时结果不正确:(每一段的最高价格是从某一个金叉到它之后出现的死叉这个时间段内出现的最高价格)
2ND_HIGH:if(jc2>sc2,REF(HHV(H,jc2),sc2),ref(HHV(H,JC3),SC2))nodraw,COLORYELLOW;
3RD_HIGH:if(jc3>sc3,REF(HHV(H,jc3),sc3),ref(HHV(H,JC4),SC3))nodraw,COLORYELLOW;
请问错在哪里?
h1:REF(HHV(H,jc1),sc1);//倒数第一个死叉前的一段金叉区域的最高价
h2:REF(HHV(H,jc1),sc2);//倒数第二个死叉前的一段金叉区域的最高价
当鼠标再sc2的位置是sc2前一段的金叉就是jc1,不需要用jc2求
果然!多谢!
试验用 h3:REF(HHV(H,jc1),sc3)
取h3值符合预期.