来函数检测结果如下:
该公式没有未来函数


N:=3;

A1:=FORCAST(EMA(CLOSE,5),6);

A2:=FORCAST(EMA(CLOSE,8),6);

A3:=FORCAST(EMA(CLOSE,11),6);

A4:=FORCAST(EMA(CLOSE,14),6);

A5:=FORCAST(EMA(CLOSE,17),6);

B:=A1+A2+A3+A4-4*A5;

TOWERC:=EMA(B,2);

B1:FORCAST(EMA(B,3),6),POINTDOT,COLORGREEN;

B2:FORCAST(EMA(B,4),6),POINTDOT,COLORGREEN;

B3:FORCAST(EMA(B,5),6),POINTDOT,COLORGREEN;

B4:FORCAST(EMA(B,6),6),POINTDOT,COLORGREEN;

B5:FORCAST(EMA(B,7),6),POINTDOT,COLORGREEN;

B6:FORCAST(EMA(B,8),6),POINTDOT,COLORGREEN;

B7:FORCAST(EMA(B,9),6),POINTDOT,COLORGREEN;

B8:FORCAST(EMA(B,10),6),POINTDOT,COLORGREEN;

B9:FORCAST(EMA(B,11),6),POINTDOT,COLORGREEN;

B10:FORCAST(EMA(B,12),6),POINTDOT,COLORGREEN;

B11:FORCAST(EMA(B,13),6),POINTDOT,COLORGREEN;

B12:FORCAST(EMA(B,14),6),POINTDOT,COLORGREEN;

B13:=FORCAST(EMA(B,15),6),POINTDOT,COLORGREEN;

B14:FORCAST(EMA(B,16),6),POINTDOT,COLORGREEN;

B15:FORCAST(EMA(B,17),6),POINTDOT,COLORGREEN;

