//日内强度
AA:=(2*C-H-L)/(H-L);
BB:=AA*VOL;
R:=SUM(BB,20)/SUM(VOL,20);
//中期方向线
MA1:=EMA(CLOSE,12);
MA2:=EMA(CLOSE,47);
B11:=(MA1-MA2);
//穿叉短周期
N:=34;
VAR1:=LLV(CLOSE,10);//10日最低
VAR2:=HHV(CLOSE,10);//10日最大
F: EMA((CLOSE-VAR1)/(VAR2-VAR1)*100,10), COLORGREEN;//价差
S: EMA(0.667*REF(F,1)+0.333*F,2) , COLORYELLOW;
FS:=(F+S)/2;
//穿叉长周期
VAR3:=(2*CLOSE+HHV(CLOSE,2)+LLV(CLOSE,2))/4;//化解
VAR4:=LLV(CLOSE,N);//34日最低
VARA:=HHV(CLOSE,N);
VARB:=EMA((VAR3-VAR4)/(VARA-VAR4)*100,13);//价差
VARC:=EMA(0.667*REF(VARB,1)+0.333*VARB,2);
FJ:=VARB-VARC;
BC:(VARB+VARC)/2;
//XDIKK1中期方向线换向
//3分钟
A3:=STKINDI('','XDIK4.A',0,17,0);
//10分钟
A10:=STKINDI('','XDIK4.A',0,18,0);;
//30分钟
A30:=STKINDI('','XDIK4.A',0,4,0);;
//1小时
AHOUR:=STKINDI('','XDIK4.A',0,5,0);;
//2小时
A240:=STKINDI('','XDIK4.A',0,24,2);;
//日
ADAY:=STKINDI('','XDIK4.A',0,6,0);
//日线颜色
D5:=IFELSE(ADAY>=0 , 1,0);
//2小时颜色
D6:=IFELSE(A240>=0 , 1,0);
//1小时
D7:=IFELSE(AHOUR>=0 , 1,0);
//30分钟
D8:=IFELSE(A30>=0 , 1,0);
//10分钟
D9:=IFELSE(A10>=0 , 1,0);
//3分钟
D10:=IFELSE(A3>=0 , 1,0);
//CCD短周期CC交叉
//3分钟
B3:=STKINDI('','CCD1.B',0,17,0);
//10分钟
B10:=STKINDI('','CCD1.B',0,18,0);;
//30分钟
B30:=STKINDI('','CCD1.B',0,4,0);;
//1小时
BHOUR:=STKINDI('','CCD1.B',0,5,0);;
//2小时
B240:=STKINDI('','CCD1.B',0,24,2);;
//日
BDAY:=STKINDI('','CCD1.B',0,6,0);;
//日线颜色
D11:=IFELSE(BDAY>=0 , 1,0);
//2小时颜色
D12:=IFELSE(B240>=0 , 1,0);
//1小时
D13:=IFELSE(BHOUR>=0 , 1,0);
//30分钟
D14:=IFELSE(B30>=0 , 1,0);
//10分钟
D15:=IFELSE(B10>=0 , 1,0);
//3分钟
D16:=IFELSE(B3>=0 , 1,0);
//XRVKK
//3分钟
E3:=STKINDI('','XRVK1.E',0,17,0);
//10分钟
E10:=STKINDI('','XRVK1.E',0,18,0);;
//30分钟
E30:=STKINDI('','XRVK1.E',0,4,0);;
//1小时
EHOUR:=STKINDI('','XRVK1.E',0,5,0);;
//2小时
E240:=STKINDI('','XRVK1.E',0,24,2);;
//日
EDAY:=STKINDI('','XRVK1.E',0,6,0);;
//日线颜色
D17:=IFELSE(EDAY>=0 , 1,0);
//2小时颜色
D18:=IFELSE(E240>=0 , 1,0);
//1小时
D19:=IFELSE(EHOUR>=0 , 1,0);
//30分钟
D20:=IFELSE(E30>=0 , 1,0);
//10分钟
D21:=IFELSE(E10>=0 , 1,0);
//3分钟
D22:=IFELSE(E3>=0 , 1,0);
//3分钟中期方向线变色
F3:=STKINDI('','XDIK5.F',0,17,0);
//10分钟
F10:=STKINDI('','XDIK5.F',0,18,0);;
//30分钟
F30:=STKINDI('','XDIK5.F',0,4,0);;
//1小时
FHOUR:=STKINDI('','XDIK5.F',0,5,0);;
//2小时
F240:=STKINDI('','XDIK5.F',0,24,2);;
FDAY:=STKINDI('','XDIK5.F',0,6,0);;
//日线颜色
D23:=IFELSE(FDAY>=0 , 1,0);
//2小时颜色
D24:=IFELSE(F240>=0 , 1,0);
//1小时
D25:=IFELSE(FHOUR>=0 , 1,0);
//30分钟
D26:=IFELSE(F30>=0 , 1,0);
//10分钟
D27:=IFELSE(F10>=0 , 1,0);
//3分钟
D28:=IFELSE(F3>=0 , 1,0);
D1:=IFELSE(R>REF(R,1), 1,0);
D2:=IFELSE(B11>REF(B11,1), 1,0);
D3:=IFELSE(FS>REF(FS,1), 1,0);
D4:=IFELSE(BC>REF(BC,1), 1,0);
DK:=D1+D2+D3+D4+D5+D6+D7+D8+D9+D10+D11+D12+D13+D14+D15+D16+D17+D18+D19+D20+D21+D22+D23+D24+D25+D26+D27+D28;
DK1:=D11+D12+D13+D17+D18+D19+D23+D24+D25;
TOP: 90,COLORGREEN,LINETHICK1;
BOT2:12,COLORRED,LINETHICK1;
LIU2:80,COLORGREEN,LINETHICK2;
SI:20,COLORRED,LINETHICK2;
SI2:50,COLOryellow,LINETHICK3;
STICKLINE(FJ>0,VARB,VARC,8,0,colorred);
STICKLINE(FJ<0,VARB,VARC,8,0,colorgreen);
DRAWICON(DK1>8&&CROSS(F,S)&&F<50&&S<50&&BC<50 ,50 ,1 );
上面那个引用的太多了,我简化一下如下:
//穿叉短周期
N:=34;
VAR1:=LLV(CLOSE,10);//10日最低
VAR2:=HHV(CLOSE,10);//10日最大
F: EMA((CLOSE-VAR1)/(VAR2-VAR1)*100,10), COLORGREEN;//价差
S: EMA(0.667*REF(F,1)+0.333*F,2) , COLORYELLOW;
FS:=(F+S)/2;
//穿叉长周期
VAR3:=(2*CLOSE+HHV(CLOSE,2)+LLV(CLOSE,2))/4;//化解
VAR4:=LLV(CLOSE,N);//34日最低
VARA:=HHV(CLOSE,N);
VARB:=EMA((VAR3-VAR4)/(VARA-VAR4)*100,13);//价差
VARC:=EMA(0.667*REF(VARB,1)+0.333*VARB,2);
FJ:=VARB-VARC;
BC:(VARB+VARC)/2;
//CCC短周期交叉
//1小时
BHOUR:=STKINDI('','CCD1.B',0,5,0);
//2小时
B240:=STKINDI('','CCD1.B',0,24,2);
//日
BDAY:=STKINDI('','CCD1.B',0,6,0);
//日线颜色
D11:=IFELSE(BDAY>=0 , 1,0);
//2小时颜色
D12:=IFELSE(B240>=0 , 1,0);
//1小时
D13:=IFELSE(BHOUR>=0 , 1,0);
DK1:=D11+D12+D13;
STICKLINE(FJ>0,VARB,VARC,8,0,colorred);
STICKLINE(FJ<0,VARB,VARC,8,0,colorgreen);
TOP: 90,COLORGREEN,LINETHICK1;
BOT2:12,COLORRED,LINETHICK1;
LIU2:80,COLORGREEN,LINETHICK2;
SI:20,COLORRED,LINETHICK2;
SI2:50,COLOryellow,LINETHICK3;
STICKLINE(FJ>0,VARB,VARC,8,0,colorred);
STICKLINE(FJ<0,VARB,VARC,8,0,colorgreen);
DRAWICON(DK1=3&&CROSS(F,S)&&F<50&&S<50&&BC<50 ,50 ,1 );
KD:=DK1=3&&CROSS(F,S)&&F<50&&S<50&&BC<50 AND HOLDING=0 ; //开多条件
PD:=(C-ENTERPRICE)>10*MINDIFF; //平多条件
SELL(PD and HOLDING>0,HOLDING,THISCLOSE); //平多
BUY(KD and HOLDING=0,1,THISCLOSE);//开多1手
引用的CCD1如下:
N:=34;
VAR1:=LLV(CLOSE,10);//10日最低
VAR2:=HHV(CLOSE,10);//10日最大
F: EMA((CLOSE-VAR1)/(VAR2-VAR1)*100,10), COLORGREEN;//价差
S: EMA(0.667*REF(F,1)+0.333*F,2) , COLORYELLOW;
B:REF(F,1)-REF(S,1);
带信号图标的公式如下:
//穿叉短周期
N:=34;
VAR1:=LLV(CLOSE,10);//10日最低
VAR2:=HHV(CLOSE,10);//10日最大
F: EMA((CLOSE-VAR1)/(VAR2-VAR1)*100,10), COLORGREEN;//价差
S: EMA(0.667*REF(F,1)+0.333*F,2) , COLORYELLOW;
FS:=(F+S)/2;
//穿叉长周期
VAR3:=(2*CLOSE+HHV(CLOSE,2)+LLV(CLOSE,2))/4;//化解
VAR4:=LLV(CLOSE,N);//34日最低
VARA:=HHV(CLOSE,N);
VARB:=EMA((VAR3-VAR4)/(VARA-VAR4)*100,13);//价差
VARC:=EMA(0.667*REF(VARB,1)+0.333*VARB,2);
FJ:=VARB-VARC;
BC:(VARB+VARC)/2;
//CCC短周期交叉
//1小时
BHOUR:=STKINDI('','CCD1.B',0,5,0);
//2小时
B240:=STKINDI('','CCD1.B',0,24,2);
//日
BDAY:=STKINDI('','CCD1.B',0,6,0);
//日线颜色
D11:=IFELSE(BDAY>=0 , 1,0);
//2小时颜色
D12:=IFELSE(B240>=0 , 1,0);
//1小时
D13:=IFELSE(BHOUR>=0 , 1,0);
DK1:=D11+D12+D13;
STICKLINE(FJ>0,VARB,VARC,8,0,colorred);
STICKLINE(FJ<0,VARB,VARC,8,0,colorgreen);
TOP: 90,COLORGREEN,LINETHICK1;
BOT2:12,COLORRED,LINETHICK1;
LIU2:80,COLORGREEN,LINETHICK2;
SI:20,COLORRED,LINETHICK2;
SI2:50,COLOryellow,LINETHICK3;
STICKLINE(FJ>0,VARB,VARC,8,0,colorred);
STICKLINE(FJ<0,VARB,VARC,8,0,colorgreen);
DRAWICON(DK1=3&&CROSS(F,S)&&F<50&&S<50&&BC<50 ,50 ,1 );