未来函数检测结果如下:
该公式包含未来函数:BACKSET


K:=1;

局部低点预选A:=BACKSET(LLV(L,5)<REF(LLV(L,4),1),4);

局部低点预选B:=BACKSET(局部低点预选A=0 AND REF(局部低点预选A,1)=1,2);

局部低点预选C:=IF(局部低点预选B=1 AND REF(局部低点预选B,1)=0,-1,0);

局部高点预选A:=BACKSET(HHV(H,5)>REF(HHV(H,4),1),4);

局部高点预选B:=BACKSET(局部高点预选A=0 AND REF(局部高点预选A,1)=1,2);

局部高点预选C:=IF(局部高点预选B=1 AND REF(局部高点预选B,1)=0,1,0);

缺口判断:=IF(L>REF(H,1),1,IF(H<REF(L,1),-1,0));

距前高天:=BARSLAST(局部高点预选C=1);

距前低天:=BARSLAST(局部低点预选C=-1);

小值周期:=LOWRANGE(L);

大值周期:=TOPRANGE(H);

低保留AA:=IF(局部低点预选C=-1 AND REF(距前高天,1)>REF(距前低天,1) AND LLV(L,距前高天+1)<REF(LLV(L,距前高天+1),1),-1,0);

低保留AB:=IF(局部低点预选C=-1 AND REF(距前高天,1)<=REF(距前低天,1) AND (距前高天>=4 OR LLV(缺口判断,距前高天)=-1 OR LLV(L,距前低天+2)<REF(LLV(L,距前低天+1),1)),-1,0);

低保留S:=IF((低保留AA=-1 OR 低保留AB=-1) AND L<REF(H,距前高天+1),-1,0);

预判:=IF((距前低天<4 AND HHV(缺口判断,距前低天)!=1) OR REF(低保留S,距前低天)=0,1,0);

判断:=IF(局部高点预选C=1 AND REF(距前低天,1)<=REF(距前高天,1) AND 预判=1 AND 大值周期>REF(小值周期,距前低天+1) AND 大值周期>REF(小值周期,距前低天) AND 大值周期>REF(大值周期,距前高天),1,0);

高保留A:=IF(局部高点预选C=1 AND REF(距前低天,1)>REF(距前高天,1) AND HHV(H,距前低天+1)>REF(HHV(H,距前低天+1),1),1,0);

高保留B:=IF(局部高点预选C=1 AND REF(距前低天,1)<=REF(距前高天,1) AND REF(低保留S,距前低天)=-1 AND (距前低天>=4 OR HHV(缺口判断,距前低天)=1),1,0);

高保留:=IF((高保留A=1 OR 高保留B=1 OR 判断=1) AND H>REF(L,距前低天+1),1,0);

预判A:=IF((距前高天<4 AND HHV(缺口判断,距前高天)!=1) OR REF(高保留,距前高天)=0,1,0);

判断A:=IF(局部低点预选C=-1 AND REF(距前高天,1)<=REF(距前低天,1) AND 预判A=1 AND 小值周期>REF(大值周期,距前高天+1) AND 小值周期>REF(大值周期,距前高天) AND 小值周期>REF(小值周期,距前低天),-1,0);

低保留A:=IF(局部低点预选C=-1 AND REF(距前高天,1)>REF(距前低天,1) AND LLV(L,距前高天+1)<REF(LLV(L,距前高天+1),1),-1,0);

低保留B:=IF(局部低点预选C=-1 AND REF(距前高天,1)<=REF(距前低天,1) AND (距前高天>=4 OR LLV(缺口判断,距前高天)=-1 OR 判断A=-1),-1,0);

低保留:=IF((低保留A=-1 OR 低保留B=-1) AND L<REF(H,距前高天+1),-1,0);

距前高天A:=BARSLAST(高保留=1);

距前低天A:=BARSLAST(低保留=-1);

预判X:=IF((距前低天A<4 AND HHV(缺口判断,距前低天A)!=1) OR REF(低保留,距前低天A)=0,1,0);

判断X:=IF(局部高点预选C=1 AND REF(距前低天A,1)<=REF(距前高天A,1) AND 预判X=1 AND 大值周期>REF(小值周期,距前低天A+1) AND 大值周期>REF(小值周期,距前低天A) AND 大值周期>REF(大值周期,距前高天A),1,0);

