行情经历一波上涨之后回调,然后再次上涨,形态类似于字母N,这就是N字形态。该形态在不同的分析方法中均有描述,如123法则、波浪理论等,只是名称不同而已。
本文的N字形态选股公式,以突破前期波段高点发出信号。对于判断波段高点,比较常见的方法是用HHV、FINDHIGH之类的函数,在技术Pie之前的文章中,用来写过很多公式,但是其缺点也是比较明显的。对于波段高点,通达信中还有一类函数可以更清晰地描述波段高低点。虽然这些函数是未来函数,为人所诟病,但我们可以加以限制,尽可能减少信号漂移的影响。
一、之字转向函数
ZIG函数
含义:之字转向,ZIG属于未来函数
用法:ZIG(K,N)
K的取值范围一般是0-3,K为0表示开盘价,K为1表示最高价,K为2表示最低价,K为3表示收盘价。这几个数字记不住怎么办?其实K也支持写成开高低收,直接写O、H、L、C就可以了;
N表示价格变化量;
ZIG(K,N)表示当K所代表的价格变化超过N%时转向。
举例:ZIG(3,8)表示收盘价变化超过8%时转向。
字面不容易理解,可以看下面两张图。波段最低收盘价1,波段最高收盘价2,当前收盘价3。
第一张图中,当天收盘价3已经从波段最高收盘价2回落,但是白色连线并没有发生转折,原因是1到2之间的涨幅并没有大于8%;
第二张图中,3刚从2回落,白色连线就开始转折,原因是1到2之间的涨幅已经大于了8%。
ZIG(3,8)形成的转向连线会不断根据最新的行情情况进行修正。那什么情况下,ZIG函数不会再对历史的连线进行修正呢?
以下图中波段1和波段2举例,当波段1大于8%,波段2形成的连线就不会发生变化了,否则波段2的连线还是可能发生变化。(如下图)
波段1和波段2之间已经形成了转向,说明波段2的跌幅大于8%,而N字形态的信号是波段1突破前一个高点,当突破时,从转向点的涨幅已经大于8%,这时波段2已经固定,突破前高产生的信号就是真实的。为什么不说“信号不漂移”呢?因为有一种特殊的情况,后面会介绍。
通过上面的详细介绍,应该对ZIG函数有所了解,但是ZIG函数有个问题,只能画线,编写N字形态选股公式还需要知道波峰波谷的值以及距离当前的周期数。另外ZIG(K,N)中K的取值只有一个,如果要实现波谷取最低价、波峰取最高价只靠ZIG还不行。因此需要用到ZIG派生出的四个函数——TROUGH、TROUGHBARS、PEAK、PEAKBARS,这四个函数都属于未来函数。
TROUGH函数
含义:ZIG转向波谷值
用法:TROUGH(K,N,M)表示之字转向ZIG(K,N)的前M个波谷的值,M最小取值为1
举例:TROUGH(2,8,2)表示%8最低价ZIG转向的前2个波谷的值(如上图波谷2)
TROUGHBARS函数
含义:ZIG转向波谷距离当前的周期数
用法:TROUGHBARS(K,N,M)表示之字转向ZIG(K,N)的前M个波谷距离当前的周期数,M最小取值为1
举例:TROUGHBARS(2,8,2)表示%8最低价ZIG转向的前2个波谷距离当前的周期数(如上图波谷2)
PEAK函数
含义:ZIG转向波峰值
用法:PEAK(K,N,M)表示之字转向ZIG(K,N)的前M个波峰的值,M最小取值为1
举例:PEAK(1,8,2)表示%8最高价ZIG转向的前2个波峰的值(如上图波峰2)
PEAKBARS函数
含义:转向波峰距离当前的周期数
用法:PEAKBARS(K,N,M)表示之字转向ZIG(K,N)的前M个波峰距离当前的周期数,M最小取值为1
举例:PEAKBARS(1,8,2)表示%8最高价ZIG转向的前2个波峰距离当前的周期数(如上图波峰2)
二、N字形态主图指标公式
思路:波谷2到波峰1涨幅大于30%,波峰1到波谷1回调幅度小于15%,突破波峰1产生信号。
N:=8;
ZZ:ZIG(3,N);{为了方便,画线用收盘价}
BG1:=TROUGH(2,N,1);{波谷1}
BF1:=PEAK(1,N,1);{波峰1}
BG2:=TROUGH(2,N,2);{波谷2}
BGB1:=TROUGHBARS(2,N,1);{波谷1距离当前的周期数}
BFB1:=PEAKBARS(1,N,1);{波峰1距离当前的周期数}
BGB2:=TROUGHBARS(2,N,2);{波谷2距离当前的周期数}
A1:=(BF1-BG2)/BG2*100>30;{波谷2到波峰1涨幅大于30%}
A2:=BGB2-BFB1>3;{波谷2在波峰1之前}
A3:=(BG1-BF1)/BF1*100>-15;{从波峰1调整到波谷1幅度小于15%}
A4:=BFB1-BGB1>10;{从波峰1调整周期大于10}
A5:=CROSS(C,BF1);{收盘价突破波峰1}
A6:=VOL>1.5*MA(VOL,10);{成交量放量}
AA:=A1 AND A2 AND A3 AND A4 AND A5 AND A6;
XG:=FILTER(AA,10);
STICKLINE(XG,H,L,0,0),COLORYELLOW;
STICKLINE(XG,O,C,3,0),COLORYELLOW;
三、N字形态选股公式
N:=8;
ZZ:=ZIG(3,N);
BG1:=TROUGH(2,N,1);
BF1:=PEAK(1,N,1);
BG2:=TROUGH(2,N,2);
BGB1:=TROUGHBARS(2,N,1);
BFB1:=PEAKBARS(1,N,1);
BGB2:=TROUGHBARS(2,N,2);
A1:=(BF1-BG2)/BG2*100>30;
A2:=BGB2-BFB1>3;
A3:=(BG1-BF1)/BF1*100>-15;
A4:=BFB1-BGB1>10;
A5:=CROSS(C,BF1);
A6:=VOL>1.5*MA(VOL,10);
AA:=A1 AND A2 AND A3 AND A4 AND A5 AND A6;
XG:FILTER(AA,10);
四、注意点
关于信号漂移的情况:突破信号产生之后,紧邻的下一根K线最高价下跌,这种情况会出现信号消失,但是之后如果再创新高,消失的信号又会回来。如果跌幅大于8%,这个信号就不会出现了。这种情况对于复盘信号的成功率是有影响的,但是选股没有问题,因为突破前高是实打实存在的。因此看到成功率比较高的公式还是长点心吧!
另外,主图的连线是ZIG(3,8),用的是收盘价,主图连线只是为了方便观察。计算波峰波谷用得最高价最低价,所以显示的连线和后面的计算还是有区别的。
最后,对于信号漂移情况,可以动手用昨天介绍的方法检测。《通达信如何检测未来函数?》
关注技术Pie,学习更多通达信指标公式编写知识。
友情提醒:本文仅供学习交流技术指标公式,不构成任何投资建议。投资有风险,入市需谨慎!