‹ 返回45405
🔧 核心通用·带A股选股过滤(核心可用 · 把'去ST/选板块/CODELIKE'那行删掉,美港马加都能跑)
周期:中线用途:只管进单(找买点/选股)(纯多·只做多)
📊 把公式 45405 实时算进主散博弈(纯技术函数;选股/筹码特殊函数会标注不支持)
🧩 这个指标拆开看 = 哪些"积木"组合的
★ 看主力(筹码 / 资金)筹码/成本 COST·WINNER — ★算每股持仓成本分布,判主力建仓/获利盘/控盘度——票在谁手里
① 定方向(趋势)均线类 MA/EMA — 一段时间的平均价,铺出趋势中枢、看多空排列
② 验量能(量价)成交量/额 VOL — 量在价先——放量证实突破、缩量过滤假信号
波动通道ATR 波幅 — 真实波幅,量风险、设止损
④ 触发(信号扳机)CROSS 交叉 — 两线金叉/死叉当买卖扳机
突破/计数/过滤 — 突破前高、信号计时与去重
搭条件的零件HHV/LLV/REF 等 — 取区间最高最低、引用前N根——搭条件的零件
图上标注买卖点画线/标注 — 在图上画柱、标买卖点、上色提示(只是显示,不是判断逻辑)
⚠️ A股专属(港股/美股/马股/加密都没有)代码/板块/题材 — 按代码段、行业、概念、龙头筛选(A股特有)
去ST/风险股 — 剔除A股ST风险股
组合思路:先盯主力筹码/资金(票在谁手里),再用均线/MACD 定方向,再用通道测波动边界,再用量能验证真假,再用金叉/突破当买卖扳机。把几件事叠在一起同时成立,才算一个'信号'——叠得越多看着越细,但也越容易过度拟合。 ⚠️ 这条含 A股专属逻辑(涨停板/龙虎榜/代码板块)——只有大陆A股有这制度,港股、美股、马股、加密统统没有,这部分搬不过去。 不过它的'根'在筹码/量价层——这套是普世的,港股美股马股加密都能算;尤其散户多、流通差的市场(如马股小盘、港股仙股)主力筹码更好使。和你的主散博弈/刘彩游龙同源。
指标公式
N:=5;N1:=3;
��:MA(CLOSE,3),POINTDOT,COLORYELLOW,LINETHICK1;
K:=0,2,1;
P:=0,1,0;
ZGD:=HHV(H,60);
ZGD2:=CONST(ZGD);
ZDD:=LLV(L,60);
ZDD2:=CONST(ZDD);
GJ:=(C+H+L+O)/4;
��������:=L+(GJ-L)+(C-L);
����֧��:=L+(C-GJ);
KOH:=L>REF(H,1);
KOL:=H<REF(L,1);
HIF:=L>REF(H,BARSLAST(KOH)+1);
NHIF:=L<=REF(H,BARSLAST(KOH)+1);
LIF:=H<REF(L,BARSLAST(KOL)+1);
NLIF:=H>=REF(L,BARSLAST(KOL)+1);
�µ���:=(((CLOSE - LLV(LOW,13)) / (HHV(HIGH,13) - LLV(LOW,13))) * 200);
RRRSV:=SMA(�µ���,3,1);
KKK:=SMA(RRRSV,3,1);
DDDDD:=((3 * RRRSV) - (2 * KKK));
JJ12:=(((CLOSE - LLV(LOW,55)) / (HHV(HIGH,55) - LLV(LOW,55))) * 200);
RSV24:=SMA(JJ12,3,1);
K24:=SMA(RSV24,3,1);
D24:=((3 * RSV24) - (2 * K24));
ѹ��2:=IF(CROSS(D24,DDDDD),HIGH,REF(HIGH,BARSLAST(CROSS(D24,DDDDD)))),COLORFFFFFF;
�ײ�:=LLV(HIGH,30),COLOR00FF00;
AA:=REF(H,N)=HHV(H,2*N+1); AA1:=REF(L,N)=LLV(L,2*N+1);
QY:=BACKSET(AA,N+1); QY1:=BACKSET(AA1,N+1);
CC:=FILTER(QY,N) AND H=HHV(H,N+1); CC1:=FILTER(QY1,N) AND L=LLV(L,N+1);
DDD:=BARSLAST(CC); DD1:=BARSLAST(CC1);
GDTS:=IF(CC,CURRBARSCOUNT,0); DDTS:=IF(CC1,CURRBARSCOUNT,0);
DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS); DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
GDCS1:=CONST(DINGBUTS); DDCS1:=CONST(DDTS1);
GDCS13:=CONST(REF(HIGH,GDCS1-1)); DDCS13:=CONST(REF(L,DDCS1-1));
DINGBUTS1:=REF(DINGBUTS,DDD+1); DDTS2:=REF(DDTS1,DD1+1);
GDCS2:=CONST(DINGBUTS1); DDCS2:=CONST(DDTS2);
GDCS23:=CONST(REF(HIGH,DINGBUTS1-1)); DDCS23:=CONST(REF(L,DDTS2-1));
XG1:=BACKSET(ISLASTBAR,GDCS1); XD1:=BACKSET(ISLASTBAR,DDCS1);
XG2:=BACKSET(ISLASTBAR,DINGBUTS1);
XD2:=BACKSET(ISLASTBAR,DDTS2);
XDD:=IF(DDCS13<=DDCS23,XD1,XD2);
BCG:=SUM(XG1,0); BCD:=SUM(XDD,0);
��:=IF(ISLASTBAR,ѹ��2,DRAWNULL),NODRAW;
��:=IF(ISLASTBAR,�ײ�,DRAWNULL),NODRAW;
AA05:=MA(C,5),COLOR0099CC;
���չ�����:=(C-AA05)/AA05*100;
BB05:=ATAN((AA05/REF(AA05,1)-1)*100)*180/3.1416;
�ٶ�5:=SMA(EMA((AA05-REF(AA05,1))/REF(AA05,1),3)*100,3,1);
���ٶ�5:=EMA((�ٶ�5-REF(�ٶ�5,1)),3),NODRAW;
AA10:=MA(C,10);
AA20:=MA(C,20);
BB10:=ATAN((AA10/REF(AA10,1)-1)*100)*180/3.1416;
AA30:=MA(C,30);
JJ1:=FORCAST((3*C+2*REF(C,1)+1*REF(C,2))/(3+2+1),20);
JJ2:=FORCAST((15*C+14*REF(C,1)+13*REF(C,2)+12*REF(C,3)+11*REF(C,4)+10*REF(C,5)+9*REF(C,6)+8*REF(C,7)+7*REF(C,8)+6*REF(C,9)+5*REF(C,10)+4*REF(C,11)+3*REF(C,12)+2*REF(C,13)+1*REF(C,14))/(15+14+13+12+11+10+9+8+7+6+5+4+3+2+1),20);
XJ3:=FILTER(CROSS(JJ1,JJ2),3);
XJ4:=FILTER(CROSS(JJ2,JJ1),3);
YJL:=JJ1,COLORLIGRAY,LINETHICK1;
��:FORCAST(CLOSE,20),COLORRED,LINETHICK1;
VARJL:=((VOL)*(OPEN + CLOSE + HIGH + LOW))/(4);
��:FORCAST((MA(VARJL,1))/(EMA(VOL,1)),20),COLORLIGREEN,LINETHICK1;
YJ:=FORCAST(MA(CLOSE,12),20);
YJD:=YJ - JJ1 - YJ;
TR2:= MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR2,13);
DVAR1:=REF(CLOSE,1)-REF(ATR,1);
��:HHV(DVAR1,7),COLORDDAADD,LINETHICK2;
��:HHV(DVAR1,12),COLORWHITE,LINETHICK1;
��:PEAK(CLOSE,10,1)*0.98,COLORFF9800,LINETHICK2;
��:TROUGH(CLOSE,10,1)*1.02,COLORFF9500,LINETHICK2;
A01:=REF(C,10)=HHV(C,2*10+1); B01:=FILTER(A01,10); C01:=BACKSET(B01,10+1); HD:=FILTER(C01,10);
A02:=REF(C,10)=LLV(C,2*10+1); B02:=FILTER(A02,10); C02:=BACKSET(B02,10+1); LD:=FILTER(C02,10);
��:REF(H,BARSLAST(HD)),POINTDOT,COLORRED,LINETHICK2;
��:REF(L,BARSLAST(LD)),POINTDOT,COLORGREEN,LINETHICK2;
��:(��+��)/2,,POINTDOT,COLORCE9D8E,LINETHICK4;
��:DRAWLINE(CURRBARSCOUNT=GDCS2,H,CURRBARSCOUNT=GDCS1,H,1) ,
COLORE6289F,LINETHICK1;
��:DRAWLINE(CURRBARSCOUNT=DDCS2,L,CURRBARSCOUNT=DDCS1,L,1),
COLORE6289F,LINETHICK1;
��1:=CONST(MAX(MAX(MAX(ZGD2,��),GDCS13),GDCS23));
��1:=CONST(MIN(MIN(MIN(ZDD2,DDCS23),DDCS13),��));
��H:=IF(CLOSE>200,SUM(H*VOL,BCG)/SUM(VOL,BCG),SUM(AMOUNT,BCG)/
SUM(V,BCG)/100*SUM(H,BCG)/SUM(C,BCG));
��L:=IF(CLOSE>200,SUM(L*VOL,BCD)/SUM(VOL,BCD),SUM(AMOUNT,BCD)/
SUM(V,BCD)/100*SUM(L,BCD)/SUM(C,BCD));
ZGSTAR:=(�� +��)/2;
ZGEND:=CONST((�� +��)/2);
STARDAY:=IF(DDCS2<GDCS2,DDCS2,GDCS2);
M:=INTPART(3*N1/5);
AAA:=REF(H,M)=HHV(H,2*M+1);
QYY:=BACKSET(AAA,M+1);
CCC:=FILTER(QYY,M) AND H=HHV(H,M+1);
DDDD:=BARSLAST(CCC),NODRAW;
GDTSS:=IF(CCC,CURRBARSCOUNT,0);
DINGBUTSS:=IF(DDDD,REF(GDTSS,DDDD),GDTSS);
GDCS11:=CONST(DINGBUTSS);
DINGBUTS11:=REF(DINGBUTSS,DDDD+1);
GDCS22:=CONST(DINGBUTS11);
��:DRAWLINE(CURRBARSCOUNT=GDCS22,H,CURRBARSCOUNT=GDCS11,H,1),
COLORFF85BE,LINETHICK1;
AA11:=REF(L,M)=LLV(L,2*M+1);
QY11:=BACKSET(AA11,M+1);
CC11:=FILTER(QY11,M) AND L=LLV(L,M+1);
DD11:=BARSLAST(CC11);
DDTSS:=IF(CC11,CURRBARSCOUNT,0);
DDTS11:=IF(DD11,REF(DDTSS,DD11),DDTSS);
DDCS11:=CONST(DDTS11);
DDTS22:=REF(DDTS11,DD11+1);
DDCS22:=CONST(DDTS22);
��:DRAWLINE(CURRBARSCOUNT=DDCS22,L,CURRBARSCOUNT=DDCS11,L,1)
,COLORFF85BE,LINETHICK1;
MA1:=MA(CLOSE,5),COLORWHITE;
MA2:=MA(CLOSE,10);
MA3:=MA(CLOSE,20);
MA4:=MA(CLOSE,60);
DRAWKLINE(H,O,L,C);
��1:=IF(K=0 AND XG1,��H,DRAWNULL),COLORGREEN,LINETHICK2;
��2:=IF((K=0 OR K=1) AND XDD,��L,DRAWNULL),COLORRED,LINETHICK2;
B81:=REF(CLOSE,1);
B82:=REF(CLOSE,2);
B83:=REF(CLOSE,3);
B84:=REF(CLOSE,4);
CMAX:=MAX(MAX(MAX(CLOSE,B81),B82),B83);
CMIN:=MIN(MIN(MIN(CLOSE,B81),B82),B83);
;
AAAAA:=(VOL)/((HIGH - LOW)*(2) - ABS(CLOSE - OPEN));
��������:=IF((CLOSE > OPEN),(AAAAA)*(HIGH - LOW),IF((CLOSE < OPEN),(AAAAA)*(HIGH - OPEN + CLOSE - LOW),(VOL)/(2)));
��������:=IF((CLOSE > OPEN),(AAAAA)*(HIGH - CLOSE + OPEN - LOW),IF((CLOSE < OPEN),(AAAAA)*(HIGH - LOW),(VOL)/(2)));
A1:=IF(��������,(VOL)*(3),0);
A2:=IF(��������,(VOL)*((-3)),0);
DT:=(DYNAINFO(3))*(0.92);
K1:=(SUM(A1,0))/(SUM(VOL,0));
K2:=(SUM(A2,0))/(SUM(VOL,0));
��:IF(K1,(K1)*(0.35) + DT,DT),,POINTDOT,COLORLIGREEN,LINETHICK1;
��:((K1)*(0.35) + DT + (K2)*(0.35) + DT)/(2),POINTDOT,COLORLIGREEN,LINETHICK2;
��:=IF(K2,(K2)*(0.35) + DT,DT),POINTDOT,COLORLIMAGENTA,LINETHICK2;
��1:=(((K1)*(0.35) + DT + (K2)*(0.35) + DT)/(2))*(1.5),POINTDOT,COLORLIRED,LINETHICK1;
VARC2:=EMA(SLOPE(EMA(CLOSE,20),10)*34+CLOSE,30);
VARC3:=EMA(VARC2,3);
VARC4:=EMA(VARC3,3);
VARC5:=EMA(VARC4,3);
VARC6:=EMA(VARC5,3);
VAC7:=EMA(VARC6,3);
VARC7:=EMA(VAC7,3);
VAC8:=EMA(VARC7,3);
VARC8:=EMA(VAC8,3);
VARC9:=EMA(VARC8,3);
VARAC:=BARSLAST(CROSS(CLOSE,VARC9));
VARBC:=BARSLAST(CROSS(VARC9,CLOSE));
��ʰ�չ�����:=(C-AA30)/AA30*100;
VAR11:=(AA20-AA30)>REF((AA20-AA30),1)
AND AA20>REF(AA20,1) AND AA30>REF(AA30,1);
VAR22:=(AA30-AA20)<REF((AA30-AA20),1) AND AA20<REF(AA20,1) AND
AA30<REF(AA30,1);
BB30:=ATAN((AA30/REF(AA30,1)-1)*100)*180/3.1416;
ǿ�ƾѻ�:=FILTER(BB30>30 AND BB10>45 AND
CROSS(BB05,60),10);
�Ӳ�:=FILTER(COUNT(CROSS(BB05,30),5)>=1 AND
AA05>REF(AA05,1) AND ��ʰ�չ�����>REF(��ʰ�չ�����,1) AND
AA10>REF(AA10,1)
AND ���ٶ�5>REF(���ٶ�5,1) AND �ٶ�5>REF(�ٶ�5,1) ,10) ;
���:=FILTER(COUNT(CROSS(30,BB05),5)>=1 AND (C>AA30 OR O>AA30) AND
AA05<REF(AA05,1) AND ��ʰ�չ�����<REF(��ʰ�չ�����,1) AND
AA10<REF(AA10,1),10);
DRAWICON(�Ӳ� ,LOW*0.99,23);
;
DRAWICON(CROSS(REF(ZIG(3,10),1),ZIG(3,10)),HIGH*1.01,15);
DRAWICON(CROSS(ZIG(3,10) ,REF(ZIG(3 ,10),1)) ,LOW*0.95,7);
XX:=EMA(CLOSE,30)-EMA(CLOSE,17);
YY:=EMA(XX,13);
����2:=TROUGHBARS(3,5,1)<1 AND XX<YY;
��:=IF(����2>0,0.4,0),STICK,COLORF0F000,LINETHICK4;
DRAWICON(��>0,L*0.980,24 );
N5:=30;N2:=17;N3:=5;N4:=6;
VAR1X:=EMA(CLOSE,N5)-EMA(CLOSE,N2);
VAR2X:=EMA(VAR1X,N3);
��:=CROSS(VAR1X,VAR2X) AND TROUGHBARS(3,7,1)<1,COLORWHITE;
DRAWTEXT(��,L*0.93,'��'),COLORYELLOW;
PL5:=ZIG(3,5)COLORLIGRAY;
EN1:=ZIG(3,5)>REF(ZIG(3,5),1) AND REF(ZIG(3,5),1)<=REF(ZIG(3,5),2) AND REF(ZIG(3,5),2)<=REF(ZIG(3,5),3);
EX1:=ZIG(3,5)<REF(ZIG(3,5),1) AND REF(ZIG(3,5),1)>=REF(ZIG(3,5),2) AND REF(ZIG(3,5),2)>=REF(ZIG(3,5),3);
PL10:=ZIG(3,13);
EN2:=ZIG(3,10)>REF(ZIG(3,10),1) AND REF(ZIG(3,10),1)<=REF(ZIG(3,10),2) AND REF(ZIG(3,10),2)<=REF(ZIG(3,10),3);
EX2:=ZIG(3,10)<REF(ZIG(3,10),1) AND REF(ZIG(3,10),1)>=REF(ZIG(3,10),2) AND REF(ZIG(3,10),2)>=REF(ZIG(3,10),3);
PL20:=ZIG(3,26);
EN3:=ZIG(3,20)>REF(ZIG(3,20),1) AND REF(ZIG(3,20),1)<=REF(ZIG(3,20),2) AND REF(ZIG(3,20),2)<=REF(ZIG(3,20),3);
EX3:=ZIG(3,20)<REF(ZIG(3,20),1) AND REF(ZIG(3,20),1)>=REF(ZIG(3,20),2) AND REF(ZIG(3,20),2)>=REF(ZIG(3,20),3);
PL40:=ZIG(3,55);
��ǿ1:=BARSLAST(PL5<REF(PL5,1));
����1:=BARSLAST(PL5>REF(PL5,1));
��ǿ2:=BARSLAST(PL10<REF(PL10,1));
����2:=BARSLAST(PL10>REF(PL10,1));
��ǿ3:=BARSLAST(PL20<REF(PL20,1));
����3:=BARSLAST(PL20>REF(PL20,1));
ZTJZ5:=IF(PL10>REF(PL10,1),COUNT(EN1,��ǿ2),0);
ZTJD5:=IF(PL10>REF(PL10,1),COUNT(EX1,��ǿ2),0);
DTJZ5:=IF(PL10<REF(PL10,1),COUNT(EN1,����2),0);
DTJD5:=IF(PL10<REF(PL10,1),COUNT(EX1,����2),0);
ZTJZ10:=IF(PL20>REF(PL20,1),COUNT(EN2,��ǿ3),0);
ZTJD10:=IF(PL20>REF(PL20,1),COUNT(EX2,��ǿ3),0);
DTJZ10:=IF(PL20<REF(PL20,1),COUNT(EN2,����3),0);
DTJD10:=IF(PL20<REF(PL20,1),COUNT(EX2,����3),0);
DRAWTEXT(EN1 AND DTJZ5=1,LOW*0.98,'A'),COLORCYAN;
DRAWTEXT(EX1 AND DTJD5=2,HIGH*1.02,'B'),COLORCYAN;
DRAWTEXT(EN2 AND ZTJZ5=1,LOW*0.98,'C'),COLORCYAN;
DRAWTEXT(EX1 AND PL10>REF(PL10,1) AND ZTJD5=1,HIGH*1.02,'��')COLORMAGENTA;
DRAWTEXT(EN1 AND PL10>REF(PL10,1) AND ZTJZ5=2,LOW*0.98,'��')COLORMAGENTA;
DRAWTEXT(EX1 AND PL10>REF(PL10,1) AND ZTJZ5=2,HIGH*1.02,'��'