STICKLINE(TOWERC>=REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORRED;

STICKLINE(TOWERC<REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORGREEN;

STICKLINE(TOWERC>=REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORRED;

STICKLINE(TOWERC>=REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORRED;

STICKLINE(TOWERC>=REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORRED;

STICKLINE(TOWERC<REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORGREEN;

STICKLINE(TOWERC<REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORGREEN;

STICKLINE(TOWERC<REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORGREEN;

STICKLINE(TOWERC<REF(TOWERC,1),TOWERC,REF(TOWERC,1),N,0),COLORGREEN;

BSUM:=(B1+B2+B3+B4+B5+B6+B7+B8+B9+B10+B11+B12+B13+B14+B15)/15;

BMAX1:=MAX(MAX(B1,B2),MAX(B3,B4));

BMAX2:=MAX(MAX(B5,B6),MAX(B7,B8));

BMAX3:=MAX(MAX(B9,B10),MAX(B11,B12));

BMAX4:=MAX(MAX(B13,B14),B15);

BMAX:=MAX(MAX(BMAX1,BMAX2),MAX(BMAX3,BMAX4));

BMIN1:=MIN(MIN(B1,B2),MIN(B3,B4));

BMIN2:=MIN(MIN(B5,B6),MIN(B7,B8));

BMIN3:=MIN(MIN(B9,B10),MIN(B11,B12));

BMIN4:=MIN(MIN(B13,B14),B15);

BMIN:=MIN(MIN(BMIN1,BMIN2),MIN(BMIN3,BMIN4));

BAX:=ABS(BMAX-(TOWERC+REF(TOWERC,1))/2);

BAN:=ABS(BMIN-(TOWERC+REF(TOWERC,1))/2);

BFIN:=IF(BAX>BAN,BMAX,BMIN);

C1:=BFIN-BMAX=0 AND REF(BFIN,1)-REF(BMIN,1)=0;

C2:=BFIN-BMIN=0 AND REF(BFIN,1)-REF(BMAX,1)=0;

BFINAL:=IF(C1 OR C2,(BMAX+BMIN)/2,BFIN),NODRAW;

HC:TOWERC-REF(TOWERC,1),NODRAW;

KC:HC-REF(HC,1),NODRAW;

绿柱变大:IF(HC<=0 AND KC<=0,BFINAL,DRAWNULL),POINTDOT,COLORGREEN,LINETHICK3;

绿柱变小:IF(HC<0 AND KC>0,BFINAL,DRAWNULL),POINTDOT,COLORMAGENTA,LINETHICK3;

红柱变大:IF(HC>0 AND KC>=0,BFINAL,DRAWNULL),POINTDOT,COLORRED,LINETHICK3;

红柱变小:IF(HC>0 AND KC<0,BFINAL,DRAWNULL),POINTDOT,COLORLIBLUE,LINETHICK3;

DRAWTEXT_FIX(ISLASTBAR AND HC<=0 AND KC<0,1,0,1,'绿柱变大 '),COLORWHITE;

DRAWTEXT_FIX(ISLASTBAR AND HC<=0 AND KC>0,1,0,1,'绿柱变小 '),COLORWHITE;

DRAWTEXT_FIX(ISLASTBAR AND HC>=0 AND KC>0,1,0,1,'红柱变大 '),COLORWHITE;

DRAWTEXT_FIX(ISLASTBAR AND HC>=0 AND KC<0,1,0,1,'红柱变小 '),COLORWHITE;

SEL:=REF(KC,4)>0 AND REF(KC,3)>0 AND REF(KC,2)<0 AND REF(KC,1)<0 AND KC<0;

BU:=REF(KC,4)<0 AND REF(KC,3)<0 AND REF(KC,2)>0 AND REF(KC,1)>0 AND KC>0;

DRAWTEXT(SEL,MAX(TOWERC,REF(TOWERC,1)),'降'),COLORWHITE;

DRAWTEXT(BU,MIN(TOWERC,REF(TOWERC,1)),'升'),COLORWHITE;

 


原理解析:
N赋值:3
A1赋值:FORCAST(收盘价的5日指数移动平均,6)
A2赋值:FORCAST(收盘价的8日指数移动平均,6)
A3赋值:FORCAST(收盘价的11日指数移动平均,6)
A4赋值:FORCAST(收盘价的14日指数移动平均,6)
A5赋值:FORCAST(收盘价的17日指数移动平均,6)
B赋值:A1+A2+A3+A4-4*A5
TOWERC赋值:B的2日指数移动平均
B1:FORCAST(B的3日指数移动平均,6),POINTDOT,COLORGREEN
B2:FORCAST(B的4日指数移动平均,6),POINTDOT,COLORGREEN
B3:FORCAST(B的5日指数移动平均,6),POINTDOT,COLORGREEN
B4:FORCAST(B的6日指数移动平均,6),POINTDOT,COLORGREEN
B5:FORCAST(B的7日指数移动平均,6),POINTDOT,COLORGREEN
B6:FORCAST(B的8日指数移动平均,6),POINTDOT,COLORGREEN
B7:FORCAST(B的9日指数移动平均,6),POINTDOT,COLORGREEN
B8:FORCAST(B的10日指数移动平均,6),POINTDOT,COLORGREEN
B9:FORCAST(B的11日指数移动平均,6),POINTDOT,COLORGREEN
B10:FORCAST(B的12日指数移动平均,6),POINTDOT,COLORGREEN
B11:FORCAST(B的13日指数移动平均,6),POINTDOT,COLORGREEN
B12:FORCAST(B的14日指数移动平均,6),POINTDOT,COLORGREEN
B13:=FORCAST(B的15日指数移动平均,6),POINTDOT,COLORGREEN
B14:FORCAST(B的16日指数移动平均,6),POINTDOT,COLORGREEN
B15:FORCAST(B的17日指数移动平均,6),POINTDOT,COLORGREEN
STICKLINE(TOWERC>=1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),画红色
STICKLINE(TOWERC<1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),COLORGREEN
STICKLINE(TOWERC>=1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),画红色
STICKLINE(TOWERC>=1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),画红色
STICKLINE(TOWERC>=1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),画红色
STICKLINE(TOWERC<1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),COLORGREEN
STICKLINE(TOWERC<1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),COLORGREEN
STICKLINE(TOWERC<1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),COLORGREEN
STICKLINE(TOWERC<1日前的TOWERC,TOWERC,1日前的TOWERC,N,0),COLORGREEN
BSUM:=(B1+B2+B3+B4+B5+B6+B7+B8+B9+B10+B11+B12+B13+B14+B15)/15
BMAX1:=B1和B2较大值,B3和B4较大值)
BMAX2:=B5和B6较大值,B7和B8较大值)
BMAX3:=B9和B10较大值,B11和B12较大值)
BMAX4:=B13和B14较大值,B15)
BMAX:=B1和BMAX2较大值,B3和BMAX4较大值)
BMIN1:=B1和B2的较小值,B3和B4的较小值)
BMIN2:=B5和B6的较小值,B7和B8的较小值)
BMIN3:=B9和B10的较小值,B11和B12的较小值)
BMIN4:=B13和B14的较小值,B15)
BMIN赋值:B1和BMIN2的较小值,B3和BMIN4的较小值)
BAX:=BMAX-(TOWERC+1日前的TOWERC的绝对值/2)
BAN赋值:BMIN-(TOWERC+1日前的TOWERC的绝对值/2)
如果BAX>BAN返回BMAX否则返回BMIN
C1赋值:BFIN-BMAX=0 AND 1日前的BFIN-1日前的BMIN=0
C2赋值:BFIN-BMIN=0 AND 1日前的BFIN-1日前的BMAX=0
BFINAL:=IF(C1 OR C2,(BMAX+BMIN)/2,BFIN),NODRAW
输出HC:TOWERC-1日前的TOWERC,NODRAW
输出KC:HC-1日前的HC,NODRAW
如果HC<=0 AND KC<=0返回BFINAL否则返回DRAWNULL
如果HC<0 AND KC>0返回BFINAL否则返回DRAWNULL
如果HC>0 AND KC>=0返回BFINAL否则返回DRAWNULL
如果HC>0 AND KC<0返回BFINAL否则返回DRAWNULL
当满足条件ISLASTBAR AND HC<=0 AND KC<0时,在横轴1纵轴0位置书写文字
当满足条件ISLASTBAR AND HC<=0 AND KC>0时,在横轴1纵轴0位置书写文字
当满足条件ISLASTBAR AND HC>=0 AND KC>0时,在横轴1纵轴0位置书写文字
当满足条件ISLASTBAR AND HC>=0 AND KC<0时,在横轴1纵轴0位置书写文字
SEL赋值:4日前的KC>0 AND 3日前的KC>0 AND 2日前的KC<0 AND 1日前的KC<0 AND KC<0
BU:=4日前的KC<0 AND 3日前的KC<0 AND 2日前的KC>0 AND 1日前的KC>0 AND KC>0
DRAWTEXT(SEL,TOWERC和1日前的TOWERC较大值,'降'),画白色
DRAWTEXT(BU,TOWERC和1日前的TOWERC的较小值,'升'),画白色
 

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