这样处理下K线,看下是否符合思路:
粉色调整处理K线的标准,超过HHH或者LLL的K线自动变成最近一个不超过HHH或者LLL的K线。
然后后续您编写指标使用H1/O1/C1/L1作为高开低收
HH:=REFX1(HHV(H,100),50);
LL:=REFX1(LLV(L,100),50);
N1:=2;
N2:=2;
HHH:HH*(1-0.001*N1);
LLL:LL*(1+0.001*N2);
Y:=H>HH*(1-0.001*N1) || L<LL*(1+0.001*N2);
H1:VALUEWHEN(Y=0,H);
O1:VALUEWHEN(Y=0,O);
L1:VALUEWHEN(Y=0,L);
C1:VALUEWHEN(Y=0,C);
DRAWKLINE1(H1,O1,L1,C1);
2、HH:=REFX1(HHV(H,100),50);
你解释一下这句子意思,感觉自己没完全明白。
REFX(X,N) 当前的k线数不足N根,返回无效值
REFX1(X,N)当前的k线数不足N根,按照实际的根数计算,取最后一根的值
您加载REFX(C,10);和REFX1(C,10);在最新K线看下数值就明白了。
但我们留意这两个K线的组合形态本质上是一样的,即以阴线开头为下跌开始的,并且是连续性下跌的,即使偶尔出现小反弹性阳线,也是阴线远多阳线的。当它反转上破下跌的第一根阴线最高点时,我认行情就是反转的,这个K线形态其实是符合我思路的,但这个K线形态不知道怎么编写?也不知道怎么去表达量化,反正用眼看它就是符合我的思路K线形态的,看老师仔细观察左右两图的K线组合能不能帮我编出来?我看到它的特征是下跌开始都是两三根以上阴线开头的。


CON1:=EVERY(MA20<MA40&&MA40<MA60&&MA60<MA120&&MA20<=REF(MA20,1)&&MA40<=REF(MA40,1)&&MA60<=REF(MA60,1)&&MA120<=REF(MA120,1),5);
CON2:=EXIST(CON1,6)&&NOT(MA20<MA40&&MA40<MA60&&MA60<MA120&&MA20<=REF(MA20,1)&&MA40<=REF(MA40,1)&&MA60<=REF(MA60,1)&&MA120<=REF(MA120,1))&&C>MAX1(MA5,MA10,MA20,MA40,MA60,MA120);
DRAWTEXT(CROSS(CON2,0.5),L,'反'),VALIGN0,FONTSIZE15;
以上是原均线形态公式。
我想的是将K线形态也能写出来,即无论均线形态成立或者K线形态成立都算满足条件发出信号。
MA10:MA(C,10);
MA20:MA(C,20);
MA40:MA(C,40);
MA60:MA(C,60);
MA120:MA(C,120);
CON1:=EVERY(MA20<MA40&&MA40<MA60&&MA60<MA120&&MA20<=REF(MA20,1)&&MA40<=REF(MA40,1)&&MA60<=REF(MA60,1)&&MA120<=REF(MA120,1),5);
CON2:=EXIST(CON1,6)&&NOT(MA20<MA40&&MA40<MA60&&MA60<MA120&&MA20<=REF(MA20,1)&&MA40<=REF(MA40,1)&&MA60<=REF(MA60,1)&&MA120<=REF(MA120,1))&&C>MAX1(MA5,MA10,MA20,MA40,MA60,MA120);
CON3:=((COUNT(ISDOWN||ISEQUAL,10)/10)>=0.7||COUNT(ISDOWN,5)>=4) && L<LV(L,50);
DRAWTEXT(CROSS(CON2||CON3,0.5),L,'反'),VALIGN0,FONTSIZE15;
CON3:=((COUNT(ISDOWN||ISEQUAL,10)/10)>=0.7||COUNT(ISDOWN,5)>=4) && L<LV(L,50);