高保留XA:=IF(局部高点预选C=1 AND REF(距前低天A,1)>REF(距前高天A,1) AND HHV(H,距前低天A+1)>REF(HHV(H,距前低天A+1),1),1,0);

高保留XB:=IF(局部高点预选C=1 AND REF(距前低天A,1)<=REF(距前高天A,1) AND REF(低保留,距前低天A)=-1 AND (距前低天A>=4 OR HHV(缺口判断,距前低天A)=1),1,0);

高保留X:=IF((高保留XA=1 OR 高保留XB=1 OR 判断X=1) AND H>REF(L,距前低天A+1),1,0);

预判XA:=IF((距前高天A<4 AND HHV(缺口判断,距前高天A)!=1) OR REF(高保留XA,距前高天A)=0,1,0);

判断XA:=IF(局部低点预选C=-1 AND REF(距前高天A,1)<=REF(距前低天A,1) AND 预判XA=1 AND 小值周期>REF(大值周期,距前高天A+1) AND 小值周期>REF(大值周期,距前高天A) AND 小值周期>REF(小值周期,距前低天A),-1,0);

低保留XA:=IF(局部低点预选C=-1 AND REF(距前高天A,1)>REF(距前低天A,1) AND LLV(L,距前高天A+1)<REF(LLV(L,距前高天A+1),1),-1,0);

低保留XB:=IF(局部低点预选C=-1 AND REF(距前高天A,1)<=REF(距前低天A,1) AND (距前高天A>=4 OR LLV(缺口判断,距前高天A)=-1 OR 判断XA=-1),-1,0);

低保留X:=IF((低保留XA=-1 OR 低保留XB=-1) AND L<REF(H,距前高天A+1),-1,0);

距前高天YA:=BARSLAST(高保留X=1);

距前低天YA:=BARSLAST(低保留X=-1);

预判YX:=IF((距前低天YA<4 AND HHV(缺口判断,距前低天YA)!=1) OR REF(低保留X,距前低天YA)=0,1,0);

判断YX:=IF(局部高点预选C=1 AND REF(距前低天YA,1)<=REF(距前高天YA,1) AND 预判YX=1 AND 大值周期>REF(小值周期,距前低天YA+1) AND 大值周期>REF(小值周期,距前低天YA) AND 大值周期>REF(大值周期,距前高天YA),1,0);

高保留YXA:=IF(局部高点预选C=1 AND REF(距前低天YA,1)>REF(距前高天YA,1) AND HHV(H,距前低天YA+1)>REF(HHV(H,距前低天YA+1),1),1,0);

高保留YXB:=IF(局部高点预选C=1 AND REF(距前低天YA,1)<=REF(距前高天YA,1) AND REF(低保留X,距前低天YA)=-1 AND (距前低天YA>=4 OR HHV(缺口判断,距前低天YA)=1),1,0);

高保留YX:=IF((高保留YXA=1 OR 高保留YXB=1 OR 判断YX=1) AND H>REF(L,距前低天YA+1),1,0);

预判YXA:=IF((距前高天YA<4 AND HHV(缺口判断,距前高天YA)!=1) OR REF(高保留YXA,距前高天YA)=0,1,0);

判断YXA:=IF(局部低点预选C=-1 AND REF(距前高天YA,1)<=REF(距前低天YA,1) AND 预判YXA=1 AND 小值周期>REF(大值周期,距前高天YA+1) AND 小值周期>REF(大值周期,距前高天YA) AND 小值周期>REF(小值周期,距前低天YA),-1,0);

低保留YXA:=IF(局部低点预选C=-1 AND REF(距前高天YA,1)>REF(距前低天YA,1) AND LLV(L,距前高天YA+1)<REF(LLV(L,距前高天YA+1),1),-1,0);

低保留YXB:=IF(局部低点预选C=-1 AND REF(距前高天YA,1)<=REF(距前低天YA,1) AND (距前高天YA>=4 OR LLV(缺口判断,距前高天YA)=-1 OR 判断YXA=-1),-1,0);

低保留YX:=IF((低保留YXA=-1 OR 低保留YXB=-1) AND L<REF(H,距前高天YA+1),-1,0);

