‹ 返回

51059

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

指标公式

����΢��:=3;
��λC:=0;
��λD:=0;
�ֶ�����:=1;
�����߿���:=1;
���׿���:=1;
DRAWTEXT_FIX(1,0.72,0.003,1,'˵��: ����Զ�ѡ�㲻�ԣ��ɰ�ALT+T��������������������������΢�������ϵ�λ��ȱʡֵΪ“3”�����׿����ǿ�����رջ�ɫ������ɫ�׵��ź�֮�á�
��λC����λD���ֶ�����K�߸����������ֶ�Ԥ�⡣'),COLORYELLOW;
AR1:=BARSCOUNT(C);
AR2:=CONST(AR1);
AR3:=AR2-AR1;
K�߸���:AR3+1,NODRAW,COLORYELLOW;
KDJA :=3*SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1)-2*SMA(SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1),3,1),NODRAW;
STICKLINE(���׿���>0 AND (KDJA >=90),CLOSE,OPEN,2.5,0),COLOR0088FF;
STICKLINE(���׿���>0 AND (KDJA >=90),H,L,0,0),COLOR0088FF;
STICKLINE(���׿���>0 AND (KDJA <=10),CLOSE,OPEN,2.5,0),COLORFF0000;
STICKLINE(���׿���>0 AND (KDJA <=10),H,L,0,0),COLORFF0000;
A1:=REF(HIGH,����΢��)=HHV(HIGH,2*3+1);
B1:=FILTER(A1,����΢��);
C1:=BACKSET(B1,����΢��+1);
D1:=FILTER(C1,����΢��);
A2:=REF(LOW,����΢��)=LLV(LOW,2*3+1);
B2:=FILTER(A2,����΢��);
C2:=BACKSET(B2,����΢��+1);
D2:=FILTER(C2,����΢��);
E1:=(REF(LLV(LOW,2*3),1)+REF(HHV(HIGH,2*3),1))/2;
E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(CLOSE)=1;
H2:=D1 AND NOT(D2 AND E1>=E2);
L1:=D2 AND NOT(D1 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 ISLASTBAR 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);
A3:=H;
B3:=REF(H,REF(BARSLAST(HD),1)+1)>REF(H,REF(BARSLAST(HD),1)+2+REF(BARSLAST(HD),REF(BARSLAST(HD),1)+2));
D3:=A3 AND B3 AND HD;
E3:=BACKSET(D3,REF(BARSLAST(HD),1)+2);
HH:=E3>REF(E3,1);
A4:=L>REF(L,REF(BARSLAST(LD),1)+1);
B4:=REF(L,REF(BARSLAST(LD),1)+1); D4:=A4 AND B4 AND LD;
E4:=BACKSET(D4,REF(BARSLAST(LD),1)+2);
LL:=E4>REF(E4,1);
H3:=HH OR ISLASTBAR OR BARSCOUNT(C)=1;
X3:=REF(BARSLAST(H3),1)+1;
F3:=BACKSET(H3 AND COUNT(LL,X3)>0,LLVBARS(IF(LL,L,POW(10,20)),X3));
G3:=F3>REF(F3,1);
I3:=BACKSET(G3,2);
LZ:=I3>REF(I3,1);
L4:=LZ OR ISLASTBAR OR BARSCOUNT(C)=1;
X4:=REF(BARSLAST(L4),1)+1;
F4:=BACKSET(L4 AND COUNT(HH,X4)>0,HHVBARS(IF(HH,H,-POW(10,20)),X4));
G4:=F4>REF(F4,1);
I4:=BACKSET(G4,2);
HZ:=I4>REF(I4,1);
K1:=BACKSET(ISLASTBAR,MIN(BARSLAST(HZ),BARSLAST(LZ))+1);
K2:=K1>REF(K1,1);
UU:=BACKSET(ISLASTBAR,BARSLAST(LD)+1);
VV:=UU>REF(UU,1);
WW:=BACKSET(VV,REF(BARSLAST(LD),1)+2);
XX:=WW>REF(WW,1);
UU2:=BACKSET(ISLASTBAR,BARSLAST(HD)+1);
VV2:=UU2>REF(UU2,1);
WW2:=BACKSET(VV2,REF(BARSLAST(HD),1)+2);
XX2:=WW2>REF(WW2,1);
�ߵ�:=BARSLAST(HD);
�͵�:=BARSLAST(LD);
J1:=BACKSET(ISLASTBAR,MIN(�ߵ�,�͵�)+1);
J2:=J1>REF(J1,1);
IF(�����߿���=1,DRAWLINE(LD,L,HD,H,0),DRAWNULL)LINETHICK1,DOTLINE,COLOR0000FF;
IF(�����߿���=1,DRAWLINE(HD,H,LD,L,0),DRAWNULL)LINETHICK1,DOTLINE,COLORYELLOW;
K:=CURRBARSCOUNT,NODRAW;
DRAWNUMBER(�����߿���=1 AND HD,H,K),COLORLIRED,DRAWABOVE;
DRAWNUMBER(�����߿���=1 AND LD,L,K),COLORFFFF00;
��λ��:REF(REF(H,�ߵ�),1),COLORRED,NODRAW;
��λ��:REF(REF(L,�͵�),1),COLORGREEN,NODRAW;
GGA:=IFC(�ߵ�<�͵� AND ��λ��>��λ�� AND LOW>=��λ��,��λ��,DRAWNULL);
LLA:=IFC(�ߵ�<�͵� AND ��λ��>��λ��,��λ��,DRAWNULL);
PB1A:=POW(LLA,0.382)*POW(GGA,0.618);
PB2A:=SQRT(LLA*GGA);
PB3A:=POW(LLA,0.618)*POW(GGA,0.382);
PB4A:=POW(LLA,0.875)*POW(GGA,0.125);
PB1:DRAWLINE(VV2,CONST(PB1A),CURRBARSCOUNT=1,CONST(PB1A),1),COLORFF8800,DOTLINE;
PB2:DRAWLINE(VV2,CONST(PB2A),CURRBARSCOUNT=1,CONST(PB2A),1),COLORFF8800,DOTLINE;
PB3:DRAWLINE(VV2,CONST(PB3A),CURRBARSCOUNT=1,CONST(PB3A),1),COLORFF8800,DOTLINE;
PB4:DRAWLINE(VV2,CONST(PB4A),CURRBARSCOUNT=1,CONST(PB4A),1),COLORFF8800,DOTLINE;
DRAWTEXT(VV2,CONST(PB1A),VARCAT('PB1=',VAR2STR(CONST(PB1A),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(PB2A),VARCAT('PB2=',VAR2STR(CONST(PB2A),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(PB3A),VARCAT('PB3=',VAR2STR(CONST(PB3A),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(PB4A),VARCAT('PB4=',VAR2STR(CONST(PB4A),2))),COLORWHITE;
DRAWTEXT(VV,L,VARCAT('���A��',VAR2STR(L,2))),COLORGREEN;
DRAWTEXT(VV2,H,VARCAT('���B��',VAR2STR(H,2))),COLORRED;
STICKLINE(VV2,H,CONST(PB4A),0,0),COLORFF8800;
IFC(�ߵ�<�͵� AND ��λ��>��λ�� AND LOW>=��λ��,DRAWLINE(VV,L,VV2,H,0),DRAWNULL),COLORFF8800,LINETHICK2;
DRAWLINE(VV2,H,CURRBARSCOUNT=1,CONST(PB4A),0),COLORFF8800,DOTLINE;
DRAWICON(CURRBARSCOUNT=XX,L,38);
DRAWICON(CURRBARSCOUNT=VV2,H,39);
������λ:=REF(REF(H,�ߵ�),1),COLORRED,NODRAW;
������λ:=REF(REF(L,�͵�),1),COLORGREEN,NODRAW;
GGB:=IFC(�ߵ�>�͵� AND ������λ>������λ AND HIGH<=������λ,������λ,DRAWNULL);
LLB:=IFC(�ߵ�>�͵� AND ������λ>������λ,������λ,DRAWNULL);
PS1B:=POW(GGB,0.382)*POW(LLB,0.618);
PS2B:=SQRT(GGB*LLB);
PS3B:=POW(GGB,0.618)*POW(LLB,0.382);
PS4B:=POW(GGB,0.875)*POW(LLB,0.125);
PS1:DRAWLINE(VV,CONST(PS1B),CURRBARSCOUNT=1,CONST(PS1B),1),COLORMAGENTA,DOTLINE;
PS2:DRAWLINE(VV,CONST(PS2B),CURRBARSCOUNT=1,CONST(PS2B),1),COLORMAGENTA,DOTLINE;
PS3:DRAWLINE(VV,CONST(PS3B),CURRBARSCOUNT=1,CONST(PS3B),1),COLORMAGENTA,DOTLINE;
PS4:DRAWLINE(VV,CONST(PS4B),CURRBARSCOUNT=1,CONST(PS4B),1),COLORMAGENTA,DOTLINE;
DRAWTEXT(VV,CONST(PS1B),VARCAT('PS1=',VAR2STR(CONST(PS1B),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(PS2B),VARCAT('PS2=',VAR2STR(CONST(PS2B),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(PS3B),VARCAT('PS3=',VAR2STR(CONST(PS3B),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(PS4B),VARCAT('PS4=',VAR2STR(CONST(PS4B),2))),COLORYELLOW;
DRAWLINE(VV,L,CURRBARSCOUNT=1,CONST(PS4B),0),COLORMAGENTA,DOTLINE;
STICKLINE(VV,L,CONST(PS4B),0,0),COLORMAGENTA;
IFC(�ߵ�>�͵� AND ������λ>������λ AND HIGH<=������λ,DRAWLINE(VV2,H,VV,L,0),DRAWNULL),COLORMAGENTA,LINETHICK2;
DRAWICON(VV,L,38);
DRAWICON(VV2,H,39);
ǰ��2:=BARSLAST(XX2),NODRAW;
��λ2:=BARSLAST(VV),NODRAW;
�θ�2:=BARSLAST(VV2),NODRAW;
ǰ��2:=BARSLAST(XX),NODRAW;
ǰ�߼�:=REF(REF(H,ǰ��2),1),COLORLIRED,NODRAW;
�ͼ�:=REF(REF(L,��λ2),1),COLORGREEN,NODRAW;
�θ߼�:=REF(REF(H,�θ�2),1),COLORYELLOW,NODRAW;
MH11:=ǰ�߼�,NODRAW;
MH21:=�ͼ�,NODRAW;
MH31:=�θ߼�,NODRAW;
LY11:=ǰ�߼�=0,NODRAW;
LY21:=�ͼ�=0,NODRAW;
LY31:=�θ߼�=0,NODRAW;
VVM11:=IF(ǰ��2>��λ2,MH11,LY11)NODRAW;
VVM21:=IF(��λ2>�θ�2,MH21,LY21)NODRAW;
VVM41:=IF(ǰ�߼�>�θ߼�,MH31,LY31)NODRAW;
VVM51:=IF(LOW<=MH21,MH21,LY21)NODRAW;
CL4:=VVM11 AND VVM21 AND VVM41 AND VVM51,COLOR00FFFF,NODRAW;
�����������:=CL4,COLORRED,NODRAW;
GGC:=IFC(CL4,MH11,LY11);
LLC:=IFC(CL4,MH21,LY21);
GDC:=IFC(CL4,MH31,LY31);
VAR1:=(LLC/GGC);
HB1C:=POW(VAR1,0.618)*GDC;
HB2C:=(LLC/GGC)*GDC;
HB3C:=POW(VAR1,1.382)*GDC;
HB4C:=POW(VAR1,1.875)*GDC;
HB1:DRAWLINE(VV2,CONST(HB1C),CURRBARSCOUNT=1,CONST(HB1C),1),COLORGREEN,DOTLINE;
HB2:DRAWLINE(VV2,CONST(HB2C),CURRBARSCOUNT=1,CONST(HB2C),1),COLORGREEN,DOTLINE;
HB3:DRAWLINE(VV2,CONST(HB3C),CURRBARSCOUNT=1,CONST(HB3C),1),COLORGREEN,DOTLINE;
HB4:DRAWLINE(VV2,CONST(HB4C),CURRBARSCOUNT=1,CONST(HB4C),1),COLORGREEN,DOTLINE;
DRAWTEXT(VV2,CONST(HB1C),VARCAT('HB1=',VAR2STR(CONST(HB1C),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(HB2C),VARCAT('HB2=',VAR2STR(CONST(HB2C),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(HB3C),VARCAT('HB3=',VAR2STR(CONST(HB3C),2))),COLORWHITE;
DRAWTEXT(VV2,CONST(HB4C),VARCAT('HB4=',VAR2STR(CONST(HB4C),2))),COLORWHITE;
DRAWTEXT(XX2,H,VARCAT('3��(ǰ��)',VAR2STR(H,2))),COLORLIRED;
STICKLINE(VV2,H,CONST(HB4C),0,-1),COLORGREEN;
IFC(CL4,DRAWLINE(XX2,H,VV,L,0),DRAWNULL)COLORFF8080,LINETHICK2;
IFC(CL4,DRAWLINE(VV,L,VV2,H,0),DRAWNULL)COLORFF8080,LINETHICK2;
DRAWLINE(VV2,H,CURRBARSCOUNT=1,CONST(HB4C),1),COLORGREEN,DOTLINE;
DRAWICON(XX2,H,39);
ǰ��:=BARSLAST(XX),NODRAW;
��λ:=BARSLAST(VV2),NODRAW;
�ε�:=BARSLAST(VV),NODRAW;
ǰ�ͼ�3:=REF(REF(L,ǰ��),1),COLORGREEN,NODRAW;
��λ��3:=REF(REF(H,��λ),1),COLORRED,NODRAW;
�εͼ�3:=REF(REF(L,�ε�),1),COLORFFFF00,NODRAW;
HH11:=ǰ�ͼ�3,NODRAW;
HH21:=���3,NODRAW;
H131:=�εͼ�3,NODRAW;
LH21:=ǰ�ͼ�3=0,NODRAW;
L231:=���3=0,NODRAW;
L241:=�εͼ�3=0,NODRAW;
VVA11:=IF(ǰ��>��λ,HH11,LH21)NODRAW;
VVA21:=IF(��λ>�ε�,HH21,LH21)NODRAW;
VVA41:=IF(��λ��3>ǰ�ͼ�3 AND ǰ�ͼ�3<�εͼ�3,HH11,LH21)NODRAW;
VVA51:=IF(HIGH>=HH21,HH11,LH21)NODRAW;
CL2:=VVA11 AND VVA21 AND VVA41 AND VVA51,COLOR00FFFF,NODRAW;
������������:=CL2,NODRAW;
GGD:=IFC(CL2,HH21,LH21);
LLD:=IFC(CL2,HH11,LH21);
LDD:=IFC(CL2,H131,L241);
VAR2:=(GGD/LLD);
HS1C:=VAR2*LDD;
HS2C:=POW(VAR2,1.382)*LDD;
HS3C:=POW(VAR2,1.618)*LDD;
HS4C:=POW(VAR2,1.875)*LDD;
HS1:DRAWLINE(VV,CONST(HS1C),CURRBARSCOUNT=1,CONST(HS1C),1),COLORLIRED,DOTLINE;
HS2:DRAWLINE(VV,CONST(HS2C),CURRBARSCOUNT=1,CONST(HS2C),1),COLORLIRED,DOTLINE;
HS3:DRAWLINE(VV,CONST(HS3C),CURRBARSCOUNT=1,CONST(HS3C),1),COLORLIRED,DOTLINE;
HS4:DRAWLINE(VV,CONST(HS4C),CURRBARSCOUNT=1,CONST(HS4C),1),COLORLIRED,DOTLINE;
DRAWTEXT(VV,CONST(HS1C),VARCAT('HS1=',VAR2STR(CONST(HS1C),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(HS2C),VARCAT('HS2=',VAR2STR(CONST(HS2C),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(HS3C),VARCAT('HS3=',VAR2STR(CONST(HS3C),2))),COLORYELLOW;
DRAWTEXT(VV,CONST(HS4C),VARCAT('HS4=',VAR2STR(CONST(HS4C),2))),COLORYELLOW;
DRAWTEXT(XX,L,VARCAT('3��(ǰ��)',VAR2STR(L,2))),COLORFFFF00;
STICKLINE(VV,L,CONST(HS4C),0,-1),COLORLIRED;
IFC(CL2,DRAWLINE(XX,L,VV2,H,0),DRAWNULL),COLORYE