乐于分享
好东西不私藏

【三步擒龙】指标源码分享

【三步擒龙】指标源码分享
个公式主要是用来抓住量价配合、刚刚突破盘整区间且有主力资金支撑的个股。
幅图主要是三行:
  • 第一行:趋势条件,用来抓上升趋势个股
  • 第二行:强度条件,用来抓股价大于5日线等条件
  • 第三行:活跃度条件,用来抓成交量满足一定范围的个股

选股代码:

N:=8;

涨幅:=(H-REF(C,1))/(REF(C,1))*100;

跌幅:=(0-(REF(C,1)-L)/(REF(C,1)))*100;

振幅:=涨幅+(-跌幅);

ZF:=(C-REF(C,1))/REF(C,1)*100;

MAV:=(C*2+H+L)/4;

SK:=EMA(MAV,13) - EMA(MAV,34);

SD:=EMA(SK,5);

DFZL:=(2*(SK-SD))*3.8,COLORRED;

LTSH:=100-100*(HHV(HIGH,5*N)-CLOSE)/(HHV(HIGH,5*N) -LLV(LOW,5*N)),COLORFFFFFF;

{三重滤网:=C>"三重滤网1.M7",NODRAW;}

BS:=CLOSE>=SAR(7,3,66);

QD01:=C>=EMA(C,5);

QD02:=DFZL>=0.07 AND DFZL > REF(DFZL,1);

QD03:=(LTSH>=50 AND COUNT(LTSH >REF(LTSH,1),3)>=2) OR LTSH =90;

LZCQD:=QD01 AND QD02 AND QD03;

HYD01:=100*VOL/(FINANCE(7)/100)COLORYELLOW;

HYD02:=VOL/MA(REF(VOL,1),5) ;

LZCHYD:=BETWEEN(HYD01,5,25) OR BETWEEN(HYD02,2.5,15);

三步擒龙:=(BS+LZCQD+LZCHYD),COLORYELLOW;

擒龙选股:=三步擒龙=3 AND REF(三步擒龙=1,1) AND BS;

火线:=三步擒龙=3 AND BS AND (ZF>=4.32 OR 振幅>=7.0);

X1:=NOT(INBLOCK('ST板块'));

X2:=NOT(CODELIKE('4'));

X3:=NOT(CODELIKE('8'));

X4:=NOT(CODELIKE('688'));

X5:=FINANCE(42)>60;

XG:擒龙选股 AND 火线 AND X1 AND X2 AND X3 AND X4 AND X5;

幅图代码:

x1:=8;

x2:=(H-REF(C,1))/(REF(C,1))*100;

x3:=(0-(REF(C,1)-L)/(REF(C,1)))*100;

x4:=x2+(-x3),NODRAW;

x5:=(C-REF(C,1))/REF(C,1)*100;

x6:=(C*2+H+L)/4;

x7:=EMA(x6,13) - EMA(x6,34);

x8:=EMA(x7,5);

x9:=(2*(x7-x8))*3.8,COLORRED;

x10:=100-100*(HHV(HIGH,5*x1)-CLOSE)/(HHV(HIGH,5*x1) -LLV(LOW,5*x1)),COLORFFFFFF;

{x11:=C>"三重滤网1.M7",NODRAW;}

x12:=CLOSE>=SAR(7,3,66),NODRAW;

x13:=C>=EMA(C,5),NODRAW;

x14:=x9>=0.07 AND x9 > REF(x9,1);

x15:=(x10>=50 AND COUNT(x10 >REF(x10,1),3)>=2) OR x10 =90;

x16:=x13 AND x14 AND x15;

x17:=100*VOL/(FINANCE(7)/100)COLORYELLOW,NODRAW;

x18:=VOL/MA(REF(VOL,1),5) ;

x19:=BETWEEN(x17,5,25) OR BETWEEN(x18,2.5,15);

x20:=(x12+x16+x19),COLORYELLOW,NODRAW;

x21:x20=3 AND REF(x20=1,1) AND x12,COLORYELLOW,NODRAW;

x22:x20=3 AND x12 AND (x5>=4.32 OR x4>=7.0),COLORRED,NODRAW;

STICKLINE(x21,0,8,3,0),COLORYELLOW;

x23:x21 AND x22,COLORMAGENTA,NODRAW;

STICKLINE(x23,0,8,3,0),COLORMAGENTA;

STICKLINE(x12=0,6,8,2,1),COLOR666666;

STICKLINE(x12=1,6,8,2,0),COLORRED;

STICKLINE(x16=0, 3,5,2,1),COLOR666666;

STICKLINE(x16=1 ,3,5,2,0),COLOR0033CC;

STICKLINE(x19=0,0,2,2,1),COLOR666666;

STICKLINE(x19=1,0,2,2,0),COLOR0099FF;

DRAWTEXT(x20=3,10,IF(x12,'③','3')),COLORWHITE;

DRAWTEXT(x20=3  AND x12,10,'③'),COLORRED;

DRAWTEXT(x20=3 AND REF(x20=1,1) AND x12,10,'③'),COLORMAGENTA;

DRAWTEXT(x20=2,10,IF(x12,'②','2')),COLORWHITE;

DRAWTEXT(x20=2  AND x12,10,'②'),COLORRED;

DRAWTEXT(x20>=2 AND REF(x12=0,1) AND x12=1,10,'②'),COLORMAGENTA;

DRAWTEXT(x20=1,10,IF(x20=1 AND x12,'①','1')),COLORWHITE;

DRAWTEXT(x20=1 AND x12,10,'①'),COLORRED;

{DRAWTEXT(BARSTATUS=2,7,'        趋势'),COLORWHITE;

DRAWTEXT(BARSTATUS=2,4,'        强度'),COLORWHITE;

DRAWTEXT(BARSTATUS=2,1,'        活跃'),COLORWHITE;}

NOTEXT:-2,DOTLINE,COLORBLACK;

DRAWICON(x22,0,30);

{伏击活跃} {副图指标}

x24:=((V * 100) / CAPITAL);

x25:=MA(x24,4);

x26:=MA(x24,9);

x27:=MA(x24,17);

x28:=MA(x24,34);

x29:=((((x25 + x26) + x27) + x28) / 4);

x30:=((x25 - x29) / 10);

x31:=((x26 - x29) / 10);

x32:=((x27 - x29) / 10);

x33:=((x28 - x29) / 10);

x34:=3;

x35:=(BARSCOUNT(C) + 1);

x36:=MA(CLOSE,5);

x37:=MA(CLOSE,10);

x38:=MA(CLOSE,20);

x39:=EMA(CLOSE,60);

x40:=IF((x35 > 100),x39,x38);

x41:=((x37 - x39) / x39);

x42:=((((CLOSE / REF(CLOSE,20)) < 1.20) && (x37 > REF(x37,1))) && (CLOSE < (LLV(L,80) * 1.5)));

x43:=((CLOSE - x37) / x37);

x44:=((CLOSE - x38) / x38);

x45:=((CLOSE - x39) / x39);

x46:=((0.01 * AMOUNT) / VOL);

x47:=(VOL / CAPITAL);

x48:=MA(x47,5);

x49:=MA(x47,20);

x50:=EMA(x47,60);

x51:=((CLOSE / REF(CLOSE,1)) > 1.060);

x52:=((((CLOSE / REF(CLOSE,1)) > 1.099) && (CLOSE = HIGH)) && (L < C));

x53:=(((CLOSE / REF(CLOSE,1)) > 1.099) && (LOW = HIGH));

x54:=((((((HIGH / REF(CLOSE,1)) > 1.099) || ((CLOSE / REF(CLOSE,1)) > 1.09)) && ((CLOSE / REF(CLOSE,1)) > 1.065)) && ((CLOSE / REF(CLOSE,1)) < 1.0992)) && (CLOSE > x46));

x55:=(((((CLOSE / REF(CLOSE,1)) > 1.050) && ((x47 > REF(x47,1)) || (x47 > MAX(x48,x50)))) && (CLOSE > x46)) && (x43 < 0.12));

x56:=((x52 || x54) || x55);

x57:=BARSLAST(x56);

x58:=REF(x46,x57);

x59:=((REF(LOW,1) < MAX(REF(x37,1),REF(x38,1))) && (CLOSE > x37));

x60:=INDEXC;

x61:=((INDEXC - MA(INDEXC,10)) / MA(INDEXC,10));

x62:=(3 * (x43 - x61));

x63:=((x62 > 0) || ((x62 > -(0.1)) && (x62 > REF(x62,1))));

x64:=SUM(x62,10);

x65:=10;

x66:=3;

x67:=((((MA(CLOSE,3) + MA(CLOSE,6)) + MA(CLOSE,12)) + MA(CLOSE,24)) / 4);

x68:=(x67 + (x66 * STD(x67,x65)));

x69:=(x67 - (x66 * STD(x67,x65)));

x70:=((x68 - x69) / 10);

x71:=(((x70 < 0.40) && (LLV(x70,5) < (3 * LLV(x70,100)))) || (x70 < 0.20));

x72:=((((CLOSE / REF(CLOSE,1)) > 1.03) && ((CLOSE / REF(CLOSE,1)) < 1.110)) && ((CLOSE / x37) < 1.13));

x73:=((ACTINVOL - ACTOUTVOL) / CAPITAL);

x74:=MIN(COUNT(TRADEOUTNUM,0),30);

x75:=(x47 < MAX(x48,x49));

x76:=(COUNT(x75,7) >= 4);

x77:=(((((x47 > (1.35 * REF(x47,1))) && (x47 < (7 * REF(x47,1)))) && (x47 > 1.5)) && (x47 > x48)) && REF(x76,1));

x78:=((((x59 && x77) && x72) && x63) && x71);

