指标函数 指标函数 所谓指标函数,就是头疼函数。一些指标的算法极为繁琐,做成基本函数,用起来就方便了。 一、 函数: 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是根据价格估算获利盘。 之所以说估算,是因为要精确算,必须把每笔成交的价格和成交量都记录下来,一般这是很难做到的。 就算能做到,筹码分布方面的技术分析有效么?这就看各人自己的取舍了,股市中目前还没有发现包赚不赔的技术指标。 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可以估算出来,留作思考题吧。
{点击看本软件截图:58股票 公式网 http://www. 58gu. com 整理} |