3.3 均线指标程序代码编写实例
均线是金融市场中的一个最常用的、最灵活的的技术分析手段之一,是道氏理论的具体体现,是K 线图的重要补充。因其直观、易懂,所以很受投资者的青睐。
3.3.1 均线的定义
均线是移动平均线的简称,是指一定交易时间内的算术平均钱。下面以30 日均线为例来说明一下,将30 日内的收盘价逐日相加,然后除以30 ,就得出30 日的平均值,再将这些平均值依先后次序连接成一条线,这条线就叫30 日移动平均线,其他平均线算法以此类推。均线如图3.9 所示。

3.3.2 均线的黄金交叉
黄金交叉出现在上涨初期,由2 根均线组成,一根时间短的均线由下向上穿过一根时间长的均线,并且是肘阎长的均线是向上移动的。
下面来量化黄金交叉,先来看5 日均线与10 曰均线的黄金交叉,即5 日均线上穿10 日均线,并且10 日均线向上移动。为了表示10 日均线向上移动,虽化为7 天内10 日均线都是向上移动的。
先来定义5 日均线: 即X1:= MA(CLOSE,5) ;
再来定义10 日均线,即X2:= MA(CLOSE,10) ;
5 日均线上穿10 日均线,即X3:= CROSS(X1,X2) ;
再来定义上一个周期的10 日均线,即曰:= REF(X2 ,1);
当前周期的10 日均线大于上一个周期的10 曰均线,即Y2:= X2>Y1;
连续7 天10 日均线都是向上移动的,即Y3:= COUNT(Y2,7) =7 ;
这样, 5 日均线与10 日均线的黄金交叉代码如下:

那么, 5 日均线与30 日均线的黄金交叉,即5 日均线上穿30 曰均线,并且30 日均线向上移动,代码如下:

同理, 10 日均线与30 日均线的黄金交叉,即10 日均线上穿30 日均线,并且30 日均钱向上移动。其程序代码也很简单只须把5 日均线换成10 日均线即可,即X1:= MA(CLOSE,10) ;
3.3.3 均线多头排列
均线多头排列出现在涨势中,由3 根均线组成,最上面一根是短期均钱,中间一根是中期均钱,最下面一根是长期均线, 并且3 根均线呈向上圆弧状。
下面来量化均线多头排列, 即5 日均线在10 日均线上方, 10 日均线在30 曰均线上方,并且要持续7 天。
先来定义5 日均线、10 曰均线和30 日均钱, 具体代码如下:
X1 := MA(CLOSE, 5);
X2 := MA(CLOSE, 10);
X3:= MA(CLOSE, 30);
5 日均线在10 日均线上方, 1 0 曰均线在30 曰均线上方,代码是: Y1>X1>X2 && X2>X3 ;
要持续7 天, 代码是: EVERY(Y1 ,7) = 1 ;
这样,均线多头排列的程序代码如下:

3.3.4 价格重新站上5 日均线
价格重新站上5 日均线是一个新的做多条件, 在这里为了使这个条件更充分,再加上价恪始终在30 日均线上方运行。
先来定义5 日均线和30 日均线, 具体代码如下:
X1 := MA(CLOSE, 5);
X2 := MA(CLOSE, 30);
价恪始终在30 日均线上方, 里化为连续7 天价格都在3 0 日均线上方,代码如下:
Y1 : = CLOSE >X2;
Y2:= EVERY(Y1,7) =1;
价格站上5 日均线, 代码如下:
Z1:= CROSS (CLOSE, X1);
这样,整个程序代码如下:

3.3.5 均线死亡交叉
死亡交叉出现在下跌初期,由2 根均线组成,一根时间短的均线由上向下穿过一恨时问长的均钱,并且是时间长的均线是向下移动的。
下面来量化黄金交叉, 10 日均线与30 曰均线的死亡交叉,即10 日均线下穿30 日均钱,并且30 日均线向下移动。为了表示30 曰均钱向下移动,虽化为7 天内30 日均线都是向下移动的。
先来定义10 日均线:即X1:= MA(CLOSE,10) ;
再来定义30 日均钱,即X2:= MA(CLOSE,30) ;
10 日均线下穿30 曰均钱,即X3:= CROSSDOWN(X1 ,X2) ;
再来定义上一个周期的30 日均线,即Y1:= REF(X2,1);
当前周期的30 日均线小于上一个周期的30 日均线,即Y2:= X2<Y1;
连续7 天30 日均线都是向下移动的,即Y3:= COUNT(Y2.7) =7 ;
这样, 10 日均线与30 日均线的死亡交叉代码如下:

3.3.6 均线空头排列
空头排列出现在下跌趋势中,由3 根均线组成,最上面一根是长期均线,中间一根是中期均线,最下面一根是短期均线,并且3 根均线呈向下圆弧状。
下面来量化均线空头排列,即5 日均线在10 日均线下方,10 曰均线在30 日均线下方,并且要持续7 夫。
先来定义5 日均线、10 日均线和30 日均线, 具体代码如下:
X1 := MA(CLOSE,5) ;
X2:= MA(CLOSE,10) ;
X3 := MA(CLOSE, 30)
5 日均线在10 日均线下方, 10 曰均线在30 日均线下方,代码是: Y1:=X1<X2 && X2<X3
要持续7 天,代码是: EVERY(Y1,7) =1 ;
这样,均线空头排列的程序代码如下:
