乐于分享
好东西不私藏

风口捉妖(公式源码)

风口捉妖(公式源码)

该指标适用于出现风口后低吸,更容易捉妖

主图公式:

{定义5日移动平均线,变量名MA5}

MA5:MA(C,5);

{定义10日移动平均线,变量名MA10}

MA10:MA(C,10);

{定义20日移动平均线,变量名MA20}

MA20:MA(C,20);

{定义变量擒牛1:计算收盘价、最高价、最低价三者的简单平均值}

擒牛1:=(CLOSE+HIGH+LOW)/3;

{定义变量擒牛2:计算擒牛1的10日指数移动平均(EMA)}

擒牛2:=EMA(擒牛1,10);

{定义变量擒牛3:擒牛2的前一日数值}

擒牛3:=REF(擒牛2,1);

{当擒牛2大于擒牛3(即EMA10向上),绘制从收盘价到开盘价的宽柱(2.8),颜色为深蓝}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,2.8,0),COLOR000088;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(2.6),颜色为深蓝渐变1}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,2.6,0),COLOR000099;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(2.4),颜色为深蓝渐变2}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,2.4,0),COLOR0000AA;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(2.2),颜色为深蓝渐变3}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,2.2,0),COLOR0000BB;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(2.0),颜色为深蓝渐变4}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,2.0,0),COLOR0000CC;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(1.8),颜色为深蓝渐变5}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,1.8,0),COLOR0000DD;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(1.5),颜色为深蓝渐变6}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,1.5,0),COLOR0000EE;

{当擒牛2大于擒牛3,绘制从收盘价到开盘价的宽柱(1),颜色为亮蓝色}

STICKLINE((擒牛2>擒牛3),CLOSE,OPEN,1,0),COLOR0000FF;

{当擒牛2大于擒牛3,绘制最高价到最低价的细线(0.0宽),颜色为亮蓝色}

STICKLINE((擒牛2>擒牛3),LOW,HIGH,0.0,0),COLOR0000FF;

{当擒牛3大于擒牛2(即EMA10向下),绘制从收盘价到开盘价的宽柱(2.8),颜色为深黄}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,2.8,0),COLOR888800;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(2.6),颜色为深黄渐变1}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,2.6,0),COLOR999900;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(2.4),颜色为深黄渐变2}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,2.4,0),COLORAAAA00;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(2.0),颜色为深黄渐变3}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,2.0,0),COLORCCCC00;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(1.8),颜色为深黄渐变4}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,1.8,0),COLORDDDD00;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(1.5),颜色为深黄渐变5}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,1.5,0),COLOREEEE00;

{当擒牛3大于擒牛2,绘制从收盘价到开盘价的宽柱(1),颜色为亮黄色}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,1,0),COLORFFFF00;

{当擒牛3大于擒牛2,绘制最高价到最低价的细线(0.0宽),颜色为亮黄色}

STICKLINE((擒牛3>擒牛2),LOW,HIGH,0.0,0),COLORFFFF00;

{当开盘价大于收盘价(即收阴线),绘制从收盘价到开盘价的实体柱(宽度0),颜色为亮黄色}

STICKLINE((OPEN>CLOSE),CLOSE,OPEN,0,0),COLORFFFF00;

{当开盘价小于收盘价(即收阳线),绘制从收盘价到开盘价的实体柱(宽度0),颜色为红色}

STICKLINE((OPEN< CLOSE),CLOSE,OPEN,0,0),COLORRED;

{当擒牛3大于擒牛2(重复条件,可能是为了确保效果),绘制从收盘价到开盘价的宽柱(2.4),颜色为深黄渐变2}

STICKLINE((擒牛3>擒牛2),CLOSE,OPEN,2.4,0),COLORAAAA00;

{定义变量C4:擒牛2上穿擒牛3,即EMA10金叉}

C4:=CROSS(擒牛2,擒牛3);

{定义变量C5:擒牛3上穿擒牛2,即EMA10死叉}

C5:=CROSS(擒牛3,擒牛2);

{定义参数N,值为9(用于KDJ计算)}

N:=9;

{定义参数M1,值为3(用于KDJ计算)}

M1:=3;

{定义参数M2,值为3(用于KDJ计算)}

M2:=3;

{计算风口指标(类似KDJ中的RSV):(收盘价-N日最低价)/(N日最高价-N日最低价)*100}

风口:=(CLOSE- LLV(LOW,N))/(HHV(HIGH,N)- LLV(LOW,N))*100;

{计算风口指标的3日简单移动平均,赋给K}

K:=SMA(风口,M1,1);

{计算K值的3日简单移动平均,赋给D}

D:=SMA(K,M2,1);

{计算J值:3*K-2*D}

J:=3*K-2*D;

{定义条件金叉:K值大于D值,且J值大于D值,且J值大于K值}

金叉:=KDJ.K>KDJ.D AND KDJ.J>KDJ.D AND KDJ.J>KDJ.K;

{计算流通市值(亿):总股本*收盘价/1000000}

