求改写选股公式(相关问题)

简问简答:(欢迎访问股市简问简答栏目,本栏目面向股市小白,不做复杂阐述,如要深入了解请访问其他高级栏目,谢谢合作.)
编辑 : 王远   发布时间: 2022.09.03 12:06:01   消息来源: 原创 阅读数: 193 收藏数: 0 + 收藏 +赞(0)
V1:=(C*2+H+L)/4*10; V2:=EMA(V1,13)-EMA(V1,34); V3:=EMA(V2,5); V4:=2*(V2-V3)*5.5;
V1:=(C*2+H+L)/4*10; V2:=EMA(V1,13)-EMA(V1,34); V3:=EMA(V2,5); V4:=2*(V2-V3)*5.5; 庄秘进: IF(V4>=0,V4,0),COLORFF00FF,LINETHICK2; 请改写庄秘进上穿3选股公式V1:=(C*2+H+L)/4*10;
V2:=EMA(V1,13)-EMA(V1,34);
V3:=EMA(V2,5);
V4:=2*(V2-V3)*5.5;
CROSS(V4,V3);

【一品抄底】,是个副图指标,既有线性输出信号,也有买点提示信号,输出类别众多,就不是一个单独的选股指标。如何修改、拆分出自己需要的【底部】选股信号,成为一个单独的选股指标呢?如果还需要将【深坑】的信号,也单独设置为选股指标,又该如何修改呢?在此先当做一个问题吧,继续看了后面(二)、(三)小节的引路,相信你自己来就行了!
{一品抄底----创幻论坛一品茶缘编写,通用副图指标}
typ := (high + low + close)/3;
cci:=(typ-ma(typ,14))/(0.015*avedev(typ,14));
a:=ref(c,1);
rsi:=sma(max(c-a,0),6,1)/sma(abs(c-a),6,1)*100;
a1:=(c/ma(c,5)-1)*100<-10;
a2:=(c/ma(c,13)-1)*100<-10;
a3:=(c/ma(c,34)-1)*100<-15;
a4:=rsi<18;
a5:=cci<-120;
a6:=count(abs(c/ref(c,1)-1)*100>=6,30)>=1;
底部:a1 and a2 and a3 and a4 and a5 and a6,color00ffff,linethick2;
cdsj:=barslast(底部);
zf:=(c/ref(c,1)-1)*100;
深坑:if(between(cdsj,0,5) and l<=ref(c,cdsj) and zf<=-5,-0.5,0),colorff0000,linethick2;
机会:if(cdsj<=7 and l<=ref(c,cdsj),0.5,0),color00ff00;
寻找选股信号的来源
所谓选股信号,多数都是属于将已有的指标公式中具有买点类的信号特征“剥离”出来。那么,在指标中该保留哪些有用的源码,删除哪些无关的源码呢?寻找选股信号的来源,就是最主要的过程。
寻找选股信号来源的方法,一般都是遵循从后往前寻找的原则。
具体步骤是:先找到发出指标信号的那行代码,然后查看该行代码中的所有条件,需要用到上面哪些源码,再从后往前一一对应寻找出来;而其他无关的条件、修饰符号源码,均可删除。
举例3:(本例子参考大庆老杨先生帖子,略有改动)
{股市马经----副图指标,源码来自网络}
a1:3*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1)-2*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1);
黑马线:ema(a1,5),linethick2,color6600ff;
a2:=(黑马线-ref(黑马线,1))/ref(黑马线,1)*100;
a3:=ema(c,5);
a4:=((c-llv(l,21))/(hhv(h,21)-llv(l,21)))*100;
趋势线:(ma(3*sma(a4,6,1)-2*sma(sma(a4,5,1),5,1),2)),linethick2,coloryellow;
a5:=(hhv(h,60)-c)/(hhv(h,60)-llv(l,60))*100;
drawtext(filter(ref(黑马线,1)>90 and a2<0,7),黑马线,'跑'),color00ff00;
drawtext(cross(a1,黑马线)and 黑马线<a5,黑马线,'黑马');
drawtext(cross(黑马线,a5)and 趋势线<80,黑马线,'追涨');
drawtext(cross(趋势线,0)and 黑马线<40,5,'大黑马');
底部:(a2<-10 and a2>ref(a2,1))*25,colorred;
drawicon(底部 and a3>ref(a3,1),25,4);
机会来临:ref(if((ma(c,5)-c)/c>0.04 and (ma(c,10)-ma(c,5))/ma(c,5)>0.04,30,0),1),colorf00ff0;
大势已去:if(cross(黑马线,a1)and 黑马线>70 and 趋势线>80,90,100),colorff0000;
公式中涉及“买”的信号有黑马、追涨、大黑马、底部和机会来临五个明显的,另外还有一个画图标信号。
假如我们提取其中的【机会来临】,仔细分析后,就是一句话:
机会来临:ref(if((ma(c,5)-c)/c>0.04 and (ma(c,10)-ma(c,5))/ma(c,5)>0.04,30,0),1);
这个可看作简单提取。
如果提取【大黑马】的话,从后向前推,涉及趋势线和黑马线两个定义,这部分都有用:
a1:3*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1)-2*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1);
黑马线:ema(a1,5),linethick2,color6600ff;
a4:=((c-llv(l,21))/(hhv(h,21)-llv(l,21)))*100;
趋势线:(ma(3*sma(a4,6,1)-2*sma(sma(a4,5,1),5,1),2)),linethick2,coloryellow;
drawtext(cross(趋势线,0) and 黑马线<40,5,'大黑马');
(三)修改选股指标的方法

