未来函数检测结果如下:
该公式包含未来函数:BACKSET
MA20:=MA(C,20),COLORMAGENTA,LINETHICK2;
AA:MA(C,20),COLORGREEN,LINETHICK2;
MM:MA(C,20),COLORGREEN,LINETHICK2;
IF(C>AA,MM,DRAWNULL),COLORRED,LINETHICK2;
IF(C<AA,MM,DRAWNULL),COLORGREEN,LINETHICK2;
BTMA20:=(CLOSE>MA20) AND (REF(CLOSE,1)>REF(MA20,1)) AND (REF(CLOSE,2)>REF(MA20,2)) AND (REF(CLOSE,3)>REF(MA20,3));
JXX:=BARSLASTCOUNT(C<MA20);
JXX1:=BACKSET((JXX>=4)*JXX,JXX);
JXS:=BARSLASTCOUNT(C>MA20);
JXS1:=BACKSET((JXS>=4)*JXS,JXS);
KGC:=BARSLASTCOUNT(NOT(JXX1 OR JXS1));
JXL:=BARSLASTCOUNT(REF(JXX1>0,KGC));
JXH:=BARSLASTCOUNT(REF(JXS1>0,KGC));
XWZ:=FILTERX(LLV(L,JXL)=L,JXL);
SWZ:=FILTERX(HHV(H,JXH)=H,JXH);
{DRAWLINE(XWZ,L,SWZ,H,0),COLOR00FFFF;在高低点连斜线}
高:=REF(H,BARSLAST(SWZ));
低:=REF(L,BARSLAST(XWZ));
BB:=BARSLAST(JXL=1);{上次JXL等于1距今天数}
顶点2:=REF(高,BARSLAST(JXL)),COLORGREEN;
低点2:=REF(低,BB),COLORGREEN;{上次等于1对应的低价。或用AA:REF(低,BB);}
H23:=((顶点2-低点2)*0.236+低点2);
H38:=((顶点2-低点2)*0.382+低点2);
H中:=((顶点2-低点2)*0.5+低点2);
H61:=((顶点2-低点2)*0.618+低点2);
H80:=((顶点2-低点2)*0.809+低点2);
H138:=((顶点2-低点2)*1.382+低点2);
H161:=((顶点2-低点2)*1.618+低点2);
H261:=((顶点2-低点2)*2.618+低点2);
顶点A:REFDATE(顶点2,DATE),COLORGREEN,LINETHICK2;
低点A:REFDATE(低点2,DATE),COLORGREEN,LINETHICK2;
B38:REFDATE(H38,DATE),COLORGREEN,DOTLINE;
C50:REFDATE(H中,DATE),COLORGREEN,DOTLINE;
D61:REFDATE(H61,DATE),COLORGREEN,DOTLINE;
DRAWTEXT(ISLASTBAR,顶点A,'1.000'),COLORGREEN;
DRAWTEXT(ISLASTBAR,B38,'0.382'),COLORGREEN;
DRAWTEXT(ISLASTBAR,C50,'0.50'),COLORGREEN;
DRAWTEXT(ISLASTBAR,D61,'0.618'),COLORGREEN;
DRAWTEXT(ISLASTBAR,低点A,'0.000'),COLORGREEN;
STICKLINE(CLOSE>=OPEN,CLOSE,OPEN,2.5,0),COLORRED;
STICKLINE(CLOSE>=OPEN,CLOSE,OPEN,0.1,0),COLORCC66FF;
STICKLINE(CLOSE<OPEN,CLOSE,OPEN,2.5,0),COLORFF9900;
STICKLINE(CLOSE<OPEN,CLOSE,OPEN,0.1,0),COLORFFCC00;
原理解析:
MA20赋值:C的20日简单移动平均,画洋红色, 线宽为2
输出AA:C的20日简单移动平均,画绿色, 线宽为2
输出MM:C的20日简单移动平均,画绿色, 线宽为2
如果C>AA返回MM否则返回DRAWNULL
如果C
JXX赋值:BARSLASTCOUNT(C
JXS赋值:BARSLASTCOUNT(C>MA20)
JXS1:=BACKSET((JXS>=4)*JXS,JXS)
KGC赋值:BARSLASTCOUNT(NOT(JXX1 OR JXS1))
JXL赋值:BARSLASTCOUNT(KGC日前的JXX1>0)
JXH赋值:BARSLASTCOUNT(KGC日前的JXS1>0)
XWZ赋值:FILTERX(JXL日内L最低值=L,JXL)
SWZ赋值:FILTERX(JXH日内H最高值=H,JXH)
{DRAWLINE(XWZ,L,SWZ,H,0),COLOR00FFFF
在高低点连斜线}
高赋值:REF(H,上次SWZ距今天数)
低赋值:REF(L,上次XWZ距今天数)
BB赋值:上次JXL=1距今天数
{上次JXL等于1距今天数}
顶点2:=REF(高,上次JXL距今天数),画绿色
低点2:=BB日前的低,画绿色
{上次等于1对应的低价。或用输出AA:BB日前的低
}
H23赋值:((顶点2-低点2)*0.236+低点2)
H38赋值:((顶点2-低点2)*0.382+低点2)
H中赋值:((顶点2-低点2)*0.5+低点2)
H61赋值:((顶点2-低点2)*0.618+低点2)
H80赋值:((顶点2-低点2)*0.809+低点2)
H138赋值:((顶点2-低点2)*1.382+低点2)
H161赋值:((顶点2-低点2)*1.618+低点2)
H261赋值:((顶点2-低点2)*2.618+低点2)
输出顶点A:REFDATE(顶点2,DATE),画绿色, 线宽为2
低点A:REFDATE(低点2,DATE),画绿色, 线宽为2
输出B38:REFDATE(H38,DATE),画绿色,DOTLINE
输出C50:REFDATE(H中,DATE),画绿色,DOTLINE
输出D61:REFDATE(H61,DATE),画绿色,DOTLINE
当满足条件ISLASTBAR时,在顶点A和'1.000'位置书写文字
当满足条件ISLASTBAR时,在B38和'0.382'位置书写文字
当满足条件ISLASTBAR时,在C50和'0.50'位置书写文字
当满足条件ISLASTBAR时,在D61和'0.618'位置书写文字
当满足条件ISLASTBAR时,在低点A和'0.000'位置书写文字
当满足条件收盘价>=开盘价时,在收盘价和开盘价之间画柱状线
当满足条件收盘价>=开盘价时,在收盘价和开盘价之间画柱状线
当满足条件收盘价<开盘价时,在收盘价和开盘价之间画柱状线
当满足条件收盘价<开盘价时,在收盘价和开盘价之间画柱状线