净利润断层股票解读和选股公式源码

2020-08-16 10:12:12


  什么是真正的净利润断层强势个股?

  就是在一段时间内,不回补因净利润超预期而出现的跳空缺口。凡是在出现净利润断层后,很快就回补跳空缺口的,都属于失败的净利润断层,都可以直接PASS掉。

  净利润断层的前提条件,是业绩超预期。但所谓的“超预期”本身就是存在水分的,分析师的预测值,毕竟只是一个主观性的推测,判断的界限本来就是模糊的、不一定是客观可靠的。

  那么,业绩超预期的个股,是否得到市场的认同,就只能用资金来投票,靠走势来说话,能走出净利润断层的,必定是得到了资金的认可。

  但是,即便是走出了净利润断层,也仍然是不牢靠的,可能有两种情况,一是业绩超预期或许是实实在在的事实,但是很多个股已经提前大幅炒作了,股价已经PRICE IN了。这个市场没有不透风的墙,在业绩公布前,“内部人”或聪明资金,早就提前介入,提前埋伏,超预期的业绩出炉,公众冲进去的时候,主流资金可以顺势拉高,然后开始派发,借利好出货,这种事情已经屡见不鲜了。

  二是有的业绩超预期公布后,因为大盘或者市场情绪的作用,出现了净利润断层走势,但是这种业绩超预期可能是缺乏过硬质量的;或者业绩超预期只是反应的过去,而市场交易的是未来,如果因为所处行业、公司本身的业务,不存在继续超预期的可能性,那么净利润断层后,就缺乏想象空间,走势就难有持续性。

  上述两种情况,都可能造成净利润断层的失败,所体现的就是出现净利润断层,或惯性上冲后,很快就开始回落,并且回补或封闭掉因净利润断层的跳空缺口,无力继续上涨。其实,这与形态突破上涨一样,有很多假突破,甚至骗线存在。所以不能出现净利润断层就无脑上,一定需要对净利润断层所产生的背后基本面,以及后续走势进行研究和跟踪。同时要设置好止损,防范失败走势的出现所带来的风险。

  净利润断层作为一种独特的交易模式,是《股票魔法师》率先明确提出来的,有一部分人专注于这一交易模式,取得了很大的成功。网络上各种净利润断层的选股公式很多,我也尝试了好多种版本,发现总有瑕疵。昨天公众号“齐大总管”做的一个选股公式,我觉得比较好,就是“30天内出现净利润断层且至今未回补缺口”条件选股公式。该公式可以从走势层面,筛选出我上面所提到的真正的净利润断层股票,那些失败的个股都被剔除掉了。

净利润断层示意图

  净利润断层公式源码

  该公式源代码如下,有兴趣的不妨试一试。

{净利润断层公式}

{高开缺口 := LOW>REF(HIGH,1) OR CLOSE/REF(CLOSE,1)>1.08;}

高开缺口 := LOW>REF(HIGH,1);

当前日期 := DATE-1000000;

SV := -1;

EV := IF(WEEKDAY=1,3,2);

{业绩预告}

预告下限 := FINVALUE(285);

预告上限 := FINVALUE(286);

预告中值 := (预告上限+预告下限)/2;

预告日期 := FINVALUE(313);

预告日期差 := (当前日期-预告日期>SV) AND (当前日期-预告日期<EV);

预告断层 := (预告中值>0)AND 高开缺口 AND 预告日期差;

{业绩快报}

快报净利润 := FINVALUE(287);

快报日期 := FINVALUE(315);

快报日期差 := (当前日期-快报日期>SV) AND (当前日期-快报日期<EV);

快报断层 := (快报净利润>0)AND 高开缺口 AND 快报日期差;

{财报}

财报净利润 := FINVALUE(95);

EPSRATE := FINVALUE(184);

财报日期 := FINVALUE(314);

财报日期差 := (当前日期-财报日期>SV) AND (当前日期-财报日期<EV);

财报断层 := 财报净利润> 0 AND EPSRATE  > 0 AND 高开缺口 AND 财报日期差;

{最近日期断层}

最近日期断层 := 预告断层OR 快报断层 OR 财报断层;

{指定日期1}

指定日期1 := 1;

{指定日期1业绩预告}

指预告下限1 := FINONE(285,0,指定日期1);

指预告上限1 := FINONE(286,0,指定日期1);

指预告中值1 := (指预告上限1+指预告下限1)/2;

指预告日期1 := FINONE(313,0,指定日期1);

指预告日期差1 := (当前日期-指预告日期1>SV) AND (当前日期-指预告日期1<EV);

指预告断层1 := (指预告中值1>0)AND 高开缺口 AND 指预告日期差1;

{指定日期1业绩快报}

指快报净利润1 := FINONE(287,0,指定日期1);

指快报日期1 := FINONE(315,0,指定日期1);

指快报日期差1 := (当前日期-指快报日期1>SV) AND (当前日期-指快报日期1<EV);

指快报断层1 := (指快报净利润1>0) AND 高开缺口 AND 指快报日期差1;

{指定日期1财报}

指财报净利润1 := FINONE(95,0,指定日期1);

指EPSRATE1 := FINONE(184,0,指定日期1);

指财报日期1 := FINONE(314,0,指定日期1);

指财报日期差1 := (当前日期-指财报日期1>SV) AND (当前日期-指财报日期1<EV);

指财报断层1 := 指财报净利润1> 0 AND 指EPSRATE1  > 0 AND 高开缺口 AND 指财报日期差1;

{指定日期1断层}