根据以上选股公式的特征,结合寻找选股信号来源的方法,自己动手修改选股信号,应该就没有太大的难度了!
举例4:继续承接上面(二)的例子。
修改步骤:
①先将线性输出的a1、黑马线、a4、趋势线均限制输出,方法很简单,就是在他们的冒号后面直接加上等号=;
②再删去修饰符linethick2,color6600ff:
③将本来是文字输出的“黑马线”修改成信号输出;先将“黑马线”三个字移动到最前面,并加上冒号:;然后保留符合黑马线的限制条件cross(趋势线,0) and 黑马线<40;同时删除其余无关的代码,包括文字输出函数drawtext、位置、括号()等。
修改成选股指标后的源码如下:
a1:=3*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1)-2*sma((c-llv(l,55))/(hhv(h,55)-llv(l,55))*100,5,1);
黑马线:=ema(a1,5);
a4:=((c-llv(l,21))/(hhv(h,21)-llv(l,21)))*100;
趋势线:=(ma(3*sma(a4,6,1)-2*sma(sma(a4,5,1),5,1),2));
大黑马:cross(趋势线,0) and 黑马线<40;
举例5:
下面附图指标【大三浪】中,如何选出出现“买”字提示信号的选股指标?
{大三浪----创幻论坛一品茶缘编写,通用副图指标}
{大三浪指标使用说明:
均线粘合且多头,长期未涨庄吸筹;
目标锁定先跟踪,出击买入等丰收!}
{n:30,120,65;}
ma5:=ma(close,5);
ma21:=ma(close,21);
ma65:=ma(close,n);
多头:=count(ma21>ma65,10)=10;
gx:=max(ma5,max(ma21,ma65));
dx:=min(ma5,min(ma21,ma65));
粘合:=abs(gx/dx-1)*100<=15;
多头粘合:if(多头 and 粘合,1,0),colorff00ff,pointdot,linethick0;
diff:=ema(close,12) - ema(close,26);
dea:=ema(diff,9);
macd:=2*(diff-dea);
庄股:count(macd<0,10)=10,colorffff00,pointdot,linethick0;
目标:if(多头 and 粘合 and 庄股,5,0),colorffffff,linethick2;
跟踪:if(目标,barslast(cross(目标,0))+1,0),color00ff00,pointdot,linethick2;
出击:if(cross(0.1,目标) and cross(macd,0),8,0),color00ffff,linethick2;
mjsj:=barslast(出击>0);
涨幅:if(mjsj<=120,(c/ref(c,mjsj)-1)*100,0),color0000ff,pointdot,linethick0;
日涨:if(mjsj<=120,涨幅/mjsj,0),colorffffff,pointdot,linethick0;
tpx:=min(ma65*1.15,ma21*1.13);
突破:if(cross(c,tpx) and 粘合 and ma65>ref(ma65,1),10,0),color0000ff,linethick2;
{以下设置副图显示方式}
stickline(多头粘合,0,1,8,0),colorff00ff;
stickline(庄股,0,macd*10,8,0),colorffff00;
drawtext(出击=8,10,'★买'),color00ffff;
vertline(cross(涨幅,20) and count(cross(涨幅,20),mjsj)=1,2),color0000ff;

