‹ 返回

41220

41220 | 查看原文 ↗
🔧 核心通用·带A股选股过滤(核心可用 · 把'去ST/选板块/CODELIKE'那行删掉,美港马加都能跑)
周期:中线用途:只管进单(找买点/选股)(纯多·只做多)
📊 把公式 41220 实时算进主散博弈(纯技术函数;选股/筹码特殊函数会标注不支持) 
🧩 这个指标拆开看 = 哪些"积木"组合的
① 定方向(趋势)
均线类 MA/EMA — 一段时间的平均价,铺出趋势中枢、看多空排列
② 验量能(量价)
成交量/额 VOL — 量在价先——放量证实突破、缩量过滤假信号
④ 触发(信号扳机)
CROSS 交叉 — 两线金叉/死叉当买卖扳机
突破/计数/过滤 — 突破前高、信号计时与去重
搭条件的零件
HHV/LLV/REF 等 — 取区间最高最低、引用前N根——搭条件的零件
图上标注买卖点
画线/标注 — 在图上画柱、标买卖点、上色提示(只是显示,不是判断逻辑)
⚠️ A股专属(港股/美股/马股/加密都没有)
代码/板块/题材 — 按代码段、行业、概念、龙头筛选(A股特有)
去ST/风险股 — 剔除A股ST风险股
组合思路:用均线/MACD 定方向,再用量能验证真假,再用金叉/突破当买卖扳机。把几件事叠在一起同时成立,才算一个'信号'——叠得越多看着越细,但也越容易过度拟合。 ⚠️ 这条含 A股专属逻辑(涨停板/龙虎榜/代码板块)——只有大陆A股有这制度,港股、美股、马股、加密统统没有,这部分搬不过去。

指标公式