流通市值:=CAPITAL*C/1000000;

{计算涨幅:(当日收盘价-前一日收盘价)/前一日收盘价*100%}

涨幅:=(C-REF(C,1))/REF(C,1)*100;

{将收盘价赋给变量价格}

价格:=C;

{定义筛选条件AA0:过滤掉ST/*ST/S股票、停牌股票、创业板、科创板股票或K线数据不足的股票}

AA0:=NOT(NAMELIKE(‘ST’) OR NAMELIKE(‘*ST’) OR NAMELIKE(‘S’) OR DYNAINFO(4)=0 OR INBLOCK(‘创业板’)OR INBLOCK(‘科创板’)) OR BARSCOUNT(C)>1;

{定义筛选条件AA1:流通市值大于0且小于80亿}

AA1:=流通市值>0 AND 流通市值< 80;

{定义筛选条件AA2:涨幅大于9.8%且小于10.99%,且收盘价等于最高价(涨停)}

AA2:=涨幅>9.8 AND 涨幅< 10.99 AND C=H;

{定义筛选条件AA3:价格大于2元且小于22元}

AA3:=价格>2 AND 价格< 22;

{定义筛选条件AA4:最近2个交易日内,满足AA2条件(涨停)的天数恰好为1天}

AA4:=COUNT(AA2,2)=1;

{定义最终买入信号BB:满足金叉、AA0、AA1、AA2、AA3、AA4所有条件}

BB:=金叉 AND AA0 AND AA1 AND AA2 AND AA3 AND AA4;

{当信号BB出现时,绘制从最高价到最低价的细线(宽度0),颜色为洋红色}

STICKLINE(BB,H,L,0,0),COLORFF00FF;

{当信号BB出现时,绘制从收盘价到开盘价的粗柱(宽度3),颜色为深紫色}

STICKLINE(BB,C,O,3,0),COLOR990099;

{当信号BB出现时,绘制从收盘价到开盘价的粗柱(宽度2),颜色为中紫色}

STICKLINE(BB,C,O,2,0),COLORBB00BB;

{当信号BB出现时,绘制从收盘价到开盘价的粗柱(宽度1),颜色为亮紫色}

STICKLINE(BB,C,O,1,0),COLORDD00DD;

{当信号BB出现时,绘制从收盘价到开盘价的细柱(宽度0.3),颜色为黄色}

STICKLINE(BB,C,O,0.3,0),COLORYELLOW;

{当信号BB出现时,在最低价下方一点(*0.98)的位置绘制9号图标(买入箭头)}

DRAWICON(BB,L*0.98,9);

{当信号BB出现时,在最低价下方一点(*0.95)的位置显示文字“←风口擒牛”,颜色为黄色}

DRAWTEXT(BB,L*0.95,’←风口擒牛’),COLORYELLOW;

副图公式:

{定义参数N,值为9(用于KDJ指标计算)}

N:=9;

{定义参数M1,值为3(用于KDJ指标计算)}

M1:=3;

{定义参数M2,值为3(用于KDJ指标计算)}

M2:=3;

{计算风口指标(类似KDJ中的RSV):(收盘价-N日最低价)/(N日最高价-N日最低价)*100}

风口:=(CLOSE- LLV(LOW,N))/(HHV(HIGH,N)- LLV(LOW,N))*100;

{计算风口指标的3日简单移动平均,赋给K}

K:=SMA(风口,M1,1);

{计算K值的3日简单移动平均,赋给D}

D:=SMA(K,M2,1);

{计算J值:3*K-2*D}

J:=3*K-2*D;

{定义条件金叉:KDJ指标中K值大于D值,且J值大于D值,且J值大于K值}

金叉:=KDJ.K>KDJ.D AND KDJ.J>KDJ.D AND KDJ.J>KDJ.K;

{计算流通市值(单位:亿元):总股本*收盘价/1000000}

流通市值:=CAPITAL*C/1000000;

{计算涨幅:(当日收盘价-前一日收盘价)/前一日收盘价*100%}

涨幅:=(C-REF(C,1))/REF(C,1)*100;

{将收盘价赋给变量价格}

价格:=C;

{定义筛选条件擒牛0:过滤掉ST/*ST/S股票、停牌股票、创业板、科创板股票或K线数据不足的股票}

擒牛0:=NOT(NAMELIKE(‘ST’) OR NAMELIKE(‘*ST’) OR NAMELIKE(‘S’) OR DYNAINFO(4)=0 OR INBLOCK(‘创业板’)OR INBLOCK(‘科创板’)) OR BARSCOUNT(C)>1;

{定义筛选条件擒牛1:流通市值大于0且小于80亿}

擒牛1:=流通市值>0 AND 流通市值< 80;

{定义筛选条件擒牛2:涨幅大于9.8%且小于10.99%,且收盘价等于最高价(涨停)}

擒牛2:=涨幅>9.8 AND 涨幅< 10.99 AND C=H;

{定义筛选条件擒牛3:价格大于2元且小于22元}

擒牛3:=价格>2 AND 价格< 22;

{定义筛选条件擒牛4:最近2个交易日内,满足擒牛2条件(涨停)的天数恰好为1天}

擒牛4:=COUNT(擒牛2,2)=1;

{定义最终选股信号AA:同时满足金叉、擒牛0、擒牛1、擒牛2、擒牛3、擒牛4所有条件}

AA:=金叉 AND 擒牛0 AND 擒牛1 AND 擒牛2 AND 擒牛3 AND 擒牛4;

{当信号AA出现时,在0到3的位置绘制宽度为2的洋红色柱状线}

STICKLINE(AA,0,3,2,0 ),COLORMAGENTA;

{当信号AA出现时,在0到3的位置绘制宽度为0.1的黄色细柱状线}

STICKLINE(AA,0,3,0.1,0 ),COLORYELLOW;

{当信号AA出现时,在3的上方一点(*1.002)的位置绘制5号图标}

DRAWICON(AA ,3*1.002,5);

{当信号AA出现时,在位置2.6处显示文字“←风口擒牛”,颜色为黄色}

DRAWTEXT(AA,2.6,’←风口擒牛’),COLORYELLOW;

选股公式:

{定义参数N,值为9(用于KDJ指标计算)}

N:=9;

{定义参数M1,值为3(用于KDJ指标计算)}

M1:=3;

{定义参数M2,值为3(用于KDJ指标计算)}

M2:=3;

{计算风口指标(类似KDJ中的RSV):(收盘价-N日最低价)/(N日最高价-N日最低价)*100}

风口:=(CLOSE- LLV(LOW,N))/(HHV(HIGH,N)- LLV(LOW,N))*100;

{计算风口指标的3日简单移动平均,赋给K}

K:=SMA(风口,M1,1);

{计算K值的3日简单移动平均,赋给D}

D:=SMA(K,M2,1);

{计算J值:3*K-2*D}

J:=3*K-2*D;

{定义条件金叉:KDJ指标中K值大于D值,且J值大于D值,且J值大于K值}

金叉:=KDJ.K>KDJ.D AND KDJ.J>KDJ.D AND KDJ.J>KDJ.K;

{计算流通市值(单位:亿元):总股本*收盘价/1000000}

流通市值:=CAPITAL*C/1000000;

{计算涨幅:(当日收盘价-前一日收盘价)/前一日收盘价*100%}

涨幅:=(C-REF(C,1))/REF(C,1)*100;

{将收盘价赋给变量价格}

价格:=C;

{定义筛选条件AA0:过滤掉ST/*ST/S股票、停牌股票、创业板、科创板股票或K线数据不足的股票}

AA0:=NOT(NAMELIKE(‘ST’) OR NAMELIKE(‘*ST’) OR NAMELIKE(‘S’) OR DYNAINFO(4)=0 OR INBLOCK(‘创业板’)OR INBLOCK(‘科创板’)) OR BARSCOUNT(C)>1;

{定义筛选条件AA1:流通市值大于0且小于80亿元}

AA1:=流通市值>0 AND 流通市值< 80;

{定义筛选条件AA2:涨幅大于9.8%且小于10.99%,且收盘价等于最高价(涨停)}

AA2:=涨幅>9.8 AND 涨幅< 10.99 AND C=H;

{定义筛选条件AA3:价格大于2元且小于22元}

AA3:=价格>2 AND 价格< 22;

{定义筛选条件AA4:最近2个交易日内,满足AA2条件(涨停)的天数恰好为1天}

AA4:=COUNT(AA2,2)=1;

{定义条件QXS:过滤掉股票代码以’4’开头的股票(通常为新三板)}

QXS:=NOT(CODELIKE(‘4’));

{定义条件QKC:过滤掉股票代码以’688’开头的股票(科创板)}

QKC:=NOT(CODELIKE(‘688’));

{定义条件QST:如果股票名称包含’S’则赋值为0,否则为1(过滤S股)}

QST:=IF(NAMELIKE(‘S’),0,1);

{定义条件QXX:如果股票名称包含’*’则赋值为0,否则为1(过滤*ST股)}

QXX:=IF(NAMELIKE(‘*’),0,1);

{定义条件QBJ:过滤掉股票代码以’8’开头的股票(北交所或新三板)}

QBJ:=NOT(CODELIKE(‘8’));

{定义筛选条件AA5:同时满足QXS、QST、QKC、QXX、QBJ条件}

AA5:=QXS AND QST AND QKC AND QXX AND QBJ;

{定义最终选股信号擒牛:同时满足金叉、AA0、AA1、AA2、AA3、AA4、AA5所有条件}

擒牛:=金叉 AND AA0 AND AA1 AND AA2 AND AA3 AND AA4 AND AA5;

{输出信号:风口擒牛,即擒牛条件成立时输出选股信号}

风口擒牛:擒牛;


指标都是无私分享的,大家多“点赞”和“在看”支持,您的 支持是我长久无私分享的动力。

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 风口捉妖(公式源码)

评论 抢沙发

9 + 7 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