指定日期1断层 := 指预告断层1 OR 指快报断层1 OR 指财报断层1;

{指定日期2}

指定日期2 := 2;

{指定日期2业绩预告}

指预告下限2 := FINONE(285,0,指定日期2);

指预告上限2 := FINONE(286,0,指定日期2);

指预告中值2 := (指预告上限2+指预告下限2)/2;

指预告日期2 := FINONE(313,0,指定日期2);

指预告日期差2 := (当前日期-指预告日期2>SV) AND (当前日期-指预告日期2<EV);

指预告断层2 := (指预告中值2>0)AND 高开缺口 AND 指预告日期差2;

{指定日期2业绩快报}

指快报净利润2 := FINONE(287,0,指定日期2);

指快报日期2 := FINONE(315,0,指定日期2);

指快报日期差2 := (当前日期-指快报日期2>SV) AND (当前日期-指快报日期2<EV);

指快报断层2 := (指快报净利润2>0) AND 高开缺口 AND 指快报日期差2;

{指定日期2财报}

指财报净利润2 := FINONE(95,0,指定日期2);

指EPSRATE2 := FINONE(184,0,指定日期2);

指财报日期2 := FINONE(314,0,指定日期2);

指财报日期差2 := (当前日期-指财报日期2>SV) AND (当前日期-指财报日期2<EV);

指财报断层2 := 指财报净利润2> 0 AND 指EPSRATE2  > 0 AND 高开缺口 AND 指财报日期差2;

{指定日期2断层}

指定日期2断层 := 指预告断层2 OR 指快报断层2 OR 指财报断层2;

{指定日期3}

指定日期3 := 3;

{指定日期3业绩预告}

指预告下限3 := FINONE(285,0,指定日期3);

指预告上限3 := FINONE(286,0,指定日期3);

指预告中值3 := (指预告上限3+指预告下限3)/2;

指预告日期3 := FINONE(313,0,指定日期3);

指预告日期差3 := (当前日期-指预告日期3>SV) AND (当前日期-指预告日期3<EV);

指预告断层3 := (指预告中值3>0)AND 高开缺口 AND 指预告日期差3;

{指定日期3业绩快报}

指快报净利润3 := FINONE(287,0,指定日期3);

指快报日期3 := FINONE(315,0,指定日期3);

指快报日期差3 := (当前日期-指快报日期3>SV) AND (当前日期-指快报日期3<EV);

指快报断层3 := (指快报净利润3>0) AND 高开缺口 AND 指快报日期差3;

{指定日期3财报}

指财报净利润3 := FINONE(95,0,指定日期3);

指EPSRATE3 := FINONE(184,0,指定日期3);

指财报日期3 := FINONE(314,0,指定日期3);

指财报日期差3 := (当前日期-指财报日期3>SV) AND (当前日期-指财报日期3<EV);

指财报断层3 := 指财报净利润3> 0 AND 指EPSRATE3  > 0 AND 高开缺口 AND 指财报日期差3;

{指定日期3断层}

指定日期3断层 := 指预告断层3 OR 指快报断层3 OR 指财报断层3;

{指定日期4}

指定日期4 := 4;

{指定日期4业绩预告}

指预告下限4 := FINONE(285,0,指定日期4);

指预告上限4 := FINONE(286,0,指定日期4);

指预告中值4 := (指预告上限4+指预告下限4)/2;

指预告日期4 := FINONE(313,0,指定日期4);

指预告日期差4 := (当前日期-指预告日期4>SV) AND (当前日期-指预告日期4<EV);

指预告断层4 := (指预告中值4>0)AND 高开缺口 AND 指预告日期差4;

{指定日期4业绩快报}

指快报净利润4 := FINONE(287,0,指定日期4);

指快报日期4 := FINONE(315,0,指定日期4);

指快报日期差4 := (当前日期-指快报日期4>SV) AND (当前日期-指快报日期4<EV);

指快报断层4 := (指快报净利润4>0) AND 高开缺口 AND 指快报日期差4;

{指定日期4财报}

指财报净利润4 := FINONE(95,0,指定日期4);

指EPSRATE4 := FINONE(184,0,指定日期4);

指财报日期4 := FINONE(314,0,指定日期4);

指财报日期差4 := (当前日期-指财报日期4>SV) AND (当前日期-指财报日期4<EV);

指财报断层4 := 指财报净利润4> 0 AND 指EPSRATE4  > 0 AND 高开缺口 AND 指财报日期差4;

{指定日期4断层}

指定日期4断层 := 指预告断层4 OR 指快报断层4 OR 指财报断层4;

净利润断层 := 最近日期断层OR 指定日期1断层 OR 指定日期2断层 OR 指定日期3断层 OR 指定日期4断层;

{净利润断层公式结束}

PF :=BARSLAST(净利润断层) <= 30;

P1 :=BARSLAST(净利润断层) + 1;

LLV(L, P1) > REF(H, P1) AND PF;

  该选股公式使用了较多的函数,选股耗时较长,需要下载更新通达信中的专业财务数据;我采用的选股范围是“北向3000万+基金3%”(1625只),时间范围默认为当前,选出的净利润断层个股有52只。如果选股范围改为“沪深A股”,则选出的个股超过80只。

  对于公式选出的个股,要进一步从行业景气度、是否属于主流板块,业绩超预期的质量、机构的介入程度、是否提前炒作或透支了涨幅,以及技术面在上攻和回撤时的量价关系、RPS强度等诸多方面进行进一步甄别。



下一篇:如何处理个股与板块的辩证关系

上一篇:股票止盈的思路和标准条件探讨