第九讲:常用函数示例
系统中的函数非常多,其中的一些函数只有在特定的语句中才会用得到。本文介绍几个能经常用到函数,方便大家在以后编写时使用。
1、COUNT 统计总数
原理:COUNT (X,N),统计N周期中满足条件X的周期数,若N=0则从第一个有效值开始。
例如:COUNT(C<O,10),表示统计10周期内收阴的周期数。
以前曾列举过这个函数,今天单独拿出来,是想进一步说明它的应用原理。以上面这个例子,单独使用是没有任何意义的。如语句:金叉 AND COUNT(C<O,10); 其输出结果还是:金叉,后面的半句没有起到作用。
那么怎么才能发挥它的作用呢?还必须在它的后面加上我们要求的条件。如:10周期内收阴的周期数大于7,完整的表达式:金叉AND COUNT(C<O,10)>7; 再举几个例子:
成交量连续5天上升:COUNT(vol>(VOL,1),5)=5;
如果求5天内只能1天上升:COUNT(VOL>(VOL,1),5)=1;
如果在5天内成交量大于5日均量有2天以上呢COUNT(VOL>MA(VOL,5),5)>=2;
2、FILTER 信号过滤
用法:FILTER(X,N),X满足条件后,将其后N周期内的数据置为0。此函数常应用于画图标、显示文字以及选股公式出现连续信号时。
例如:当3日均线和5日均线金叉时在最低价位置标记“金叉”:
MA3:=MA(CLOSE,3);
MA5:=MA(CLOSE,5);
AA:=crOSS(MA3,MA5);
DRAWTEXT(AA,L,'金叉');
这样有时就会出现“金叉”字重叠现象,杂乱难看。若过滤一下,舍去5天内重复出现的,则最后一句改为:
DRAWTEXT(FILTER(AA,5),L,'金叉');就不会出现信号过多的现象了。
3、SUM 求和
用法:SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始。
例如:SUM(VOL,10),表示统计从10周期以来的成交量总和。这个好理解,就不多说了。
4、HHV 最高值
用法:HHV(X,N),求N周期内X的最高值,N=0则从第一个有效值开始。
例如:HHV(HIGH,30),表示求30日最高价。那么10天内的最高收盘价呢?HHV(C,10)。
另外还有一个与此相反的函数 最低值 LLV 原理与此相同。
5、MAX 最大值
用法:MAX(A,B)返回A和B中的较大值
例如:MAX(C,0),表示取得收盘价和开盘价中较大的值。若求开盘价、收盘价和昨天收盘价中的最大值,则:MAX(MAX(C,0),REF(C,1));就是叠加一个最大值函数。
另外,还有一个相反函数:MIN,最小值,原理与最大值相同。
注:最大值与最高值是不能混用的。
6、COST 成本分布
用法:COST(20) 表示20%获利盘的价格是多少
即有20%的持仓量在该价格以下,其余80%在该价格以上,为套牢盘。
7、WINNER 获利盘比例 与成本分布相对应,都是计算获利情况的。
WINNER(10) 表示10元价格的获利盘比例;
WINNER(CLOSE) 表示以收盘价卖出的获利盘比例,如该值返回0.2,表示在当天的收盘价上卖出,只有20%的人是赚钱的。
以上两个函数仅对日线分析周期比较有效。
以上两个函数在有些股软或《未来函数检测器》中被认定为未来函数。
据有人考证,该函数的在极个别的情况下确实出现过信号漂移现象。但一般情况下还是比较稳定的。