AAAD:=IF(高保留YX=1 AND 低保留YX=-1 AND H>REF(H,REF(距前高天YA,1)+2),1,IF(高保留YX=1 AND 低保留YX=-1 AND L<REF(L,REF(距前低天YA,1)+2),-1,0));

极点保留:=IF(AAAD=0,高保留YX+低保留YX,AAAD);

局部极点:IF(极点保留=-1,L,IF(极点保留=1,H,DRAWNULL)),CIRCLEDOT,COLORYELLOW;

局部天数:BARSLAST(ABS(极点保留)),NODRAW;

局部换手:IF(极点保留=0,SUM("HSL.HSL",局部天数),0),NODRAW;

局部涨跌:C/REF(C,局部天数)*100-100,NODRAW,COLORWHITE;

换手G:=VARCAT(VAR2STR(SUM("HSL.HSL",BARSLAST(高保留X)),2),'%H ');

高点换手:=VARCAT(VARCAT(VARCAT(换手G,'('),VAR2STR(BARSLAST(高保留X),0)),'T)');

换手D:=VARCAT(VAR2STR(SUM("HSL.HSL",BARSLAST(低保留X)),2),'%H ');

低点换手:=VARCAT(VARCAT('(',VAR2STR(BARSLAST(低保留X),0)),'天)');

高跌幅:=IF(K=1,L/REF(H,BARSLAST(高保留X))*100-100,C/REF(C,BARSLAST(高保留X))*100-100);

低涨幅:=IF(K=1,H/REF(L,BARSLAST(低保留X))*100-100,C/REF(C,BARSLAST(低保留X))*100-100);

高跌幅A:=VARCAT(VAR2STR(高跌幅,2),'%幅');

低涨幅A:=VARCAT(VAR2STR(低涨幅,2),'%幅');

高点显示:=VARCAT(低点换手,低涨幅A);

低点显示:=VARCAT(高点换手,高跌幅A);

DRAWLINE(极点保留=-1,局部极点,极点保留=1,局部极点,0),COLORLIRED;

DRAWLINE(极点保留=1,局部极点,极点保留=-1,局部极点,0),COLORYELLOW;

DRAWTEXT(极点保留=-1,L*0.99,局部换手),COLORGREEN;

DRAWTEXT(极点保留=1,H*1.01,高点显示),COLORYELLOW;

{DRAWNUMBER(极点保留=1,H,局部极点);}

DRAWNUMBER(极点保留=-1,L,局部极点),DRAWABOVE;

