‹ 返回

46146

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

指标公式

DIF:100*(EMA(CLOSE,12)-EMA(CLOSE,26));
DEA:EMA(DIF,9);
MACD:(DIF-DEA)*2,COLORSTICK;
X_1:=CROSS(DEA,DIF);
X_2:=BARSLAST(X_1);
X_3:=REF(BARSLAST(X_1),X_2+1);
X_4:=REF(BARSLAST(X_1),X_3+X_2+2);
X_5:=LLV(CLOSE,X_2+1);
X_6:=LLV(DIF,X_2+1);
X_7:=REF(X_5,X_2+1);
X_8:=REF(X_6,X_2+1);
X_9:=REF(X_7,X_2+1);
X_10:=REF(X_8,X_2+1);
X_11:=IF(X_8>0,INTPART(LOG(X_8))-1,INTPART(LOG(-X_8))-1);
X_12:=INTPART(X_8/POW(10,X_11));
X_13:=IF(X_10>0,INTPART(LOG(X_10))-1,INTPART(LOG(-X_10))-1);
X_14:=INTPART(X_10/POW(10,X_13));
X_15:=INTPART(DIF/POW(10,X_11));
X_16:=INTPART(DIF/POW(10,X_13));
X_17:=X_5<X_7 AND X_15>X_12 AND (MACD<0 AND REF(MACD,1)<0) AND X_15<=REF(X_15,1);
X_18:=X_5<X_9 AND X_9<X_7 AND X_16>X_14 AND (MACD<0 AND REF(MACD,1)<0) AND X_16<=REF(X_16,1);
X_19:=X_17 OR X_18;
X_20:=(X_15>REF(X_15,1))*REF(X_17,1) OR (X_16>REF(X_16,1))*REF(X_18,1);
X_21:=REF(X_17,1) AND X_6<=X_8 OR (REF(X_18,1) AND X_6<=X_10);
STICKLINE(X_19 OR X_20,DIF,DEA,8,0),COLORRED;
DRAWTEXT(X_19 AND COUNT(X_19,2)=1,DIF*1.5,'�ۻ�'),COLORYELLOW;
DRAWTEXT(FILTER(X_20,10),DIF*1.5,'�ṹ�γ�'),COLORMAGENTA;
DRAWTEXT(FILTER(X_21,10),DIF+MACD,'��ʧ'),COLORGREEN;
STICKLINE(X_20,0,DIF+DEA,5,0),COLORRED;
X_22:=CROSS(DIF,DEA);
X_23:=BARSLAST(X_22);
X_24:=REF(BARSLAST(X_22),X_23+1);
X_25:=REF(BARSLAST(X_22),X_24+X_23+2);
X_26:=HHV(CLOSE,X_23+1);
X_27:=HHV(DIF,X_23+1);
X_28:=REF(X_26,X_23+1);
X_29:=REF(X_27,X_23+1);
X_30:=REF(X_28,X_23+1);
X_31:=REF(X_29,X_23+1);
X_32:=IF(X_29>0,INTPART(LOG(X_29))-1,INTPART(LOG(-X_29))-1);
X_33:=INTPART(X_29/POW(10,X_32));
X_34:=IF(X_31>0,INTPART(LOG(X_31))-1,INTPART(LOG(-X_31))-1);
X_35:=INTPART(X_31/POW(10,X_34));
X_36:=INTPART(DIF/POW(10,X_32));
X_37:=INTPART(DIF/POW(10,X_34));
X_38:=X_26>X_28 AND X_36<X_33 AND (MACD>0 AND REF(MACD,1)>0) AND X_36>=REF(X_36,1);
X_39:=X_26>X_30 AND X_30>X_28 AND X_37<X_35 AND (MACD>0 AND REF(MACD,1)>0) AND X_37>=REF(X_37,1);
X_40:=X_38 OR X_39;
X_41:=(X_36<REF(X_36,1))*REF(X_38,1) OR (X_37<REF(X_37,1))*REF(X_39,1);
X_42:=REF(X_38,1) AND X_27>=X_29 OR (REF(X_39,1) AND X_27>=X_31);
STICKLINE(X_41,0,DIF+DEA,5,0),COLORGREEN;
STICKLINE(X_40 OR X_41,DIF,DEA,8,0),COLORGREEN;
DRAWTEXT(FILTER(X_41,20),DIF*1.4,'371'),COLORMAGENTA;
DRAWTEXT(FILTER(X_42,20),DIF+MACD,'��ʧ'),COLORGREEN;
��:(-50);
��:50;
X_43:=SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
X_44:=HIGH-REF(HIGH,1);
X_45:=REF(LOW,1)-LOW;
X_46:=SUM(IF(X_44>0 AND X_44>X_45,X_44,0),14);
X_47:=SUM(IF(X_45>0 AND X_45>X_44,X_45,0),14);
X_48:=X_46*100/X_43;
X_49:=X_47*100/X_43;
X_50:=BARSLAST(REF(CROSS(MACD.DIF(12,26,9),MACD.DEA(12,26,9)),1));
X_51:=REF(CLOSE,X_50+1)>CLOSE AND REF(MACD.DIF(12,26,9),X_50+1)<MACD.DIF(12,26,9) AND CROSS(MACD.DIF(12,26,9),MACD.DEA(12,26,9));
X_52:=BARSLAST(REF(CROSS(KDJ.K(9,3,3),KDJ.D(9,3,3)),1));
X_53:=REF(CLOSE,X_52+1)>CLOSE AND REF(KDJ.K(9,3,3),X_52+1)<KDJ.K(9,3,3) AND CROSS(KDJ.K(9,3,3),KDJ.D(9,3,3));
X_54:=BARSLAST(REF(CROSS(RSI.RSI1(6,12,24),RSI.RSI2(6,12,24)),1));
X_55:=REF(CLOSE,X_54+1)>CLOSE AND REF(RSI.RSI1(6,12,24),X_54+1)<RSI.RSI1(6,12,24) AND CROSS(RSI.RSI1(6,12,24),RSI.RSI2(6,12,24));
X_56:=BARSLAST(REF(CROSS(MACD.DEA(12,26,9),MACD.DIF(12,26,9)),1));
X_57:=REF(CLOSE,X_56+1)<CLOSE AND REF(MACD.DIF(12,26,9),X_56+1)>MACD.DIF(12,26,9) AND CROSS(MACD.DEA(12,26,9),MACD.DIF(12,26,9));
X_58:=BARSLAST(REF(CROSS(KDJ.D(9,3,3),KDJ.K(9,3,3)),1));
X_59:=REF(CLOSE,X_58+1)<CLOSE AND REF(KDJ.K(9,3,3),X_58+1)>KDJ.K(9,3,3) AND CROSS(KDJ.D(9,3,3),KDJ.K(9,3,3));
X_60:=BARSLAST(REF(CROSS(RSI.RSI2(6,12,24),RSI.RSI1(6,12,24)),1));
X_61:=REF(CLOSE,X_60+1)<CLOSE AND REF(RSI.RSI1(6,12,24),X_60+1)>RSI.RSI1(6,12,24) AND CROSS(RSI.RSI2(6,12,24),RSI.RSI1(6,12,24));
X_62:=BARSLAST(REF(CROSS(X_49,X_48),1));
X_63:=REF(CLOSE,CLOSE+1)<CLOSE AND REF(X_49,X_62+1)>X_49 AND CROSS(X_49,X_48);
X_64:=BARSLAST(REF(CROSS(X_48,X_49),1));
X_65:=REF(CLOSE,X_64+1)>CLOSE AND REF(X_48,X_64+1)<X_48 AND CROSS(X_48,X_49);
DMI�ױ�:IF(X_65>0,(-50),0),POINTDOT,COLOR0099FF;
DRAWTEXT(X_65>0,(-5),'DMI�ױ�'),COLOR0099FF;
DMI����:IF(X_63>0,50,0),POINTDOT,COLORBLUE;
DRAWTEXT(X_63>0,15,'265'),COLORBLUE;
MACD�ױ�:IF(X_51>0,(-50),0),POINTDOT,COLORRED;
DRAWTEXT(X_51>0,(-15),'266'),COLORRED;
KDJ�ױ�:IF(X_53>0,(-50),0),POINTDOT,COLORMAGENTA;
DRAWTEXT(X_53>0,(-25),'267'),COLORMAGENTA;
RSI�ױ�:IF(X_55>0,(-50),0),POINTDOT,COLORYELLOW;
DRAWTEXT(X_55>0,(-35),'RSI�ױ�'),COLORYELLOW;
MACD����:IF(X_57>0,50,0),POINTDOT,COLORGREEN;
DRAWTEXT(X_57>0,25,'MACD����'),COLORGREEN;
KDJ����:IF(X_59>0,50,0),POINTDOT,COLORFFCC66;
DRAWTEXT(X_59>0,35,'270'),COLORFFCC66;
RSI����:IF(X_61>0,50,0),POINTDOT,COLORWHITE;
DRAWTEXT(X_61>0,45,'RSI����'),COLORWHITE;
STICKLINE(X_51>0,(-50),0,0,0),COLORRED;
STICKLINE(X_53>0,(-50),0,0,0),COLORMAGENTA;
STICKLINE(X_55>0,(-50),0,0,0),COLORYELLOW;
STICKLINE(X_57>0,50,0,0,0),COLORGREEN;
STICKLINE(X_59>0,50,0,0,0),COLORFFCC66;
STICKLINE(X_61>0,50,0,0,0),COLORWHITE;
STICKLINE(X_65>0,(-50),0,0,0),COLOR0099FF;
STICKLINE(X_63>0,50,0,0,0),COLORBLUE;
MA6:MA(CLOSE,6),NODRAW,COLORYELLOW,LINETHICK2;
��������:EMA(CLOSE,20),NODRAW,COLORYELLOW;
����:IF(��������>REF(��������,1),��������,DRAWNULL),NODRAW,COLORRED,LINETHICK4;
�̽�:IF(��������<REF(��������,1),��������,DRAWNULL),NODRAW,COLORCYAN,LINETHICK4;
������:EMA(CLOSE,50),NODRAW,COLORYELLOW,LINETHICK2;
����2:IF(������>REF(������,1),������,DRAWNULL),POINTDOT,COLORRED,LINETHICK4;
�̽�2:IF(������<REF(������,1),������,DRAWNULL),POINTDOT,COLORCYAN,LINETHICK4;
��:IF(MA6>REF(MA6,1),MA6,DRAWNULL),NODRAW,COLORRED,LINETHICK2;
��:IF(MA6<REF(MA6,1),MA6,DRAWNULL),NODRAW,COLORCYAN,LINETHICK2;
X_66:=240/FROMOPEN;
X_67:=X_66;
X_68:=EMA(CLOSE,12)-EMA(CLOSE,26);
X_69:=EMA(X_68,9);
X_70:=X_68-X_69;
X_71:=IF(X_70,LLV(LOW,21),DRAWNULL);
X_72:=HHV(HIGH,80)*0.99;
X_73:=CONST(X_72);
X_74:=LLV(X_71,80);
X_75:=CONST(X_74);
X_76:=MA(CLOSE,20);
X_77:=CLOSE>MA(CLOSE,5);
X_78:=MA(CLOSE,5)>MA(CLOSE,10);
X_79:=CLOSE>MA(CLOSE,10);
X_80:=MA(CLOSE,5)>MA(CLOSE,20);
X_81:=CLOSE>MA(CLOSE,20);
X_82:=REF(X_76,1);
X_83:=X_76>X_82;
X_84:=IF(X_77,10,0-10)+IF(X_78,10,0-10)+IF(X_79,10,0-10)+IF(X_80,10,0-10)+IF(X_81,10,0-10)+IF(X_83,10,0-10);
X_85:=CLOSE/INDEXC;
X_86:=MA(X_85,5);
X_87:=MA(X_85,10);
X_88:=MA(VOL,5);
X_89:=MA(VOL,10);
X_90:=CONST(IF(X_84>0,200,100));
X_91:=CONST(IF(X_84>0,0,100));
X_92:=CONST(IF(X_84>0,100,100));
X_93:=X_73;
X_94:=X_75;
X_95:=X_73;
X_96:=CONST(IF(CROSS(X_84,1) AND X_88>=X_89 AND X_85>=X_86,1,0));
X_97:=CONST(IF(CROSS(X_84,1) AND X_88<X_89 AND X_85>=X_86,1,0));
X_98:=CONST(IF(CROSS(X_84,1) AND X_88>X_89 AND X_85<X_86,1,0));
X_99:=CONST(IF(CROSS(X_84,1) AND X_88<=X_89 AND X_85<X_86,1,0));
X_100:=CONST(IF(CROSS(1,X_84) AND X_88>=X_89 AND X_85>=X_86,1,0));
X_101:=CONST(IF(CROSS(1,X_84) AND X_88<X_89 AND X_85>=X_86,1,0));
X_102:=CONST(IF(CROSS(1,X_84) AND X_88>=X_89 AND X_85<X_86,1,0));
X_103:=CONST(IF(CROSS(1,X_84) AND X_88<X_89 AND X_85<X_86,1,0));
X_104:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88>=X_89 AND X_85>=X_86,1,0));
X_105:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88<X_89 AND X_85>=X_86,1,0));
X_106:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88>=X_89 AND X_85<X_86,1,0));
X_107:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88<X_89 AND X_85<X_86,1,0));
X_108:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88>=X_89 AND X_85>=X_86,1,0));
X_109:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88<X_89 AND X_85>=X_86,1,0));
X_110:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88>=X_89 AND X_85<X_86,1,0));
X_111:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88<X_89 AND X_85<X_86,1,0));
X_112:=CONST(IF(CROSS(X_84,1) AND X_88>=X_89,1,0));
X_113:=CONST(IF(CROSS(X_84,1) AND X_88<X_89,1,0));
X_114:=CONST(IF(CROSS(1,X_84) AND X_88>=X_89,1,0));
X_115:=CONST(IF(CROSS(1,X_84) AND X_88<X_89,1,0));
X_116:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88>=X_89,1,0));
X_117:=CONST(IF(X_84>=1 AND REF(X_84,1)>0 AND X_88<X_89,1,0));
X_118:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88>=X_89,1,0));
X_119:=CONST(IF(X_84<1 AND REF(X_84,1)<0 AND X_88<X_89,1,0));
X_120:=(HIGH-LOW)*1000000/(VOL*X_67);
X_121:=X_120>=REF(X_120,1) AND VOL*X_67>=REF(VOL,1);
X_122:=CONST(X_121);
X_123:=X_120<REF(X_120,1) AND VOL*X_67<REF(VOL,1);
X_124:=CONST(X_123);
X_125:=X_120>=REF(X_120,1) AND VOL*X_67<REF(VOL,1);
X_126:=CONST(X_125);
X_127:=X_120<REF(X_120,1) AND VOL*X_67>=REF(VOL,1);
X_128:=CONST(X_127);
X_129:=(HIGH+LOW+CLOSE)/3;
X_130:=IF(HIGH=LOW,1,HIGH-MAX(OPEN,CLOSE));
X_131:=IF(HIGH=LOW,1,MAX(CLOSE,OPEN)-X_129);
X_132:=IF(HIGH=LOW,1,MIN(OPEN,CLOSE)-LOW);
X_133:=IF(HIGH=LOW,1,X_129-MIN(CLOSE,OPEN));
X_134:=VOL/IF(HIGH=LOW,4,HIGH-LOW);
X_135:=X_130*X_134;
X_136:=X_131*X_134;
X_137:=X_132*X_134;
X_138:=X_133*X_134;
X_139:=DYNAINFO(23)*X_67;
X_140:=DYNAINFO(22)*X_67;
X_141:=IF(ISLASTBAR AND CLOSE>300,(X_138+X_137)*X_66,X_138+X_137);
X_142:=IF(ISLASTBAR AND CLOSE>300,(X_135+X_136)*X_66,X_135+X_136);
X_143:=IF(ISLASTBAR AND PERIOD=5 AND CLOSE<300,X_139,X_141);
X_144:=IF(ISLASTBAR AND PERIOD=5 AND CLOSE<300,X_140,X_142);
X_145:=(X_144+X_143)/REF(VOL,