‹ 返回

44977

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

指标公式

ʱ��:=4;
A:=H=HHV(H,ʱ��*5) AND HHV(H,ʱ��*5)>REF(HHV(H,ʱ��*5),1);
B:=L=LLV(L,ʱ��*5) AND LLV(L,ʱ��*5)<REF(LLV(L,ʱ��*5),1);
CC1:DRAWLINE(A,H,B,L,0);
CC2:DRAWLINE(B,L,A,H,0);
N:=(0,1,1);
�ֲ��͵�ԤѡA:=BACKSET(LLV(L,5)<REF(LLV(L,4),1),4);
�ֲ��͵�ԤѡB:=BACKSET(�ֲ��͵�ԤѡA=0 AND REF(�ֲ��͵�ԤѡA,1)=1,2);
�ֲ��͵�ԤѡC:=IF(�ֲ��͵�ԤѡB=1 AND REF(�ֲ��͵�ԤѡB,1)=0,-1,0);
�ֲ��ߵ�ԤѡA:=BACKSET(HHV(H,5)>REF(HHV(H,4),1),4);
�ֲ��ߵ�ԤѡB:=BACKSET(�ֲ��ߵ�ԤѡA=0 AND REF(�ֲ��ߵ�ԤѡA,1)=1,2);
�ֲ��ߵ�ԤѡC:=IF(�ֲ��ߵ�ԤѡB=1 AND REF(�ֲ��ߵ�ԤѡB,1)=0,1,0);
ȱ���ж�:=IF(L>REF(H,1),1,IF(H<REF(L,1),-1,0));
��ǰ����:=BARSLAST(�ֲ��ߵ�ԤѡC=1);
��ǰ����:=BARSLAST(�ֲ��͵�ԤѡC=-1);
Сֵ����:=LOWRANGE(L);
��ֵ����:=TOPRANGE(H);
�ͱ���AA:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����,1)>REF(��ǰ����,1) AND LLV(L,��ǰ����+1)<REF(LLV(L,��ǰ����+1),1),-1,0);
�ͱ���AB:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����,1)<=REF(��ǰ����,1) AND (��ǰ����>=4 OR LLV(ȱ���ж�,��ǰ����)=-1 OR LLV(L,��ǰ����+2)<REF(LLV(L,��ǰ����+1),1)),-1,0);
�ͱ���S:=IF((�ͱ���AA=-1 OR �ͱ���AB=-1) AND L<REF(H,��ǰ����+1),-1,0);
Ԥ��:=IF((��ǰ����<4 AND HHV(ȱ���ж�,��ǰ����)!=1) OR REF(�ͱ���S,��ǰ����)=0,1,0);
�ж�:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����,1)<=REF(��ǰ����,1) AND Ԥ��=1 AND ��ֵ����>REF(Сֵ����,��ǰ����+1) AND ��ֵ����>REF(Сֵ����,��ǰ����) AND ��ֵ����>REF(��ֵ����,��ǰ����),1,0);
�߱���A:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����,1)>REF(��ǰ����,1) AND HHV(H,��ǰ����+1)>REF(HHV(H,��ǰ����+1),1),1,0);
�߱���B:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����,1)<=REF(��ǰ����,1) AND REF(�ͱ���S,��ǰ����)=-1 AND (��ǰ����>=4 OR HHV(ȱ���ж�,��ǰ����)=1),1,0);
�߱���:=IF((�߱���A=1 OR �߱���B=1 OR �ж�=1) AND H>REF(L,��ǰ����+1),1,0);
Ԥ��A:=IF((��ǰ����<4 AND HHV(ȱ���ж�,��ǰ����)!=1) OR REF(�߱���,��ǰ����)=0,1,0);
�ж�A:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����,1)<=REF(��ǰ����,1) AND Ԥ��A=1 AND Сֵ����>REF(��ֵ����,��ǰ����+1) AND Сֵ����>REF(��ֵ����,��ǰ����) AND Сֵ����>REF(Сֵ����,��ǰ����),-1,0);
�ͱ���A:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����,1)>REF(��ǰ����,1) AND LLV(L,��ǰ����+1)<REF(LLV(L,��ǰ����+1),1),-1,0);
�ͱ���B:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����,1)<=REF(��ǰ����,1) AND (��ǰ����>=4 OR LLV(ȱ���ж�,��ǰ����)=-1 OR �ж�A=-1),-1,0);
�ͱ���:=IF((�ͱ���A=-1 OR �ͱ���B=-1) AND L<REF(H,��ǰ����+1),-1,0);
��ǰ����A:=BARSLAST(�߱���=1);
��ǰ����A:=BARSLAST(�ͱ���=-1);
Ԥ��X:=IF((��ǰ����A<4 AND HHV(ȱ���ж�,��ǰ����A)!=1) OR REF(�ͱ���,��ǰ����A)=0,1,0);
�ж�X:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����A,1)<=REF(��ǰ����A,1) AND Ԥ��X=1 AND ��ֵ����>REF(Сֵ����,��ǰ����A+1) AND ��ֵ����>REF(Сֵ����,��ǰ����A) AND ��ֵ����>REF(��ֵ����,��ǰ����A),1,0);
�߱���XA:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����A,1)>REF(��ǰ����A,1) AND HHV(H,��ǰ����A+1)>REF(HHV(H,��ǰ����A+1),1),1,0);
�߱���XB:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����A,1)<=REF(��ǰ����A,1) AND REF(�ͱ���,��ǰ����A)=-1 AND (��ǰ����A>=4 OR HHV(ȱ���ж�,��ǰ����A)=1),1,0);
�߱���X:=IF((�߱���XA=1 OR �߱���XB=1 OR �ж�X=1) AND H>REF(L,��ǰ����A+1),1,0);
Ԥ��XA:=IF((��ǰ����A<4 AND HHV(ȱ���ж�,��ǰ����A)!=1) OR REF(�߱���XA,��ǰ����A)=0,1,0);
�ж�XA:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����A,1)<=REF(��ǰ����A,1) AND Ԥ��XA=1 AND Сֵ����>REF(��ֵ����,��ǰ����A+1) AND Сֵ����>REF(��ֵ����,��ǰ����A) AND Сֵ����>REF(Сֵ����,��ǰ����A),-1,0);
�ͱ���XA:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����A,1)>REF(��ǰ����A,1) AND LLV(L,��ǰ����A+1)<REF(LLV(L,��ǰ����A+1),1),-1,0);
�ͱ���XB:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����A,1)<=REF(��ǰ����A,1) AND (��ǰ����A>=4 OR LLV(ȱ���ж�,��ǰ����A)=-1 OR �ж�XA=-1),-1,0);
�ͱ���X:=IF((�ͱ���XA=-1 OR �ͱ���XB=-1) AND L<REF(H,��ǰ����A+1),-1,0);
��ǰ����YA:=BARSLAST(�߱���X=1);
��ǰ����YA:=BARSLAST(�ͱ���X=-1);
Ԥ��YX:=IF((��ǰ����YA<4 AND HHV(ȱ���ж�,��ǰ����YA)!=1) OR REF(�ͱ���X,��ǰ����YA)=0,1,0);
�ж�YX:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����YA,1)<=REF(��ǰ����YA,1) AND Ԥ��YX=1 AND ��ֵ����>REF(Сֵ����,��ǰ����YA+1) AND ��ֵ����>REF(Сֵ����,��ǰ����YA) AND ��ֵ����>REF(��ֵ����,��ǰ����YA),1,0);
�߱���YXA:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����YA,1)>REF(��ǰ����YA,1) AND HHV(H,��ǰ����YA+1)>REF(HHV(H,��ǰ����YA+1),1),1,0);
�߱���YXB:=IF(�ֲ��ߵ�ԤѡC=1 AND REF(��ǰ����YA,1)<=REF(��ǰ����YA,1) AND REF(�ͱ���X,��ǰ����YA)=-1 AND (��ǰ����YA>=4 OR HHV(ȱ���ж�,��ǰ����YA)=1),1,0);
�߱���YX:=IF((�߱���YXA=1 OR �߱���YXB=1 OR �ж�YX=1) AND H>REF(L,��ǰ����YA+1),1,0);
Ԥ��YXA:=IF((��ǰ����YA<4 AND HHV(ȱ���ж�,��ǰ����YA)!=1) OR REF(�߱���YXA,��ǰ����YA)=0,1,0);
�ж�YXA:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����YA,1)<=REF(��ǰ����YA,1) AND Ԥ��YXA=1 AND Сֵ����>REF(��ֵ����,��ǰ����YA+1) AND Сֵ����>REF(��ֵ����,��ǰ����YA) AND Сֵ����>REF(Сֵ����,��ǰ����YA),-1,0);
�ͱ���YXA:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����YA,1)>REF(��ǰ����YA,1) AND LLV(L,��ǰ����YA+1)<REF(LLV(L,��ǰ����YA+1),1),-1,0);
�ͱ���YXB:=IF(�ֲ��͵�ԤѡC=-1 AND REF(��ǰ����YA,1)<=REF(��ǰ����YA,1) AND (��ǰ����YA>=4 OR LLV(ȱ���ж�,��ǰ����YA)=-1 OR �ж�YXA=-1),-1,0);
�ͱ���YX:=IF((�ͱ���YXA=-1 OR �ͱ���YXB=-1) AND L<REF(H,��ǰ����YA+1),-1,0);
AAAD:=IF(�߱���YX=1 AND �ͱ���YX=-1 AND H>REF(H,REF(��ǰ����YA,1)+2),1,IF(�߱���YX=1 AND �ͱ���YX=-1 AND L<REF(L,REF(��ǰ����YA,1)+2),-1,0));
���㱣��:=IF(AAAD=0,�߱���YX+�ͱ���YX,AAAD);
�ֲ�����:IF(���㱣��=-1,L,IF(���㱣��=1,H,DRAWNULL)),CIRCLEDOT,COLORLIMAGENTA;
C1:DRAWLINE(���㱣��=-1,�ֲ�����,���㱣��=1,�ֲ�����,0),COLORLIGRAY;
C2:DRAWLINE(���㱣��=1,�ֲ�����,���㱣��=-1,�ֲ�����,0),COLORLIGRAY;
����:=IF(N=1,C2=C1 AND �ֲ��ߵ�ԤѡA AND ���㱣��=1,DRAWNULL);
����:=IF(N=1,C2=C1 AND �ֲ��͵�ԤѡA AND ���㱣��=-1,DRAWNULL);
A1:=BARSLAST(����);B1:=CURRBARSCOUNT=CONST(A1)+1;D1:=BARSLAST(B1);��1:=CONST(REF(H,D1));
A2:=REF(A1,A1+1)+A1+1;B2:=CURRBARSCOUNT=CONST(A2)+1;D2:=BARSLAST(B2);��2:=CONST(REF(H,D2));
A3:=REF(A2,A1+1)+A1+1;B3:=CURRBARSCOUNT=CONST(A3)+1;D3:=BARSLAST(B3);��3:=CONST(REF(H,D3));
DA1:=BARSLAST(����);DB1:=CURRBARSCOUNT=CONST(DA1)+1;DD1:=BARSLAST(DB1);��1:=CONST(REF(L,DD1));
DA2:=REF(DA1,DA1+1)+DA1+1;DB2:=CURRBARSCOUNT=CONST(DA2)+1;DD2:=BARSLAST(DB2);��2:=CONST(REF(L,DD2));
DA3:=REF(DA2,DA1+1)+DA1+1;DB3:=CURRBARSCOUNT=CONST(DA3)+1;DD3:=BARSLAST(DB3);��3:=CONST(REF(L,DD3));
�����ͷŴ�A:=��1<��2 AND ��2>��1 AND DA2>A1 AND A1>DA1 AND A2>DA2 AND CONST(C)>��2;
����A1:=IF(�����ͷŴ�A AND CONST(C)<��1,DB2,DRAWNULL);
STICKLINE(����A1,CONST(C),��2,0,0),COLORLIMAGENTA;
����A2:=IF(�����ͷŴ�A AND CONST(C)<��1,ISLASTBAR,DRAWNULL);
STICKLINE(����A2,CONST(C),��2,0,0),COLORLIMAGENTA;
DRAWLINE(����A1=1,CONST(C),����A2=1,CONST(C),0),DOTLINE,COLORLIMAGENTA;
DRAWLINE(����A1=1,��2,����A2=1,��2,0),COLORLIMAGENTA;
����AC1:=IF(�����ͷŴ�A AND CONST(C)>=��1,DB2,DRAWNULL);
STICKLINE(����AC1,��1,��1,0,0),COLORLIMAGENTA;
����AC2:=IF(�����ͷŴ�A AND CONST(C)>=��1,ISLASTBAR,DRAWNULL);
STICKLINE(����AC2,��1,��1,0,0),COLORLIMAGENTA;
DRAWLINE(����AC1=1,��1,����AC2=1,��1,0),COLORLIMAGENTA;
DRAWLINE(����AC1=1,��1,����AC2=1,��1,0),COLORLIMAGENTA;
�����ͷŴ�B:=��1>��2 AND ��1>��2 AND DA1>A1 AND A2>DA1 AND DA2>A2 AND CONST(C)<��2;
����B1:=IF(�����ͷŴ�B AND CONST(C)>��1,B2,DRAWNULL);
STICKLINE(����B1,CONST(C),��2,0,0),COLORGREEN;
����B2:=IF(�����ͷŴ�B AND CONST(C)>��1,ISLASTBAR,DRAWNULL);
STICKLINE(����B2,CONST(C),��2,0,0),COLORGREEN;
DRAWLINE(����B1=1,��2,����B2=1,��2,0),COLORGREEN;
DRAWLINE(����B1=1,CONST(C),����B2=1,CONST(C),0),DOTLINE,COLORGREEN;
����BC1:=IF(�����ͷŴ�B AND CONST(C)<=��1,B2,DRAWNULL);
STICKLINE(����BC1,��2,��1,0,0),COLORGREEN;
����BC2:=IF(�����ͷŴ�B AND CONST(C)<=��1,ISLASTBAR,DRAWNULL);
STICKLINE(����BC2,��2,��1,0,0),COLORGREEN;
DRAWLINE(����BC1=1,��2,����BC2=1,��2,0),COLORGREEN;
DRAWLINE(����BC1=1,��1,����BC2=1,��1,0),COLORGREEN;
����������A:=��1>��2 AND ��2>��1 AND DA2>A1 AND A1>DA1 AND A2>DA2 AND CONST(C)>��1;
����C1:=IF(����������A AND CONST(C)<��1,DB2,DRAWNULL);
STICKLINE(����C1,CONST(C),��1,0,0),COLORYELLOW;
����C2:=IF(����������A AND CONST(C)<��1,ISLASTBAR,DRAWNULL);
STICKLINE(����C2,CONST(C),��1,0,0),COLORYELLOW;
DRAWLINE(����C1=1,CONST(C),����C2=1,CONST(C),0),DOTLINE,COLORYELLOW;
DRAWLINE(����C1=1,��1,����C2=1,��1,0),COLORYELLOW;
����CC1:=IF(����������A AND CONST(C)>=��1,DB2,DRAWNULL);
STICKLINE(����CC1,��1,��1,0,0),COLORYELLOW;
����CC2:=IF(����������A AND CONST(C)>=��1,ISLASTBAR,DRAWNULL);
STICKLINE(����CC2,��1,��1,0,0),COLORYELLOW;
DRAWLINE(����CC1=1,��1,����CC2=1,��1,0),COLORYELLOW;
DRAWLINE(����CC1=1,��1,����CC2=1,��1,0),COLORYELLOW;
����������B:=��1>��2 AND ��1<��2 AND DA1>A1 AND A2>DA1 AND DA2>A2 AND CONST(C)<��1;
����D1:=IF(����������B AND CONST(C)>��1,B2,DRAWNULL);
STICKLINE(����D1,CONST(C),��1,0,0),COLORLICYAN;
����D2:=IF(����������B AND CONST(C)>��1,ISLASTBAR,DRAWNULL);
STICKLINE(����D2,CONST(C),��1,0,0),COLORLICYAN;
DRAWLINE(����D1=1,��1,����D2=1,��1,0),COLORLICYAN;
DRAWLINE(����D1=1,CONST(C),����D2=1,CONST(C),0),DOTLINE,COLORLICYAN;
����DC1:=IF(����������B AND CONST(C)<=��1,B2,DRAWNULL);
STICKLINE(����DC1,��1,��1,0,0),COLORLICYAN;
����DC2:=IF(����������B AND CONST(C)<=��1,ISLASTBAR,DRAWNULL);
STICKLINE(����DC2,��1,��1,0,0),COLORLICYAN;
DRAWLINE(����DC1=1,��1,����DC2=1,��1,0),COLORLICYAN;
DRAWLINE(����DC1=1,��1,����DC2=1,��1,0),COLORLICYAN;