飞狐编程说明 下载本文

看出来了吧?SMA(X,N+1,2)=EMA(X,N);

A:SMA(C,N+1,2);

B:EMA(C,N);{N:5,2,99。主图叠加}

两条线输出一样。在SMA的参数中,N必须大于M,否则没有输出。

SMA中,数组每天所占的权重,是较为复杂的。总的来说,日子越近,所占的权重越大,当天所占的权重是M/N,前一天所占的权重是M*(N-M)/(N*N);日子越远,所占的权重就越小,上市第一天的K线数据中,在目前还有权重的体现,不过已经非常非常小了。

SMA看似解决了MA的两大缺点:1、只有N天内的数据占有权重;2、N天内数据所占权重比重一样。有所得必有所失,SMA自己的缺点体现在光滑有余,敏感不足。

有一项检测系统得出的结论称:“简单移动平均值方法既胜过线性加权平均值法,也胜过指数加权平均值法。”(<期货市场技术分析>P231),当然他们不是检测中国股市。有兴趣的朋友,可以用这些移动平均函数,做出交易系统,然后进行检测。 六、

函数: DMA(X,A)

参数: X为数组,A为计算周期

返回: 返回数组

说明: 求X的动态移动平均。

算法: 若Y=DMA(X,A) 则 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1。

示例: DMA(CLOSE,VOL/CAPITAL)

表示求以换手率作平滑因子的平均价

呵呵,均线函数还有。

DMA中的D,是中文的拼音:DONG。也可能是DYNAMIC。

这个函数,与SMA是一家的,看:

Y=M/N*X+(N-M)/N*Y';

Y=A*X+(1-A)*Y';

前者说,N必须大于M,后者说,A必须小于1。然后两者就一样了:A=M/N。

说“A为计算周期”似乎不妥,A明明要取小数才行。DMA在第一根K线就开始起算,SMA要到第二根K线开始起算。 七、

函数: HHV(X,N)

参数: X为数组,N为计算周期

返回: 返回数组

说明: 求N周期内X最高值,N=0则从第一个有效值开始。

示例: HHV(HIGH,30)

表示求30日最高价

函数: HHVBARS(X,N)

返回: X为数组,N为计算周期

参数: 返回数组

说明: 求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计

示例: HHVBARS(HIGH,0)

求得历史新高到到当前的周期数

这两个函数一起用,可以找到当前N天中的最高点。

A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);

B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}

REF(H,BARSLAST(B));

DRAWICON(B,H,1),ALIGN2;{主图叠加。N:30,1,9999} 八、

函数: LLV(X,N)

参数: X为数组,N为计算周期

返回: 返回数组

说明: 求N周期内X最低值,N=0则从第一个有效值开始。

示例: LLV(LOW,0)

表示求历史最低价

函数: LLVBARS(X,N)

参数: X为数组,N为计算周期

返回: 返回数组

说明: 求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计

示例: LLVBARS(HIGH,20)

求得20日最低点到当前的周期数

当前N天之内的最高点和最低点就一目了然了:

A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);

B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}

REF(H,BARSLAST(B));

DRAWICON(B,H,1),ALIGN2;

A2:=BACKSET(ISLASTPERIOD,LLVBARS(L,N)+1);

B2:=COUNT(A2,N)=1;{取得前N个周期内的最低点位置}

REF(L,BARSLAST(B2));

DRAWICON(B2,L,2),ALIGN1;{主图叠加。N:30,1,9999}

A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);

B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}

REF(H,BARSLAST(B));

DRAWICON(B,H,1),ALIGN2;

A2:=BACKSET(ISLASTPERIOD,LLVBARS(L,N)+1);

B2:=COUNT(A2,N)=1;{取得前N个周期内的最低点位置}

REF(L,BARSLAST(B2));

DRAWICON(B2,L,2),ALIGN1;{主图叠加。N:30,1,9999}

这个公式求前期高低点,在600036等次新股上试调整参数就露马脚了,并不完善。

问题出在HHVBARS起算点等原因上。

南客刚发表了一个公式,就顺手牵羊牵过来吧。这个公式可以说是完美解决方案:

HH:HHV(H,N),LINETHICK2;