分享

学习改选股公式

 昵称392472 2009-10-18
分类:股软指标
见到论坛会员,多数求助帖子为简单的将指标中的某个信号,拆分出来单独修改为选股指标;
其实,这类简单的修改,只要自己稍微熟悉一下指标的含义,然后循着发出信号的相关代码寻找上去,就可以很快的找出指标中与该信号有关的那部分源码,自己稍加修改,就可以很容易的修改为选股公式了。大庆老杨版主已经写过一个类似帖子,对于新手,还是稍复杂了点;一品尝试再写一帖更加简单、易懂的,图文结合,让指标菜鸟看得更明白一点。
你还是指标菜鸟、而又想修改选股公式吗?那就跟着一品的引路,自己试试吧!相信你也行!

(一)初识选股公式的特征

①信号的唯一性:所谓选股公式,就是一个指标中仅给出唯一的一个独立的信号,不管条件是怎样的,最后输出的信号都只能有一个。
②源码的纯洁性:所有选股信号,在输出时,都禁止使用颜色(如:COLOR6600FF)、粗细(如:LINETHICK2)、文字提示、线型描述(如:POINTDOT)等修饰函数。
举例1:
下面的指标【空中休整】,只有一个输出信号,而且没有任何修饰符,既可以当做副图指标,也可以当做选股指标。
引用:

{空中休整----理想论坛一品茶缘编写,通用版本副图指标}
INPUT.:N(2);
XYX:=ABS(C/REF(C,1)-1)*100<=N OR (ABS(C/O-1)*100<=N AND ABS(C/REF(C,1)-1)*100<=6);
GD:=H>=HHV(H,60)*0.9 AND COUNT(C>COST(75),3) AND (C/REF(C,1)-1)*100>=3.5;
GDSJ:=BARSLAST(GD);
目标:GDSJ<=8 AND COUNT(XYX,2)=2;

图片参考一:

举例2:
下面指标【一品抄底】,是个副图指标,既有线性输出信号,也有买点提示信号,输出类别众多,就不是一个单独的选股指标。如何修改、拆分出自己需要的【底部】选股信号,成为一个单独的选股指标呢?如果还需要将【深坑】的信号,也单独设置为选股指标,又该如何修改呢?在此先当做一个问题吧,继续看了后面(二)、(三)小节的引路,相信你自己来就行了!

引用:
{一品抄底----理想论坛一品茶缘编写,通用副图指标}
TYP := (HIGH + LOW + CLOSE)/3;
CCI:=(TYP-MA(TYP,14))/(*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> AND (MA(C,10)-MA(C,5))/MA(C,5)>,30,0),1),COLORF00FF0;
大势已去:IF(CROSS(黑马线,A1)AND 黑马线>70 AND 趋势线>80,90,100),COLORFF0000;

图片参考三:

分析一下,这个公式中涉及“买”的信号有黑马、追涨、大黑马、底部和机会来临五个明显的,另外还有一个画图标信号。

假如我们提取其中的【机会来临】,仔细分析后,就是一句话:
机会来临:REF(IF((MA(C,5)-C)/C> AND (MA(C,10)-MA(C,5))/MA(C,5)>,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*,MA21*);
突破: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));----表示输出空头卖出信号。
图片参考五:

(五)选股指标与一般副图指标的运用区别

看了以上修改选股指标的方法后,也许你应该明白该如何从一个指标中“剥离”出自己所需要的信号了;这时,你就可以利用盘中的预警功能,通过设置预警,让软件自动监控出现信号的目标,并给出相应的提示。(提醒:预警可能占用较大的内存,要求电脑本身的配置不能过低。)
其实,原本的主、副图指标,只要有信号直接输出的(非文字、柱状线等的符号提示),就同样可以用于盘中的手动选股;只要看清输出信号的数值变化,就可以利用数值的大小变化进行对应信号的选股了。(注意本地磁盘中应该下载有需要用到的完整数据,选出的结果才是准确的。)
图片参考六、七:

总结:本贴仅仅为指标菜鸟提供最简单的、将一个指标的某个信号剥离出来,修改为选股信号的指标;本贴前面的指标【一品抄底】,你需要什么信号呢?还是想再加入其他的条件?自己动手试试看,相信你现在一定能行了!
至于更加复杂的、需要自己设定条件进一步优化的选股指标,还请自己学习、掌握一定的指标编写基础知识后,再去考虑。该问题不在本贴的交流范围之列。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 全屏 打印 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多