学习通达信编程是一个持续性的过程,如果从单个函数入手会很枯燥,我的方法是不定期学习解析网络上的指标源码,学习它们的编程逻辑和思路。在这个过程中不知不觉指标编程能力就提升了。
有粉丝朋友发来消息,希望能解析一个竞价打板的指标源码来帮助学习。今天就安排上,选了一个竞价打二板的指标源码。故名思义,就是针对昨天涨停的个股,要不要在开盘抢筹的一个技术指标。 在之前的发文中,我们有提到过关于游资图谱的使用,和通过游资图谱来建立股票池的思路,这个是解决买什么的问题。那么解下来要解决的是择时的问题,回答什么时候买。 读书百遍,其意自现。如果还没有建立操作系统,怎么办?我们的思路很简单,找十几二十个相关类型的指标源码,无论好坏先挨个的解析一遍,学学思路,再综合所长,寻求创新突破,编造新的符合自己风格的个性化指标。废话不多说,今天的指标解析,我们一起来学习吧。 第一部分:代码解析

源代码前后一共18行,通达信源码如图所示:

为了方便,我们依然采用了通达信的编程格式,直接在源码基础上做解析,外层用{},相当于注释,不会影响编译。也就是说,下面的代码直接复制到通达信里面也能用。

X_1:=IF(NAMELIKE(7),0,1);

{判断个股名称是否7开头,如果是,返回0,否则1}

X_2:=IF(NAMELIKE(5),0,1);

{判断个股名称是否5开头,如果是,返回0,否则1}

X_3:=DYNAINFO(17)>0;

{获取当天量比,判断是否大于0}

X_4:=IF(INBLOCK(1),0,1);

{判断是不是属于板块1,如果是,返回0,否则1}

X_5:=IF(NAMELIKE(8),0,1);

{判断个股名称是否8开头,如果是,返回0,否则1}

X_6:=IF(INBLOCK(9),0,1);

{判断是不是属于板块9,如果是,返回0,否则1}

X_7:=100*(OPEN-REF(CLOSE,1))/REF(CLOSE,1);

{这句代码意思是计算个股当天开盘时的涨幅,这句在上篇的解析中也出现了}

X_8:=DYNAINFO(15)/OPEN/FINANCE(46)*100;

{这句代码是计算开盘竞价金额与开盘价的比,在除以流通股本,就是估算开盘的换手率,这句在上篇的解析中也出现了}

X_9:=REF(vol*10000/FINANCE(46),1);

{这句计算的是昨天的换手率,用的是成交量和流通股本的比值}

X_10:=X_8/X_9*100;

{计算当天开盘的换手率和昨天换手率的比值}

X_11:=DYNAINFO(15)/10000>1800;

{判断当天集合竞价资金量是否大于1800万}

X_12:=IF(INBLOCK(1),0.2,IF(INBLOCK(9),0.2,IF(INBLOCK(2),0.05,0.1)));

{这句代码用了三个if的嵌套,意思对个股所属的板块配置不同的权重,

具体为:若个股属于板块1,则取值0.2,若属于板块9,则取值0.2,若属于板块2,则取值0.05,其他情况取值0.1;

从这个权重设置,我们可以倒推,板块1就是创业板,板块9是科创板,板块2是st板块,权重就是他们涨跌停的最大幅度}

X_13:=IF(X_12=0.2,ZTPRICE(REF(CLOSE,1),0.2),IF(NAMELIKE(7) OR NAMELIKE(5),ZTPRICE(REF(CLOSE,1),0.05),ZTPRICE(REF(CLOSE,1),0.1)));

{这句代码好长,实际意义就是计算不同板块个股对于的涨停价,函数ZTPPRICE作用就是获取涨停价}

X_14:=X_13=CLOSE;

{判断上面计算得到的涨停价是不是就是今天的收盘价,就是判断是否涨停收盘}

X_15:=REF(X_14,1);

{计算昨天该股是不是也涨停了}

X_16:=REF(COUNT(X_13=CLOSE,20)>=2,1);

{计算截至昨天,20天内是存在涨停2次的情况}

X_17:=X_11 AND X_1 AND X_2 AND X_3 AND X_4 AND X_5 AND X_6 AND X_15 AND X_7<9.5;

{这句公式用了8个AND,并联下面9个判断条件是否同时满足,如果是,则返回1,否则0:

1. 当天集合竞价资金量大于1800万,意思是要有一定的资金关注度;

2. 个股不是7开头,筛除掉某些特殊板块的个股;

3. 个股不是5开头,筛除掉某些特殊板块的个股;

4. 当天量比>0,就是当天要正常交易的;

5. 个股不是8开头,筛除掉某些特殊板块的个股;

6. 个股不是创业板,筛除掉某些特殊板块的个股;

7. 个股不是科创板,筛除掉某些特殊板块的个股;

8. 该个股昨天涨停了;

9. 当天开盘没有涨停,排除不是一字板,如果是一字板就买不进去了}

爆量竞价打板:X_17 AND X_8>0.6 AND X_7>3 AND X_16=0 AND X_10>10;

{这句公式继续用四个AND,判断下面5个条件是否同时满足:

1. 就是上面的9条判断是否同时满足,需要上面9个同时满足;

2. 开盘换手率要大于0.6,意思是要有资金关注;

3. 开盘涨幅要大于3%,就是当天要高开3个点以上;

4. 过去20天内就涨停过1次,就是说昨天的涨停是20天内的首次涨停;

5. 今天开盘的换手率是昨天换手率的1.1倍以上,就是当天开盘要相对于昨天放量,还是讲究的有资金关注抢筹}


第二部分:个人总结

整体来说,这个指标源码的思路很清晰,结构也很紧凑,没有多余的语句,从这角度看,逻辑结构是完整的。指标副图如下所示:

指标的逻辑思路集中在最后2句,一共14个判断条件。总的来说,就是针对20天内首次涨停的个股,在次日开盘的时候通过换手率、高开满足一定的条件,来抢二板。逻辑上有一定的基础。首板往往是主升浪启动的标志,配合一定的量价关系,确实容易走出连板的行情。从常识上判断,如果是增加当前股价位置的判断,比如在长期横盘的低位,有助于增加成功的概率。 此种类型源码是首次解析,所以对我来说,整个逻辑可以借鉴,后面开发专门的打板指标或许能用上。但由于没有做回测,暂时只是完善到个人指标系统内,不会用于实盘。 【END】


追加内容

本文作者可以追加内容哦 !