原理解析:
K赋值:1
局部低点预选A赋值:BACKSET(5日内L最低值 局部低点预选B赋值:BACKSET(局部低点预选A=0 AND 1日前的局部低点预选A=1,2)
局部低点预选C赋值:IF(局部低点预选B=1 AND 1日前的局部低点预选B=0,-1,0)
局部高点预选A赋值:BACKSET(5日内H最高值>REF(4日内H最高值,1),4)
局部高点预选B赋值:BACKSET(局部高点预选A=0 AND 1日前的局部高点预选A=1,2)
局部高点预选C赋值:IF(局部高点预选B=1 AND 1日前的局部高点预选B=0,1,0)
缺口判断赋值:IF(L>1日前的H,1,IF(H<1日前的L,-1,0))
距前高天赋值:上次局部高点预选C=1距今天数
距前低天赋值:上次局部低点预选C=-1距今天数
小值周期赋值:最低价RANGE(L)
大值周期赋值:TOPRANGE(H)
低保留AA赋值:IF(局部低点预选C=-1 AND 1日前的距前高天>1日前的距前低天 AND 距前高天+1日内L最低值 低保留AB赋值:IF(局部低点预选C=-1 AND 1日前的距前高天<=1日前的距前低天 AND (距前高天>=4 OR 距前高天日内缺口判断最低值=-1 OR 距前低天+2日内L最低值 低保留S赋值:IF((低保留AA=-1 OR 低保留AB=-1) AND L<距前高天+1日前的H,-1,0)
预判赋值:IF((距前低天<4 AND 距前低天日内缺口判断最高值!=1) OR 距前低天日前的低保留S=0,1,0)
判断赋值:IF(局部高点预选C=1 AND 1日前的距前低天<=1日前的距前高天 AND 预判=1 AND 大值周期>距前低天+1日前的小值周期 AND 大值周期>距前低天日前的小值周期 AND 大值周期>距前高天日前的大值周期,1,0)
高保留A赋值:IF(局部高点预选C=1 AND 1日前的距前低天>1日前的距前高天 AND 距前低天+1日内H最高值>REF(距前低天+1日内H最高值,1),1,0)
高保留B赋值:IF(局部高点预选C=1 AND 1日前的距前低天<=1日前的距前高天 AND 距前低天日前的低保留S=-1 AND (距前低天>=4 OR 距前低天日内缺口判断最高值=1),1,0)
高保留赋值:IF((高保留A=1 OR 高保留B=1 OR 判断=1) AND H>距前低天+1日前的L,1,0)
预判A:=IF((距前高天<4 AND 距前高天日内缺口判断最高值!=1) OR 距前高天日前的高保留=0,1,0)
判断A:=IF(局部低点预选C=-1 AND 1日前的距前高天<=1日前的距前低天 AND 预判A=1 AND 小值周期>距前高天+1日前的大值周期 AND 小值周期>距前高天日前的大值周期 AND 小值周期>距前低天日前的小值周期,-1,0)
低保留A赋值:IF(局部低点预选C=-1 AND 1日前的距前高天>1日前的距前低天 AND 距前高天+1日内L最低值 低保留B赋值:IF(局部低点预选C=-1 AND 1日前的距前高天<=1日前的距前低天 AND (距前高天>=4 OR 距前高天日内缺口判断最低值=-1 OR 判断A=-1),-1,0)
低保留赋值:IF((低保留A=-1 OR 低保留B=-1) AND L<距前高天+1日前的H,-1,0)
距前高天A:=上次高保留=1距今天数
距前低天A:=上次低保留=-1距今天数
预判X:=IF((距前低天A<4 AND 距前低天A日内缺口判断最高值!=1) OR 距前低天A日前的低保留=0,1,0)
判断X:=IF(局部高点预选C=1 AND 1日前的距前低天A<=1日前的距前高天A AND 预判X=1 AND 大值周期>距前低天A+1日前的小值周期 AND 大值周期>距前低天A日前的小值周期 AND 大值周期>距前高天A日前的大值周期,1,0)
高保留XA:=IF(局部高点预选C=1 AND 1日前的距前低天A>1日前的距前高天A AND 距前低天A+1日内H最高值>REF(距前低天A+1日内H最高值,1),1,0)
高保留XB:=IF(局部高点预选C=1 AND 1日前的距前低天A<=1日前的距前高天A AND 距前低天A日前的低保留=-1 AND (距前低天A>=4 OR 距前低天A日内缺口判断最高值=1),1,0)
高保留X:=IF((高保留XA=1 OR 高保留XB=1 OR 判断X=1) AND H>距前低天A+1日前的L,1,0)
预判XA:=IF((距前高天A<4 AND 距前高天A日内缺口判断最高值!=1) OR 距前高天A日前的高保留XA=0,1,0)
判断XA:=IF(局部低点预选C=-1 AND 1日前的距前高天A<=1日前的距前低天A AND 预判XA=1 AND 小值周期>距前高天A+1日前的大值周期 AND 小值周期>距前高天A日前的大值周期 AND 小值周期>距前低天A日前的小值周期,-1,0)
低保留XA:=IF(局部低点预选C=-1 AND 1日前的距前高天A>1日前的距前低天A AND 距前高天A+1日内L最低值 低保留XB:=IF(局部低点预选C=-1 AND 1日前的距前高天A<=1日前的距前低天A AND (距前高天A>=4 OR 距前高天A日内缺口判断最低值=-1 OR 判断XA=-1),-1,0)
低保留X:=IF((低保留XA=-1 OR 低保留XB=-1) AND L<距前高天A+1日前的H,-1,0)
距前高天YA:=上次高保留X=1距今天数
距前低天YA:=上次低保留X=-1距今天数
预判YX:=IF((距前低天YA<4 AND 距前低天YA日内缺口判断最高值!=1) OR 距前低天YA日前的低保留X=0,1,0)
判断YX:=IF(局部高点预选C=1 AND 1日前的距前低天YA<=1日前的距前高天YA AND 预判YX=1 AND 大值周期>距前低天YA+1日前的小值周期 AND 大值周期>距前低天YA日前的小值周期 AND 大值周期>距前高天YA日前的大值周期,1,0)
高保留YXA:=IF(局部高点预选C=1 AND 1日前的距前低天YA>1日前的距前高天YA AND 距前低天YA+1日内H最高值>REF(距前低天YA+1日内H最高值,1),1,0)
高保留YXB:=IF(局部高点预选C=1 AND 1日前的距前低天YA<=1日前的距前高天YA AND 距前低天YA日前的低保留X=-1 AND (距前低天YA>=4 OR 距前低天YA日内缺口判断最高值=1),1,0)
高保留YX:=IF((高保留YXA=1 OR 高保留YXB=1 OR 判断YX=1) AND H>距前低天YA+1日前的L,1,0)
预判YXA:=IF((距前高天YA<4 AND 距前高天YA日内缺口判断最高值!=1) OR 距前高天YA日前的高保留YXA=0,1,0)
判断YXA:=IF(局部低点预选C=-1 AND 1日前的距前高天YA<=1日前的距前低天YA AND 预判YXA=1 AND 小值周期>距前高天YA+1日前的大值周期 AND 小值周期>距前高天YA日前的大值周期 AND 小值周期>距前低天YA日前的小值周期,-1,0)
低保留YXA:=IF(局部低点预选C=-1 AND 1日前的距前高天YA>1日前的距前低天YA AND 距前高天YA+1日内L最低值 低保留YXB:=IF(局部低点预选C=-1 AND 1日前的距前高天YA<=1日前的距前低天YA AND (距前高天YA>=4 OR 距前高天YA日内缺口判断最低值=-1 OR 判断YXA=-1),-1,0)
低保留YX:=IF((低保留YXA=-1 OR 低保留YXB=-1) AND L<距前高天YA+1日前的H,-1,0)
AAAD赋值:IF(高保留YX=1 AND 低保留YX=-1 AND H>REF(H,REF(距前高天YA,1)+2),1,IF(高保留YX=1 AND 低保留YX=-1 AND L如果AAAD=0返回高保留YX+低保留YX否则返回AAAD
输出局部极点:IF(极点保留=-1,L,IF(极点保留=1,H,DRAWNULL)),CIRCLEDOT,画黄色
输出局部天数:上次极点保留距今天数的绝对值,NODRAW
输出局部换手:IF(极点保留=0,局部天数的"HSL.HSL"日累和,0),NODRAW
输出局部涨跌:C/局部天数日前的C*100-100,NODRAW,画白色
换手G赋值:VARCAT(VAR2STR(SUM("HSL.HSL",上次高保留X距今天数),2),'%H ')
高点换手赋值:VARCAT(VARCAT(VARCAT(换手G,'('),VAR2STR(上次高保留X距今天数,0)),'T)')
换手D赋值:VARCAT(VAR2STR(SUM("HSL.HSL",上次低保留X距今天数),2),'%H ')
低点换手赋值:VARCAT(VARCAT('(',VAR2STR(上次低保留X距今天数,0)),'天)')
高跌幅赋值:IF(K=1,L/REF(H,上次高保留X距今天数)*100-100,C/REF(C,上次高保留X距今天数)*100-100)
低涨幅赋值:IF(K=1,H/REF(L,上次低保留X距今天数)*100-100,C/REF(C,上次低保留X距今天数)*100-100)
高跌幅A:=VARCAT(VAR2STR(高跌幅,2),'%幅')
低涨幅A:=VARCAT(VAR2STR(低涨幅,2),'%幅')
高点显示赋值:VARCAT(低点换手,低涨幅A)
低点显示赋值:VARCAT(高点换手,高跌幅A)
DRAWLINE(极点保留=-1,局部极点,极点保留=1,局部极点,0),COLORLIRED
DRAWLINE(极点保留=1,局部极点,极点保留=-1,局部极点,0),画黄色
当满足条件极点保留=-1时,在L*0.99和局部换手位置书写文字
当满足条件极点保留=1时,在H*1.01和高点显示位置书写文字
{DRAWNUMBER(极点保留=1,H,局部极点)
}
DRAWNUMBER(极点保留=-1,L,局部极点),DRAWABOVE

声明:本站所有资源,均为用户自主上传,仅作为学习交流之用,其版权归原作者或原出版社所有,本站不对所涉及的版权问题负法律责任。如有侵权,请联系我们删除!