HIGHN:=10;LOWN:=10;HIGHDISPLAY:=0;LOWDISPLAY:=0;ZGDISPLAY:=0;MADISPLAY:=0;
AAB:=REF(H,HIGHN)=HHV(H,2*HIGHN+1);
QY:=BACKSET(AAB,HIGHN+1);
CC:=FILTER(QY,HIGHN) AND H=HHV(H,HIGHN+1);
DRAWICON(CC,H*1.005,2);
DDD:=BARSLAST(CC);
GDTS:=IF(CC,CURRBARSCOUNT,0);
DINGBU:=IF(DDD,REF(H,DDD),H);
DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS);
DINGBU1:=REF(DINGBU,DDD+1);
GDCS1:=CONST(DINGBUTS);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
GDCS2:=CONST(DINGBUTS1);
DINGBU2:=REF(DINGBU1,DDD+1);
MMM:=IF(CURRBARSCOUNT>GDCS2,0,1);
�ߵ�ѹ��:DRAWLINE(CURRBARSCOUNT=GDCS2,H,CURRBARSCOUNT=GDCS1,H,1) COLORGREEN,DOTLINE;
ѹ��A:DRAWLINE(CURRBARSCOUNT=GDCS2,H,ISLASTBAR,REF(H,GDCS2-1),1),COLOR0055FF,DOTLINE;
ѹ��B:DRAWLINE(CURRBARSCOUNT=GDCS1,H,ISLASTBAR,REF(H,GDCS1-1),1),COLORYELLOW,DOTLINE;
AA1:=REF(L,LOWN)=LLV(L,2*LOWN+1);
QY1:=BACKSET(AA1,LOWN+1);
CC1:=FILTER(QY1,LOWN) AND L=LLV(L,LOWN+1);
DD1:=BARSLAST(CC1);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
YDB:=IF(DD1,REF(L,DD1),L);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
DDCS1:=CONST(DDTS1);
ZDB:=REF(YDB,DD1+1);
DDTS2:=REF(DDTS1,DD1+1);
DDCS2:=CONST(DDTS2);
�͵�֧��:DRAWLINE(CURRBARSCOUNT=DDCS2,L,CURRBARSCOUNT=DDCS1,L,1) COLORRED,DOTLINE;
ZGSTAR:=(�ߵ�ѹ��+�͵�֧��)/2;
ZGEND:=CONST((�ߵ�ѹ��+�͵�֧��)/2);
STARDAY:=IF(DDCS2<GDCS2,DDCS2,GDCS2);
�й�:DRAWLINE(CURRBARSCOUNT=STARDAY,ZGSTAR,ISLASTBAR,ZGEND,1),POINTDOT,COLORFFBBFF,LINETHICK1;
TTT:=6;
A1:=REF(HIGH,6)=HHV(HIGH,2*TTT+1); B1:=FILTER(A1,TTT); C1:=BACKSET(B1,TTT+1); D1:=FILTER(C1,TTT);
A2:=REF(LOW,TTT)=LLV(LOW,2*TTT+1); B2:=FILTER(A2,TTT); C2:=BACKSET(B2,TTT+1); D2:=FILTER(C2,TTT);
E1:=(REF(LLV(LOW,2*TTT),1)+REF(HHV(HIGH,2*TTT),1))/2; E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
L1:=(D2 AND NOT(D1 AND E1<E2)); H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,LOW,10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1);
L2:=LD OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,HIGH,0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1);
UU:=BACKSET(BARSTATUS,BARSLAST(LD)+1);
VV:=UU>REF(UU,1);
WW:=BACKSET(VV,REF(BARSLAST(LD),1)+2);
XX:=WW>REF(WW,1);
UU2:=BACKSET(BARSTATUS,BARSLAST(HD)+1);
VV2:=UU2>REF(UU2,1);
WW2:=BACKSET(VV2,REF(BARSLAST(HD),1)+2);
XX2:=WW2>REF(WW2,1);
����A:REF(L,BARSLAST(VV)),COLORWHITE,LINETHICK1,DOTLINE;
����B:REF(L,BARSLAST(XX)),COLORLIRED,DOTLINE;
DRAWTEXT(CURRBARSCOUNT=8,�ߵ�ѹ��,STRCAT('ѹ������:',CON2STR(�ߵ�ѹ��,2))),COLORCYAN;
DRAWTEXT(CURRBARSCOUNT=8,�͵�֧��,STRCAT('֧������:',CON2STR(�͵�֧��,2))),COLORLIRED;
DRAWTEXT(CURRBARSCOUNT=15,�й�,STRCAT('�й�:',CON2STR(�й�,2))),COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=20,ѹ��A*0.995,STRCAT('ѹ��A:',CON2STR(ѹ��A,2))),COLORGREEN;
DRAWTEXT(CURRBARSCOUNT=12,ѹ��B*0.995,STRCAT('ѹ��B:',CON2STR(ѹ��B,2))),COLORBLUE;
DRAWTEXT(CURRBARSCOUNT=12,����A*1.005,STRCAT('←����A:',CON2STR(����A,2))),COLORRED;
DRAWTEXT(CURRBARSCOUNT=20,����B*1.005,STRCAT('←����B:',CON2STR(����B,2))),COLOR0018D8;
BDGD:=C=HHV(C,13);
GDSJ:=BARSLAST(FILTER(CROSS(0.8,BDGD),2))+1;
SAT:=(AMOUNT/C)/(HHV(AMOUNT,20)/HHV(C,20));
�ߵ�:REF(C,GDSJ),COLORFF00FF,POINTDOT;
ͻ��:CROSS(C,REF(�ߵ�,1)),COLOR00FFFF,POINTDOT,NODRAW;
STICKLINE(GDSJ<=6,�ߵ�,�ߵ�,3,0),COLORFF00FF;
DRAWTEXT(ͻ��,LOW,'��'),COLOR00FFFF;
BDDD:=C=LLV(C,13);
DDSJ:=BARSLAST(FILTER(CROSS(0.8,BDDD),2))+1;
�͵�:REF(C,DDSJ),COLOR00FF00,POINTDOT;
DRAWTEXT_FIX(1,0.85,0,20,''),COLOR0000FF;
���Ƿ�����:=350;
�ߵ�λ:=REFDATE(HHV(H,���Ƿ�����),DATE); 
�͵�λ:=REFDATE(LLV(L,���Ƿ�����),DATE);
��λ��:=REF(L,BARSLAST(�͵�λ=L)),COLORGREEN;
��λ��:=REF(H,BARSLAST(�ߵ�λ=H)),COLORRED,NODRAW;
������Ƿ�:=(��λ��-��λ��)/��λ��*100;
��ǰ�Ƿ�:=(C-��λ��)/��λ��*100;
ZFA:=CON2STR(CONST(������Ƿ�),2);
ZFB:=CON2STR(CONST(��ǰ�Ƿ�),2);
ZFC:=STRCAT('��������Ƿ�����',ZFA);
ZFD:=STRCAT(ZFC,'��');
ZFE:=STRCAT(ZFD,'����ǰ���Ƿ�����');
ZFF:=STRCAT(ZFE,ZFB);
ZFG:=STRCAT(ZFF,'��');
DRAWTEXT_FIX(ISLASTBAR,0,1,0,'�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~'),COLORRED;
DRAWTEXT_FIX(ISLASTBAR,0,1,0,ZFG),COLORYELLOW;
HJ_1:=CLOSE>REF(CLOSE,1) AND CLOSE>REF(CLOSE,2);
HJ_2:=REF(HJ_1,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_3:=REF(HJ_2,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_4:=REF(HJ_3,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_5:=REF(HJ_4,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_6:=REF(HJ_5,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_7:=REF(HJ_6,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_8:=REF(HJ_7,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_9:=REF(HJ_8,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_10:=REF(HJ_9,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_11:=REF(HJ_10,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_12:=REF(HJ_11,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_13:=CLOSE<REF(CLOSE,1) AND CLOSE<REF(CLOSE,2);
HJ_14:=REF(HJ_13,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_15:=REF(HJ_14,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_16:=REF(HJ_15,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_17:=REF(HJ_16,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_18:=REF(HJ_17,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_19:=REF(HJ_18,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_20:=REF(HJ_19,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_21:=REF(HJ_20,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_22:=REF(HJ_21,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_23:=REF(HJ_22,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
HJ_24:=REF(HJ_23,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
HJ_25:=REF(HJ_13 OR HJ_14 OR HJ_15 OR HJ_16 OR HJ_17 OR HJ_18 OR HJ_19 OR HJ_20 OR HJ_21 OR HJ_22 OR HJ_23 OR HJ_24,1) AND HJ_1;
DRAWICON(FILTER(HJ_25=1,5),LOW,9);
ͣ:=DATETODAY(DATE) - DATETODAY(REF(DATE,1));
DRAWTEXT(ͣ>10,O,VARCAT('ͣ',VAR2STR(ͣ,0))),COLORGREEN;
DRAWTEXT(ͣ>10,O,'ͣ ��'),COLORGREEN;
RC1:=REF(C,1);
������:=C<0.96*O OR C<=RC1*0.96 OR C>1000 AND C<=RC1*0.98;
����T:=BARSLAST(FILTER(������,3));
����ʵ��: REF(O,����T),COLORLIGREEN,POINTDOT;;
������һ: REF((L+H)/2,����T),NODRAW;
DRAWTEXT_FIX(ISLASTBAR,0,0,0,HYBLOCK);
DRAWTEXT_FIX(ISLASTBAR,0.05,0,0,DYBLOCK);
DRAWTEXT_FIX(ISLASTBAR,0.1,0,0,GNBLOCK);;
AA:=(C-REF(C,1))/REF(C,1)*100;
ZS:=(NAMELIKE('ST') OR NAMELIKE('*ST') OR NAMELIKE('S')) AND AA>=4.945;
DS:=(NAMELIKE('ST') OR NAMELIKE('*ST') OR NAMELIKE('S')) AND AA<=-4.945;
��ͣ��:IF(ZS,REF(C,1)*1.05,REF(C,1)*1.1),NODRAW;
��ͣ��:IF(DS,REF(C,1)*0.95,REF(C,1)*0.9),NODRAW;
��ϵ��:=1.3;
����:=1;
�ٽ��:=0;
MA5:=MA(C,5);
MA10:=MA(C,10);
MA20:=MA(C,20);
����:=MA5>REF(MA5,1) AND MA10<REF(MA10,1) AND MA20<REF(MA20,1);
RV1:=REF(V,1);
RV2:=REF(V,2);
RV3:=REF(V,3);
RC2:=REF(C,2);
RC3:=REF(C,3);
RC4:=REF(C,4);
RO1:=REF(O,1);
RO2:=REF(O,2);
RO3:=REF(O,3);
RO4:=REF(O,4);
���Ƽ۶�:=C>=RC3 AND RC1>=RC3 AND RC2>=RC3;
���Ƽ۵�:=L>RO3 AND REF(L,1)>RO3 AND REF(L,2)>RO3;
����:=AMOUNT/VOL/100;
RJ1:=REF(����,1);
RJ2:=REF(����,2);
����:=C>=O OR (C<O AND ����>RC1);
���ն���:=COUNT(����,3)>=2;
��������:=RC3>RO3;
�۽���:=(����>=RJ1 OR C>RC1) AND (RJ1>=RJ2 OR RC1>=RC2);
������:=(C+RC1+RC2)/3>RC3;
������:=V>RV1 AND RV1>RV2 ;
������:=V<=RV1 AND RV1<=RV2 ;
������:=(V+RV1+RV2)/3<=RV3 AND NOT(������);
�ռ�����:=C/V;
�ռ�������:=�ռ�����>=REF(�ռ�����,1) AND REF(�ռ�����,1)>=REF(�ռ�����,2);
��������:=(C+RC1+RC2)/3/RC3;
��������:=(V+RV1+RV2)/3/RV3;
������:=��ϵ��*��������/��������>1;
��ǰ����:=RO3>RC4 AND RC4>RO4;
�ƽ���1T:=�������� AND �۽��� AND ������ AND ���Ƽ۶� AND ���Ƽ۵� AND ��ǰ����;
BACKSET101T:=BACKSET(�ƽ���1T,5);
FILTER101T:=FILTER(BACKSET101T,4);
�ƽ���1:=�������� AND �۽��� AND ������ AND ���Ƽ۶� AND ���Ƽ۵� ;
BACKSET101:=BACKSET(�ƽ���1,4);
FILTER101:=FILTER(BACKSET101,3);
�ƽ���11:=�ƽ���1 AND REF(�ƽ���1,1);
BACKSET1011:=BACKSET(�ƽ���11,4);
FILTER1011:=FILTER(BACKSET1011,3);
�ƽ���12:=�ƽ���1 AND REF(�ƽ���1,2);
BACKSET1012:=BACKSET(�ƽ���12,4);
FILTER1012:=FILTER(BACKSET1012,3);
�ƽ���13:=�ƽ���1 AND REF(�ƽ���1,3);
BACKSET1013:=BACKSET(�ƽ���13,4);
FILTER1013:=FILTER(BACKSET1013,3);
�ƽ���2T:=�������� AND �۽��� AND ������ AND NOT(������) AND ���Ƽ۶� AND ���Ƽ۵� AND ��ǰ���� AND NOT(�ƽ���1) AND NOT(�ƽ���1T);
BACKSET201T:=BACKSET(�ƽ���2T,5);
FILTER201T:=FILTER(BACKSET201T,4);
�ƽ���2:=�������� AND �۽��� AND ������ AND NOT(������) AND ���Ƽ۶� AND ���Ƽ۵� AND NOT(�ƽ���1) AND NOT(�ƽ���1T);
BACKSET201:=BACKSET(�ƽ���2,4);
FILTER201:=FILTER(BACKSET201,3);
�ƽ���21:=�ƽ���2 AND REF(�ƽ���2,1);
BACKSET2011:=BACKSET(�ƽ���21,4);
FILTER2011:=FILTER(BACKSET2011,3);
�ƽ���22:=�ƽ���2 AND REF(�ƽ���2,2);
BACKSET2012:=BACKSET(�ƽ���22,4);
FILTER2012:=FILTER(BACKSET2012,3);
�ƽ���23:=�ƽ���2 AND REF(�ƽ���2,3);
BACKSET2013:=BACKSET(�ƽ���23,4);
FILTER2013:=FILTER(BACKSET2013,3);
�ƽ���3T:=�������� AND ������ AND ������ AND ���Ƽ۶� AND ���Ƽ۵� AND ��ǰ���� AND NOT(�ƽ���1) AND NOT(�ƽ���2) AND NOT(�ƽ���1T) AND NOT(�ƽ���2T);
BACKSET301T:=