根据选股指标的步骤,一步一步来:
①首先找到出现“★买”提示的一行代码,发现她其实就是“出击”的信号;
②从后往前,找到“出击”信号的条件,发现他与“目标”、macd有关;
再次往前寻找,又发现“目标”信号的条件,与“多头”、“粘合”、“庄股”三个条件有关,由此,保留相关条件代码,其余删除,如下:
{n:30,120,65;}
ma5:=ma(close,5);
ma21:=ma(close,21);
ma65:=ma(close,n);
多头:=count(ma21>ma65,10)=10;
gx:=max(ma5,max(ma21,ma65));
dx:=min(ma5,min(ma21,ma65));
粘合:=abs(gx/dx-1)*100<=15;
diff:=ema(close,12) - ema(close,26);
dea:=ema(diff,9);
macd:=2*(diff-dea);
庄股:count(macd<0,10)=10,colorffff00,pointdot,linethick0;
目标:if(多头 and 粘合 and 庄股,5,0),colorffffff,linethick2;
出击:if(cross(0.1,目标) and cross(macd,0),8,0),color00ffff,linethick2;
③限制输出数量,只保留“出击”信号的输出,其他的输出信号均加上等号=加以限制输出;
④删除多余的修饰符号,如:colorffff00,pointdot,linethick0等。
⑤if格式也可简化,只保留需要的条件,输出信号自动为1。“出击”两字也可修改为“买”。
修改完最后保留的源码如下:

{大三浪----选股指标}
{n:30,120,65;}
ma5:=ma(close,5);
ma21:=ma(close,21);
ma65:=ma(close,n);
多头:=count(ma21>ma65,10)=10;
gx:=max(ma5,max(ma21,ma65));
dx:=min(ma5,min(ma21,ma65));
粘合:=abs(gx/dx-1)*100<=15;
diff:=ema(close,12) - ema(close,26);
dea:=ema(diff,9);
macd:=2*(diff-dea);
庄股:=count(macd<0,10)=10;
目标:=if(多头 and 粘合 and 庄股,5,0);
买:cross(0.1,目标) and cross(macd,0);

导入选股指标的途径
①修改完后的选股指标源码,想做成选股指标,并非放在指标系统之下的【技术指标】分类,一般是放入【条件选股】分类;便于设置预警、自动选股。
②还可将选股指标加入交易系统中,但需要注意的是:输出信号必须为英文单词的买入enterlong、卖出exitlong信号。在应用时,飞狐软件输入该交易系统指标名称,即可在主图自动显示买卖信号的提示。
源码如下:
enterlong:cross(ma(c,3),ma(c,8));----表示输出多头买入信号。
exitlong:cross(ma(c,8),ma(c,3));----表示输出空头卖出信号。

声明:如本站内容不慎侵犯了您的权益,请联系邮箱:wangshiyuan@epins.cn 我们将迅速删除。

 

选股最新文章

MORE+
 

热词推荐

MORE+

股吧论坛最新帖子

MORE+