x79:=(0.6 * ((((x37 > x38) || (x37 > REF(x37,1))) || (x46 > x37)) && (x62 > -(0.02))));

x80:=(0.5 * ((((COUNT(x51,60) >= 6) || (COUNT(x52,60) >= 2)) || (COUNT((x52 || x55),30) >= 1)) || (COUNT((x62 > 0.1),120) > 20)));

x81:=(0.2 * (((((x47 > MAX(x50,x48)) || (x48 > x50)) || x52) || (EXIST((x52 || x55),3) && (x47 > MIN(x50,x48)))) && (((CLOSE > x37) || (x62 > 0)) || ((x48 >= REF(x48,1)) && (CLOSE > REF(CLOSE,1))))));

x82:=(0.5 * ((x81 || x79) && x80));

x83:=((((((x52 || x55) && x82) && (x62 > 0)) && (x41 < 0.23)) && (x45 < 0.25)) && x42);

x84:=BARSLAST(x83);

x85:=(x82 && EVERY(x82,(x84 + 1))),COLORRED;

x86:=COUNT(x83,0);

x87:=((x83 && x85) && (COUNT(x83,0) = 1));

x88:=(((x83 && x85) && REF((x85 <> 1),1)) && (COUNT(x83,0) > 1));

x89:=(((x83 && x85) && REF((x82 = 0),1)) && (COUNT(x83,0) <= 1));

x90:IF((COUNT(x83,0) > 1),x88,(x87 || (x89 && x42))),NODRAW,COLORFF7F00;

x91:=BARSLAST(x88);

x92:=REF(x46,x91);

x93:=REF(OPEN,x91);

x94:=REF(LOW,x91);

x95:=REF(x37,x91);

x96:=(x92 * 0.95);

x97:=IF((x93 < (x92 * 0.98)),MAX(x94,x96),x96);

x98:=(0.2 * (((((((HHV(CLOSE,5) / CLOSE) > 1.06) && (HHV(x43,6) > 0.08)) && (CLOSE > (0.95 * x37))) && (CLOSE < (1.09 * x37))) && ((LOW / x37) < 1.01)) && x85));

x99:(0.6*(((x85 && ((CLOSE >= x97) || (CLOSE > x37))) && (x91 <= 6)) && (x91 > 0))),NODRAW,COLORFF7F00;

x100:=(0.3 * (x81 && (x62 > 0)));

x101:=FILTER((0.6 * (((x85 && ((CLOSE >= x97) || (CLOSE > x37))) && (x91 <= 6)) && (x91 > 0))),6);

x102:=10;

x103:=MA(((-(100) * (HHV(HIGH,34) - CLOSE)) / (HHV(HIGH,34) - LLV(LOW,34))),19);

x104:=((-(100) * (HHV(HIGH,14) - CLOSE)) / (HHV(HIGH,14) - LLV(LOW,14)));

x105:=EMA(((-(100) * (HHV(HIGH,34) - CLOSE)) / (HHV(HIGH,34) - LLV(LOW,34))),4);

x106:=(x103 + 100);

x107:=(x104 + 100);

x108:=(x105 + 100);

x109:=((((REF(x108,1) > 85) && (REF(x107,1) > 85)) && (REF(x106,1) > 65)) && CROSS(x106,x107));

x110:=(((((((x108 < REF(x108,1)) && (REF(x108,1) > 80)) && ((REF(x107,1) > 95) || (REF(x107,2) > 95))) && (x106 > 60)) && (x107 < 83.5)) && (x107 < x108)) && (x107 < (x106 + 4)));

x111:=FILTER(x110,4);

x112:=((((((x106 < 12) && (x108 < 8)) && ((x107 < 7.2) || (REF(x107,1) < 5))) && ((x108 > REF(x108,1)) || (x107 > REF(x107,1)))) || ((((x106 < 8) && (x108 < 7)) && (x107 < 15)) && (x107 > REF(x107,1)))) || (((x106 < 10) && (x108 < 7)) && (x107 < 1)));

x113:=(50 * ((((((((x106 < 15) && (REF(x106,1) < 15)) && (x108 < 18)) && (x107 > REF(x107,1))) && CROSS(x107,x106)) && (x107 > x108)) && ((REF(x107,1) < 5) || (REF(x107,2) < 5))) && ((x108 >= x106) || (REF(x107,1) < 1))));

x114:=((x108 - x107) > 40);

x115:=FILTER(((x107 - LLV(x107,3)) > 20),3);

x116:=(((((BARSLAST(x114) <= 3) && ((x107 - LLV(x107,3)) > 20)) && ((CLOSE > MA(CLOSE,20)) || (MA(CLOSE,20) > REF(MA(CLOSE,20),1)))) && x115) * 2),COLORFF7F00,NODRAW;

x117:((x116 && x90) && (x30 >= x33)),COLORFF7F00,NODRAW;

DRAWICON(x90,-0.5,33);

DRAWICON(x99>0,-0.5,32);

DRAWICON(x117,11,25);