指标函数
指标函数
所谓指标函数,就是头疼函数。一些指标的算法极为繁琐,做成基本函数,用起来就方便了。
一、
函数: ZIG(K,N)
参数: N为常数,参数K可为序列或常数,K取0--3,表示0:开盘价,1:最高价,2:最低价,3:收盘价;也可为ma(close,5)等。
返回: 返回数组
说明: 当价咯变化量超过N%时转向
示例: ZIG(3,5) 表示收盘价的5%的ZIG转向
ZIG(MA(C,20),5)表示均线的5%的ZIG转向
ZIG,之字形。
1、K可以作为参数调整,也可以直接写其它的指标线,如"kd.k"。N也可以做成参数调整。
2、在K线中,ZIG只能对一根指标线进行转向处理。要想高点在H位置,低点在L位置,ZIG是做不到的。
3、ZIG到底是如何体现“未来”的?即它是怎么画出来的?见最后的说明。
4、ZIG输出的是数值,不是直线。
5、ZIG一般使用在看波浪、看形态上。
ZIG函数是未来函数之第二大嫌疑。在交易系统中用未来函数,就是用BACKSET或ZIG,可以使许多人“梦想成真”。
由于“未来函数”在交易系统中可以大大作弊,才使其在指标和选股公式中也一起“臭名昭著”。
二、
函数: PEAK(K,N,M)
参数: N为常数,参数K可为序列或常数,K取0--3,表示0:开盘价,1:最高价,2:最低价,3:收盘价;也可为ma(close,5)等,M为大于等于1的整数
返回: 返回数组
说明: 表示之字转向ZIG(K,N)的前M个波峰的数值
示例: PEAK(1,5,1) 表示%5最高价ZIG转向的上一个波峰的数值
PEAK(MA(C,20),5,1) 表示均线的5%的ZIG转向的上一个波峰的数值
PEAK,高峰。
这个函数可以取到ZIG波峰的数值。如果K取1,波峰取的是H。如果K取3,波峰是C的波峰,可不是H。
三、
函数: PEAKBARS(K,N,M)
参数: N为常数,参数K可为序列或常数,K取0--3,表示0:开盘价,1:最高价,2:最低价,3:收盘价;也可为ma(close,5)等,M为大于等于1的整数
返回: 返回数组
说明: 表示之字转向ZIG(K,N)的前M个波峰到当前的周期数
示例: PEAKBARS(1,5,1)
表示%5开盘价ZIG转向的上一个波峰到当前的周期数
PEAKBARS(MA(C,20),5,1)表示均线的5%的ZIG转向的上一个波峰到当前的周期数
这个函数用来定波峰的位置的。有了位置,画两根线试试。
ZIG(1,N);
A1:=BACKSET(ISLASTBAR,PEAKBARS(1,N,1)+1);
A2:=A1>REF(A1,1);
B1:=BACKSET(ISLASTBAR,PEAKBARS(1,N,2)+1);
B2:=B1>REF(B1,1);
C1:=BACKSET(ISLASTBAR,PEAKBARS(1,N,3)+1);
C2:=C1>REF(C1,1);
DRAWLINE(B2,H,A2,H,1);
DRAWLINE(C2,H,B2,H,1);{N:3.1.99,主图叠加}
四、
函数: TROUGH(K,N,M)
参数: N为常数,参数K可为序列或常数,K取0--3,表示0:开盘价,1:最高价,2:最低价,3:收盘价;也可为ma(close,5)等,M为大于等于1的整数
返回: 返回数组
说明: 表示之字转向ZIG(K,N)的前M个波谷的数值
示例: TROUGH(2,5,2) 表示%5最低价ZIG转向的前2个波谷的数值
TROUGH(MA(C,20),5,2) 表示均线的5%的ZIG转向的前2个波谷的数值
TROUGH,水槽,波谷。
与PEAK对应。
五、
函数: TROUGHBARS(K,N,M)
参数: N为常数,参数K可为序列或常数,K取0--3,表示0:开盘价,1:最高价,2:最低价,3:收盘价;也可为ma(close,5)等,M为大于等于1的整数
返回: 返回数组
说明: 表示之字转向ZIG(K,N)的前M个波谷到当前的周期数
示例: TROUGHBARS(2,5,2) 表示%5最低价ZIG转向的前2个波谷到当前的周期数
TROUGHBARS(MA(C,20),5,2) 表示均线的5%的ZIG转向的前2个波谷到当前的周期数
对应于PEAKBARS。
这样在应用时,ZIG的各点的数值是知道的,波峰和波谷的数值和位置也可以引用到了。
“综合运用”:
ZIG(3,N),CROSSDOT;{主图叠加}
ZIG(3,N),CIRCLEDOT,COLORMAGENTA;
A:=PEAKBARS(3,N,1);
B:=TROUGHBARS(3,N,1);
B>A,COLORGREEN;
A>B,COLORRED;{五彩K线}
六、
函数: SAR(N,S,M)
参数: N为计算周期,S为步长,M为极值
返回: 返回数组
说明: 计算抛物转向点
示例: SAR(10,2,20)
表示计算10日抛物转向,步长为2%,极限值为20%
STOP AND REVERSE,转向点指标,停顿指标,又称抛物线指标,全称为抛物线转向指标。
SAR指标,也是王尔德(RSI的发明人)发明的,主要用于与趋向指标DMI(DIRECTION MOVEMENT INDEX)结合使用。
SAR一般以圆圈的形式输出,实际上也是输出数值的,形式可以用描述函数进行改变。
说是抛物转向,输出的并不是标准的抛物线。
目前的转向指标,典型的有三个,ZIG、SAR(因为做成基本函数了,所以有数值输出),还有一个是结构波浪,可以用基本函数做出,但只能输出直线,不能输出完整的数值。
SAR的画法,在众多的股票软件中,是一种百花齐放的局面。由于倚天提供了开放可定制的公式评台,所以,只要有明确思路的SAR画法,都可以在倚天实现。倚天中基本函数SAR的具体画法在最后介绍。
SAR的画法,矛盾集中在数个方面,所以没有一种方法能够一统江山。
1、起算点,是从看涨开始还是从看跌开始?怎么判断画前的看涨和看跌?
2、转向条件满足时,是迟一个周期跳转还是迟两个周期跳转?
3、跳转后的第二个周期,以0步长计算,还是以STEP步长计算?
4、当N取1时,应不应该有输出?等等
倚天的主要问题是在起算点就满足跳转条件时,会延迟一个周期跳转,而后面的就不延迟跳转了。分析家的问题是起算点有时是找不准前期极值的。这些都不是大问题,因为后面的计算是趋向于统一的,起算点附近的SAR问题,一般无人问津。
七、
函数: SARTURN(N,S,M)
参数: N为计算周期,S为步长,M为极值
返回: 返回数组
说明: 若发生向上转向则返回1,若发生向下转向则返回-1,否则为0
由于可以返回三个值,就可以判断是向上的跳转还是向下的跳转。
SA:=SAR(3,2,20);
A:=SARTURN(3,2,20);
B:=A=1;
D:=A=-1;
E:=BARSLAST(B)>BARSLAST(D);
F:=NOT(E);
DRAWICON(E,SA,10);
DRAWICON(F,SA,11);{主图叠加}
如果想颜色更鲜艳一些,可调用BMP文件,把最后两句改为:
DRAWICON(E,SA,'S31');
DRAWICON(F,SA,'S28');
八、
函数: COST(N)
参数: N为常数,表示百分比
返回: 返回数组
说明: 计算成本分布情况,该函数仅对日线分析周期有效
示例: COST(10)
表示10%获利盘的价咯是多少,即有10%的持仓量在该价咯以下,其余90%在该价咯以上,为套牢盘
函数: WINNER(A)
参数: A为数组或常数
返回: 返回数组
说明: 计算获利盘比例,该函数仅对日线分析周期有效
示例: WINNER(CLOSE)
表示以当前收市价卖出的获利盘比例,例如返回0.1表示10%获利盘
WINNER(10.5)
表示10.5元价咯的获利盘比例
COST,成本。WINNER,优胜者,获利。
两者互相换算。COST是根据获利盘估算价咯,WINNER是根据价咯估算获利盘。
之所以说估算,是因为要精确算,必须把每笔成交的价咯和成交量都记录下来,一般这是很难做到的。
就算能做到,筹码分布方面的技术分析有效么?这就看各人自己的取舍了,股市中目前还没有发现包Z不赔的技术指标。
COST(WINNER(C)*100);
C;
此两者趋于相等。也说明这两个函数支持序列变量。
平均成本价的计算。将刚好完全换手的每笔成交量和成交价咯相乘,然后除以这期间总的成交量,即为平均成本价。
平均成本价咯:COST(50);
AA:=SUMBARS(VOL,CAPITAL);
平均成本价:SUM(C*V,AA)/SUM(V,AA);
实际上这两种方法都是估算出来的,后者的误差可能更大一些。
相当于一箱苹果是2元一斤,另两箱苹果是5元一斤。三箱苹果的平均价咯就是(2*1+5*2)/(1+2)=4元。
这有点统计学中的调和平均值的味道了。筹码分布,要搞得复杂,可以计算中位值、众位值,研究正态分布、偏态分布,还有集中度、穿透力,当真是花样繁多,只能留给有兴趣的朋友自己研究了。
筹码分布的峰位在哪个价咯区域,是筹码分布爱好者很想知道的一个指标。用COST可以估算出来,留作思考题吧。
|