‹ 返回43058
🔧 核心通用·带A股选股过滤(核心可用 · 把'去ST/选板块/CODELIKE'那行删掉,美港马加都能跑)
周期:中线用途:只管进单(找买点/选股)(纯多·只做多)
📊 把公式 43058 实时算进主散博弈(纯技术函数;选股/筹码特殊函数会标注不支持)
🧩 这个指标拆开看 = 哪些"积木"组合的
① 定方向(趋势)均线类 MA/EMA — 一段时间的平均价,铺出趋势中枢、看多空排列
DMA — 两条不同周期均线之差,测中线方向
② 验量能(量价)成交量/额 VOL — 量在价先——放量证实突破、缩量过滤假信号
④ 触发(信号扳机)CROSS 交叉 — 两线金叉/死叉当买卖扳机
突破/计数/过滤 — 突破前高、信号计时与去重
搭条件的零件HHV/LLV/REF 等 — 取区间最高最低、引用前N根——搭条件的零件
图上标注买卖点画线/标注 — 在图上画柱、标买卖点、上色提示(只是显示,不是判断逻辑)
⚠️ A股专属(港股/美股/马股/加密都没有)去ST/风险股 — 剔除A股ST风险股
组合思路:用均线/MACD 定方向,再用量能验证真假,再用金叉/突破当买卖扳机。把几件事叠在一起同时成立,才算一个'信号'——叠得越多看着越细,但也越容易过度拟合。 ⚠️ 这条含 A股专属逻辑(涨停板/龙虎榜/代码板块)——只有大陆A股有这制度,港股、美股、马股、加密统统没有,这部分搬不过去。
指标公式
DRAWGBK(O>C,RGB(360,0,10),RGB(10,0,1),0,'01',0);
CC:IF(CURRBARSCOUNT<18,CONST(REF(C,1)),DRAWNULL),COLOR000000;
ֹӮ:1.05*CC,COLORFFFFFF,LINETHICK2;
ֹ��:0.97*CC,COLORFFFFFF,LINETHICK2;
V1:=ABS((2*CLOSE+HIGH+LOW)/4-MA(CLOSE,20))/MA(CLOSE,20);
V2:=(1-7/100)*(DMA(CLOSE,V1));
V3:=(1+7/100)*(DMA(CLOSE,V1));
V5:=MA((LOW+HIGH+CLOSE)/3,5);
֧��:REFDATE(V2,DATE),POINTDOT,LINETHICK1,COLORCC66FF;
����:REFDATE(V3,DATE),POINTDOT,LINETHICK1,COLORGREEN;
�Ƿ�:100*(CLOSE-REF(CLOSE,1))/REF(CLOSE,1),NODRAW,COLORWHITE;
����Ƿ�:100*(H-REF(CLOSE,1))/REF(CLOSE,1),NODRAW,COLORYELLOW;
������:100*(L-REF(CLOSE,1))/REF(CLOSE,1),NODRAW,COLORYELLOW;
ʵ���:ABS(100*(CLOSE-OPEN)/OPEN),NODRAW,COLORRED;
��Ӱ��:IF(CLOSE>OPEN,100*(H-C)/C,100*(H-O)/O),NODRAW,COLORYELLOW;
��Ӱ��:IF(CLOSE>OPEN,100*(O-L)/L,100*(C-L)/L),NODRAW,COLORWHITE;
X:=(3*C+L+O+H)/6;
AH1:=(20*X+19*REF(X,1)+18*REF(X,2)+17*REF(X,3)+16*REF(X,4)+15*REF(X,5)+14*REF(X,6)
+13*REF(X,7)+12*REF(X,8)+11*REF(X,9)+10*REF(X,10)+9*REF(X,11)+8*REF(X,12)
+7*REF(X,13)+6*REF(X,14)+5*REF(X,15)+4*REF(X,16)+3*REF(X,17)+2*REF(X,18)+
REF(X,20))/210;
CP:=IF(C>REF(C,1),(3*H+4*C+3*OPEN+2*L)/12,(2*H+4*C+3*OPEN+3*L)/12);
AH2:=EXPMEMA(CP,25);
�ֹ���:=(MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24))/4;
VAR2M:=CLOSE*VOL;
VAR3M:=EMA((EXPMA(VAR2M,3)/EXPMA(VOL,3)+EXPMA(VAR2M,6)/EXPMA(VOL,6)+EXPMA(VAR2M,12)/EXPMA(VOL,12)+EXPMA(VAR2M,24)/EXPMA(VOL,24))/4,13);
SDN:=VAR3M*0.94;
��ͣB:=CLOSE>1.1*REF(CLOSE,1)-0.005 AND H>L;
����ͣ:=BARSLAST(��ͣB);
����:=100*(H-REF(C,1))/REF(C,1)>7;
DRAWICON((C>SDN AND 100*(L-�ֹ���)/�ֹ���<1.5 AND 100*(L-((MIN(AH2,AH1)+MIN(�ֹ���,AH2)+MIN(�ֹ���,AH1))/2.95))/((MIN(AH2,AH1)+MIN(�ֹ���,AH2)+MIN(�ֹ���,AH1))/2.95)<1.5 AND (COUNT(����,13)>=2 OR ����ͣ<13) AND BARSLAST(����)>0 AND �Ƿ�<=2),L*0.98,1);
DRAWTEXT(CLOSE>1.1*REF(CLOSE,1)-0.005,CLOSE*1.02,'ͣ,'),COLORCYAN;
DRAWTEXT(CLOSE<0.9*REF(CLOSE,1)+0.005,L*0.98,'ͣ,'),COLORCCCCCC;
VAR32:=(CLOSE-LLV(LOW,5))/(HHV(HIGH,5)-LLV(LOW,5))*10;
��:=BARSLAST(EMA(CLOSE,5)<REF(EMA(CLOSE,5),1));
CRXP:=((REF(��Ӱ��,1)>3 AND REF(��Ӱ��,1)<1.15))
AND ((��Ӱ��>3 AND ��Ӱ��<1.55)) AND �Ƿ�<8;
JM:=(3*SMA(SMA(VAR32,2,1),2,1)-2*SMA(SMA(SMA(VAR32,2,1),2,1),3,1));
ǿ�ƻص�:=(����ͣ<14 OR (����ͣ<26 AND ����ͣ>19));
����:=((ǿ�ƻص� AND CRXP) OR (CRXP AND (JM>REF(JM,1) OR (��>0 AND JM<7))));
DRAWTEXT_FIX(1,0.85,0,0,''),COLORCYAN;
DRAWTEXT(����,L*0.96,'���������,'),COLORFFFFFF;
�ص���ϳ��ܼ�:(MIN(AH2,AH1)+MIN(BBI,AH2)+MIN(BBI,AH1))/2.95,NODRAW;
���̶���������:EMA(((SLOPE(INDEXC,22)*23)+INDEXC),48),COLORYELLOW,LINETHICK3,NODRAW;
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);
L2:=REFDATE(HHV(LH2,DA),DATE);
L3:=REFDATE(HHV(LH3,DA),DATE);
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),
,COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L2/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,1)*99/100
,HI/POW(GZ,2),9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L3/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,2)*99/100
,HI/POW(GZ,3),9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L4/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,3)*99/100
,HI/POW(GZ,4),9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L5/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,4)*99/100
,HI/POW(GZ,5),9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L6/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,5)*99/100
,HI/POW(GZ,6),9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L7/SS)*3>=CURRBARSCOUNT,HI/POW(GZ,6)*99/100
,HI/POW(GZ,7),9,0),COLOR181818;
STICKLINE(CEILING(DA*L8/SS)*3>=CURRBARSCOUNT,LO*POW(GZ,2),LO*POW(GZ,3)
*99/100,9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L9/SS)*3>=CURRBARSCOUNT,LO*POW(GZ,1),LO*POW(GZ,2)
*99/100,9,0),COLOR181818,LINETHICK3;
STICKLINE(CEILING(DA*L10/SS)*3>=CURRBARSCOUNT,LO,LO*POW(GZ,1)*99/100,9,0)
,COLOR181818,LINETHICK3;
DRAWKLINE(H,O,L,C);
DRAWKLINE(H,O,L,C);
DRAWTEXT(CURRBARSCOUNT=98,LOW*0.88,'��ѹ��Խ����Խ��,����Խ��Խ�á�'),COLORYELLOW;
N:=10;
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;
JJ:=(CLOSE+HIGH+LOW)/3;
A:=EMA(JJ,10);
B:=REF(A,1);
�ֹ�����:STICKLINE(A>B,A,B,2,0),COLORYELLOW;
�ֱ�����:STICKLINE(A<B,A,B,2,0),COLORBLUE;
VAR1:=(100 - ((90 * (HHV(HIGH,14) - CLOSE)) / (HHV(HIGH,14) - LLV(LOW,14))));
VAR2:=(100 - ((90 * (HHV(HIGH,14) - CLOSE)) / (HHV(HIGH,14) - LLV(LOW,14))));
VAR3:=(100 - MA(((100 * (HHV(HIGH,6) - CLOSE)) / (HHV(HIGH,6) - LLV(LOW,6))),34));
DIR1:=ABS(CLOSE-REF(CLOSE,5));
VIR1:=SUM(ABS(CLOSE-REF(CLOSE,1)),5);
ER1:=DIR1/VIR1;
CS1:=ER1*(0.8-2/8)+2/8;
CQ1:=CS1*CS1;
DIR2:=ABS(CLOSE-REF(CLOSE,10));
VIR2:=SUM(ABS(CLOSE-REF(CLOSE,1)),10);
ER2:=DIR2/VIR2;
CS2:=ER2*(0.8-2/24)+2/24;
CQ2:=CS2*CS2;
STICKLINE(VAR2 < MA(VAR3,6),LOW,HIGH,0,1),COLORLIBLUE;
STICKLINE(VAR2 > MA(VAR3,6),LOW,HIGH,0,1),COLORRED;
STICKLINE(((OPEN>CLOSE)AND(VAR2<MA(VAR3,6))),(CLOSE-0.03),OPEN,3.05,0),COLORLIBLUE;
STICKLINE(((OPEN<CLOSE)AND(VAR2<MA(VAR3,6))),CLOSE,OPEN,3.05,1),COLORLIBLUE;
STICKLINE(((OPEN>CLOSE)AND(VAR2>MA(VAR3,6))),OPEN,(CLOSE-0.03),3.05,0),COLORRED;
STICKLINE(((OPEN<CLOSE)AND(VAR2>MA(VAR3,6))),OPEN,CLOSE,3.05,1),COLORRED;
DRAWICON(CROSS(VAR2,MA(VAR3,6)),(LOW - (LOW*0.01)),23);
DRAWICON(CROSS(MA(VAR3,6),VAR1),(HIGH+(HIGH*0.01)),15);
PT:=REF(H,1)-REF(L,1);
CDP:=(REF(H,1)+REF(L,1)+REF(C,1)*2)/4;
AH:=CDP+PT;
AL:=CDP-PT;
NH:=CDP*2-REF(L,1);
NL:=CDP*2-REF(H,1);
ǿ:IF(AH>REF(C,1)*1.1,REF(C,1)*1.1,AH)NODRAW;
��:IF(NH>ǿ,(ǿ-CDP)*0.618+CDP,NH)NODRAW,COLORBLUE;
M:=IF(AL<REF(C,1)/1.1,REF(C,1)/1.1,AL);
��:IF(NL<M,CDP-(CDP-M)*0.618,NL)NODRAW;
��:IF(AL<REF(C,1)/1.1,REF(C,1)/1.1,AL)NODRAW;