‹ 返回14756
🔧 核心通用·带A股选股过滤(核心可用 · 把'去ST/选板块/CODELIKE'那行删掉,美港马加都能跑)
周期:长线用途:只管进单(找买点/选股)(纯多·只做多)
📊 把公式 14756 实时算进主散博弈(纯技术函数;选股/筹码特殊函数会标注不支持)
🧩 这个指标拆开看 = 哪些"积木"组合的
① 定方向(趋势)均线类 MA/EMA — 一段时间的平均价,铺出趋势中枢、看多空排列
② 验量能(量价)成交量/额 VOL — 量在价先——放量证实突破、缩量过滤假信号
④ 触发(信号扳机)CROSS 交叉 — 两线金叉/死叉当买卖扳机
突破/计数/过滤 — 突破前高、信号计时与去重
搭条件的零件HHV/LLV/REF 等 — 取区间最高最低、引用前N根——搭条件的零件
图上标注买卖点画线/标注 — 在图上画柱、标买卖点、上色提示(只是显示,不是判断逻辑)
⚠️ A股专属(港股/美股/马股/加密都没有)代码/板块/题材 — 按代码段、行业、概念、龙头筛选(A股特有)
去ST/风险股 — 剔除A股ST风险股
组合思路:用均线/MACD 定方向,再用量能验证真假,再用金叉/突破当买卖扳机。把几件事叠在一起同时成立,才算一个'信号'——叠得越多看着越细,但也越容易过度拟合。 ⚠️ 这条含 A股专属逻辑(涨停板/龙虎榜/代码板块)——只有大陆A股有这制度,港股、美股、马股、加密统统没有,这部分搬不过去。
指标公式
S:=1;
DA1:=IF(130>TOTALBARSCOUNT,TOTALBARSCOUNT,130);
DA:=IF(CURRBARSCOUNT>DA1,0,DA1);
HI:=REFDATE(HHV(H,DA),DATE);
LO:=REFDATE(LLV(L,DA),DATE);
C1:=IF(CURRBARSCOUNT<=DA,C,DRAWNULL);
GZ:=EXP(LN(HI/LO)/10);
LH1:=SUM(IF(C1>=(HI/GZ),V,0),DA);
LH2:=SUM(IF(C1>=(HI/POW(GZ,2)) AND C1<(HI/GZ),V,0),DA);
LH3:=SUM(IF(C1>=(HI/POW(GZ,3)) AND C1<(HI/POW(GZ,2)),V,0),DA);
LH4:=SUM(IF(C1>=(HI/POW(GZ,4)) AND C1<(HI/POW(GZ,3)),V,0),DA);
LH5:=SUM(IF(C1>=(HI/POW(GZ,5)) AND C1<(HI/POW(GZ,4)),V,0),DA);
LH6:=SUM(IF(C1>=(HI/POW(GZ,6)) AND C1<(HI/POW(GZ,5)),V,0),DA);
LH7:=SUM(IF(C1>=(HI/POW(GZ,7)) AND C1<(HI/POW(GZ,6)),V,0),DA);
LH8:=SUM(IF(C1>=(HI/POW(GZ,8)) AND C1<(HI/POW(GZ,7)),V,0),DA);
LH9:=SUM(IF(C1>=(LO*GZ) AND C1<LO*POW(GZ,2),V,0),DA);
LH10:=SUM(IF(C1>=LO AND C1<LO*GZ,V,0),DA);
L1:=REFDATE(HHV(LH1,DA),DATE),LINETHICK0;
L2:=REFDATE(HHV(LH2,DA),DATE),LINETHICK0;
L3:=REFDATE(HHV(LH3,DA),DATE),LINETHICK0;
L4:=REFDATE(HHV(LH4,DA),DATE);
L5:=REFDATE(HHV(LH5,DA),DATE);
L6:=REFDATE(HHV(LH6,DA),DATE);
L7:=REFDATE(HHV(LH7,DA),DATE);
L8:=REFDATE(HHV(LH8,DA),DATE);
L9:=REFDATE(HHV(LH9,DA),DATE);
L10:=REFDATE(HHV(LH10,DA),DATE);
SS:=(L1+L2+L3+L4+L5+L6+L7+L8+L9+L10);
STICKLINE(CEILING(DA*L1/SS)*3>=CURRBARSCOUNT,HI*99/100,HI/GZ,9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L2/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,1)*99/100,HI/POW(GZ,2),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L3/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,2)*99/100,HI/POW(GZ,3),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L4/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,3)*99/100,HI/POW(GZ,4),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L5/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,4)*99/100,HI/POW(GZ,5),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L6/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,5)*99/100,HI/POW(GZ,6),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L7/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,6)*99/100,HI/POW(GZ,7),9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L8/SS)*3>=CURRBARSCOUNT,LO*POW(GZ,2),LO*POW(GZ,3)*99/100,9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L9/SS)*3>=CURRBARSCOUNT,LO*POW(GZ,1),LO*POW(GZ,2)*99/100,9,0)COLOR3C3C3A,LINETHICK3;
STICKLINE(CEILING(DA*L10/SS)*3>=CURRBARSCOUNT,LO,LO*POW(GZ,1)*99/100,9,0)COLOR3C3C3A,LINETHICK3;
N:=10;
LL:=REF(L,1);
HH:=REF(H,1);
SQK:=L>HH;
XQK:=H<LL;
��������ԪǮ:IF(SQK=1,L-HH,DRAWNULL),COLORGREEN,CROSSDOT,LINETHICK3,NODRAW;
��������Ԫ:IF(XQK=1,H-LL,DRAWNULL),COLORYELLOW,CROSSDOT,LINETHICK3,NODRAW;
DRAWTEXT(SQK,L*0.92,' ����'),COLORRED;
DRAWTEXT(XQK,H*1.08,' ����'),COLORGREEN;
STICKLINE(SQK,L,HH,5*N,1),COLORRED;
STICKLINE(XQK,H,LL,5*N,2),COLORGREEN;
DRAWKLINE(H,O,L,C);
DRAWTEXT(CURRBARSCOUNT=98,LOW*0.88,'��ѹ��Խ����Խ��,����Խ��Խ�á�'),COLORYELLOW;
N250:=250;
PT250:=CONST(HHVBARS(V,N250));
T250:IF(CURRBARSCOUNT<=N250,CONST(IF(PT250=0,C,REF(C,PT250))),DRAWNULL),COLOR990000,LINETHICK2;
IF(CURRBARSCOUNT=PT250+1,T250*1.01,DRAWNULL),CIRCLEDOT,COLORFF0000,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N250,T250,'250'),COLOR990000;
N120:=120;
PT120:=CONST(HHVBARS(V,N120));
T120:IF(CURRBARSCOUNT<=N120,CONST(IF(PT120=0,C,REF(C,PT120))),DRAWNULL),COLORAAAA00,LINETHICK2;
IF(CURRBARSCOUNT=PT120+1,T120,DRAWNULL),CIRCLEDOT,COLORFFFF00,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N120,T120,'120'),COLORAAAA00;
N60:=60;
PT60:=CONST(HHVBARS(V,N60));
T60:IF(CURRBARSCOUNT<=N60,CONST(IF(PT60=0,C,REF(C,PT60))),DRAWNULL),COLOR00BB00,LINETHICK2;
IF(CURRBARSCOUNT=PT60+1,T60,DRAWNULL),CIRCLEDOT,COLOR00FF00,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N60,T60,'60'),COLOR00BB00;
N30:=30;
PT30:=CONST(HHVBARS(V,N30));
T30:IF(CURRBARSCOUNT<=N30,CONST(IF(PT30=0,C,REF(C,PT30))),DRAWNULL),COLOR0000CC,LINETHICK2;
IF(CURRBARSCOUNT=PT30+1,T30,DRAWNULL),CIRCLEDOT,COLOR0000FF,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N30,T30,'30'),COLOR0000CC;
N20:=20;
PT20:=CONST(HHVBARS(V,N20));
T20:IF(CURRBARSCOUNT<=N20,CONST(IF(PT20=0,C,REF(C,PT20))),DRAWNULL),COLORDD00DD,LINETHICK2;
IF(CURRBARSCOUNT=PT20+1,T20,DRAWNULL),CIRCLEDOT,COLORFF00FF,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N20,T20,'20'),COLORDD00DD;
N10:=10;
PT10:=CONST(HHVBARS(V,N10));
T10:IF(CURRBARSCOUNT<=N10,CONST(IF(PT10=0,C,REF(C,PT10))),DRAWNULL),COLOR00EEEE,LINETHICK2;
IF(CURRBARSCOUNT=PT10+1,T10,DRAWNULL),CIRCLEDOT,COLOR00FFFF,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N10,T10,'10'),COLOR00EEEE;
N5:=5;
PT5:=CONST(HHVBARS(V,N5));
T5:IF(CURRBARSCOUNT<=N5,CONST(IF(PT5=0,C,REF(C,PT5))),DRAWNULL),COLORFFFFFF,LINETHICK2;
IF(CURRBARSCOUNT=PT5+1,T5,DRAWNULL),CIRCLEDOT,COLORFFFFFF,LINETHICK2;
DRAWTEXT(CURRBARSCOUNT=N5,T5,'5'),COLORFFFFFF;
DRAWKLINE(H,O,L,C);
����:=CROSS(C,T5),COLORFFFFFF,LINETHICK2;
T1:=CONST(HHVBARS(V,10)),COLOR0000FF,LINETHICK1;
����ƽ̨:IF(CURRBARSCOUNT<=N+15,CONST(IF(T1=0,C,REF(C,T1))),DRAWNULL),COLOR4080FF,LINETHICK3;
�����ܵ�:IF(CURRBARSCOUNT=T1+1,����ƽ̨,DRAWNULL),CIRCLEDOT,COLORFFFFFF,LINETHICK9;
DRAWTEXT(ISLASTBAR,����ƽ̨,' ����ƽ̨'),COLOR00F0F0;
DRAWTEXT_FIX(1,0.00,0,0,'������ҵ��')COLOR00FFFF;
DRAWTEXT_FIX(1,0.06,0,0,HYBLOCK)COLOR00FFFF;
DRAWTEXT_FIX(1,0.14,0,0,'����������')COLOR00FFFF;
DRAWTEXT_FIX(1,0.20,0,0,DYBLOCK)COLOR00FFFF;
DRAWTEXT_FIX(1,0.30,0.00,0,'����Ͷ�ʣ�')COLOR00FFFF;
DRAWTEXT_FIX(1,0.36,0.00,0,EXTERNSTR(0,2))COLOR00FFFF;
DRAWTEXT_FIX(1,0.00,0.05,0,'��Ӫҵ��')COLOR00FFFF;
DRAWTEXT_FIX(1,0.06,0.05,0,EXTERNSTR(0,3))COLOR00FFFF;
DRAWTEXT_FIX(1,0.00,0.10,0,'������ڣ�')COLOR00FFFF;
DRAWTEXT_FIX(1,0.06,0.10,0,EXTERNSTR(0,4))COLOR00FFFF;
DRAWTEXT_FIX(1,0.00,0.15,0,'������'),COLOR00FFFF;
DRAWTEXT_FIX(1,0.06,0.15,0,EXTERNSTR(0,5)),COLOR00FFFF;
DRAWRECTREL(0,500,135,999.4,IF(120,RGB(10,0,0),0));
��B:=L2_AMO(0,2)/10000.0;
��B:=L2_AMO(1,2)/10000.0;
��B:=L2_AMO(2,2)/10000.0;
СB:=L2_AMO(3,2)/10000.0;
��S:=L2_AMO(0,3)/10000.0;
��S:=L2_AMO(1,3)/10000.0;
��S:=L2_AMO(2,3)/10000.0;
СS:=L2_AMO(3,3)/10000.0;
TESTSKIP(NOT(��B OR ��B OR ��B OR СB OR ��S OR ��S OR ��S OR СS)!=0);
������:=(��B)+(��B),NODRAW;
������:=(��S)+(��S),NODRAW;
Сɢ��:=(��B)+(СB),NODRAW;
Сɢ��:=(��S)+(СS),NODRAW;
DAZHIV:=CONST(MAX(ABS(������),MAX(ABS(������),MAX(ABS(Сɢ��),ABS(Сɢ��))))),NODRAW;
DRAWRECTREL(0,CONST(940-(ABS(������)*250/DAZHIV)),30,960,IF(CONST(������>0),RGB(255,0,0),RGB(23,125,255)));
DRAWRECTREL(32,CONST(940-(ABS(������)*250/DAZHIV)),62,960,IF(CONST(������>0),RGB(23,125,255),RGB(255,0,0)));
DRAWRECTREL(70,CONST(940-(ABS(Сɢ��)*250/DAZHIV)),100,960,IF(CONST(Сɢ��>0),RGB(255,0,0),RGB(23,125,255)));
DRAWRECTREL(102,CONST(940-(ABS(Сɢ��)*250/DAZHIV)),132,960,IF(CONST(Сɢ��>0),RGB(23,125,255),RGB(255,0,0)));
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.0001,0.85,0,STRCAT('',CON2STR(������/10,0))),COLORYELLOW;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.033,0.85,0,STRCAT('',CON2STR(������/10,0))),COLORYELLOW;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.07,0.85,0,STRCAT('',CON2STR(Сɢ��/10,0))),COLORYELLOW;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.101,0.85,0,STRCAT('',CON2STR(Сɢ��/10,0))),COLORYELLOW;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.033,1,0,'��X10��Ԫ)'),COLOR00FFFF;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0,1,0,'������'),COLORCYAN;
DRAWTEXT_FIX(CURRBARSCOUNT=1,0.09,1,0,'ɢ����'),COLORCYAN;
����������:=LARGEINTRDVOL*1000/VOL;
����������:=LARGEOUTTRDVOL*1000/VOL;
AAD:=CONST(MAX(ABS(����������),ABS(����������)))*4,NODRAW;
DRAWRECTREL(0,515,CONST(ABS(����������)*500/AAD),568,IF(CONST(����������)>0,RGB(255,0,0),RGB(0,50,0)));
DRAWRECTREL(0,570,CONST(ABS(����������)*500/AAD),623,IF(CONST(����������)>0,RGB(0,50,0),RGB(255,0,0)));
DRAWTEXT_FIX(1,0,0.524,0,STRCAT('��������:',CON2STR(����������,0))),COLORYELLOW;
DRAWTEXT_FIX(1,0,0.576,0,STRCAT('��������:',CON2STR(����������,0))),COLORYELLOW;
�Ǽ���:INDEXADV,COLOR0080FF,NODRAW;
������:INDEXDEC,COLORGREEN,NODRAW;
K1:=REF(C,1)=DYNAINFO(3) AND O=DYNAINFO(4) AND C=DYNAINFO(7) AND H=DYNAINFO(5) AND L=DYNAINFO(6);
K2:=BARSLAST(V=HHV(V,20));
K3:=BACKSET(K1,K2+1);
STICKLINE(K2=0 AND K3=1,H,H*1.003,8*N,0),COLORYELLOW;
��:C,NODRAW;
DRAWTEXT(S=1&&K2=0&&K3=1,H*1.02,'20�����������'),COLORGREEN;
DRAWTEXT(S=1&&K2=0&&K3=1,H*0.98,'������ۻ���'),COLORGREEN;
STICKLINE((CLOSE>(REF(C,1)))AND(CLOSE/(REF(C,1))>1.05),CLOSE,OPEN,2,0),COLORFF00FF ;
STICKLINE((CLOSE<(REF(C,1)))AND((REF(C,1))/CLOSE>1.05),CLOSE,OPEN,2,0),COLOR009900;
ST1:=NAMELIKE('ST');
ST2:=NAMELIKE('*ST');
ZT:=(C-REF(C,1))/REF(C,1)*100>9.92;
ZTST:=(C-REF(C,1))/REF(C,1)*100>4.92;
��ͣ:=ST1=0 AND ST2=0 AND ZT;
��ͣST:=(ST1=1 OR ST2=1) AND ZTST;
STICKLINE(��ͣ OR ��ͣST,C,O,3,0),COLORYELLOW;
STICKLINE(��ͣ OR ��ͣST,C,O,2,0),COLORYELLOW;
STICKLINE(��ͣ OR ��ͣST,C,O,1,0),COLORYELLOW;
DT:=(C-REF(C,1))/REF(C,1)*100<-9.92;
DTST:=(C-REF(C,1))/REF(C,1)*100<-4.92;
��ͣ:=ST1=0 AND ST2=0 AND DT;
��ͣST:=(ST1=1 OR ST2=1) AND DTST;
STICKLINE(��ͣ OR ��ͣST,C,O,3,0),COLORFF0000 ;
STICKLINE(��ͣ OR ��ͣST,C,O,2,0),COLORFF0000 ;
STICKLINE(��ͣ OR ��ͣST,C,O,1,0),COLORFF0000 ;
MA5:MA(CLOSE,4),DOTLINE,COLORGREEN;
IF(MA5>REF(MA5,1),MA5,DRAWNULL)COLORYELLOW,LINETHICK3;
MA10:MA(CLOSE,10),COLORRED,DOTLINE;
IF(MA10>REF(MA5,1),MA10,DRAWNULL)COLORRED,DOTLINE,COLORGREEN;
MA250:MA(CLOSE,250),COLORRED;
IF(MA250>REF(MA5,1),MA250,DRAWNULL)COLORRED,COLORGREEN;
AA��:=(360*FRACPART(((DATETODAY(DATE)-