缠学-线段指标的创新(MQL4)(2)

2019-04-22 13:56

图4

假设a点是前一向下线段的终点,线段确认过程如下: 第一步,当出现了一条向上的笔后,我们就测该笔的电压: ①若该笔触及超高压,那么它就是线段,如图中①。

②若该笔虽未触及超高压,但已达到高电压,那么进入第二步判断,如图中②。

③若该笔连一般的高压都未达到,那么它不能成线段,如图中③。 注:图中的③是指当前的ab笔不能构成新线段,但并不一定会发展成如图中③的形态,也有可能成为如图E或者F的形态。

第二步,对②形态作进一步判断:

如果是先短后长,ab构成突破状态,则ab笔自成线段,如图中的A。 如果是先长后短,ab笔不能自成线段,如图中的B。此时需等待向下的笔c的出现,c出现后又分二种情形:一种是c点跌破a点,那么进入第三步;一种是c点没有跌破a点,那么跳转至第四步。

第三步,继向上的b笔后又出现了c笔,而且c点低于a点,线段分二种情形来确定:

⒈(b-c)>=HighVoltage,即构成了一条第二类的新线段,此时c笔自成线段,而b笔成为视同线段,如图中的C。

⒉(b-c)请注意,我们之所以把c笔是否触及高压电分成C和D二种情形,是为了讲清楚线段确认的基本原理。在实务中是无需如此刻意的,尤其是在EA交易中分为二种情形是没有意义的,因为b笔是不是线段对于当前的交易已成为历史,当前的交易我们只需关心c点是不是一个线段的端点,显然,C和D告诉我们同一个结果:c是一个向下线段的端点。

第四步,继向上的b笔后又出现了c笔,但c点没有跌破a点,那么: 或形成向上Z字走势,如图中E;或形成向下Z字走势,如图中F。其中向上的Z字形要求d突破b,即d>b;而向下的Z字形并不要求e一定要突破a,但必须突破c,即e

亲爱的读者,我之所以用这么大的篇幅来讲解电指标的基本运算,是因为我们已经离EA很近了,希望您能做到知其然,知其所以然。

⑷电指标的核心运算 ⒈形态坐标变量

图5

在图5中: A图: ①假设

▲Start与a已成一条向下的线段 ▲ab笔不满足成线条件 ▲abcd形成了第一类新线段

②需求

在d点出现之前,指标只画了Start与a一条向下的线段,当d点出现后需要在ad之间画一条向上的线段

③记忆

形态坐标变量管理以下信息: △d点坐标:RightShift, RightPrice。 △a点坐标:LeftShift, LeftPrice。 △Start点坐标:BeforeShift, BeforePrice。 B图: ①假设

▲Start与a已成一条向下的线段 ▲ab笔不满足成线条件 ▲bcde形成了第一类新线段 ②需求

在e点出现之前,指标只画了Start与a一条向下的线段,当e点出现后需要在be之间画一条向下的线段,在ab间画一条向上的(视同)线段

③记忆

形态坐标变量管理以下信息: △e点坐标:RightShift, RightPrice。 △b点坐标:MiddShift, MiddPrice。 △a点坐标:LeftShift, LeftPrice。 △Start点坐标:BeforeShift, BeforePrice。 ⒉形态坐标记忆的逻辑关系

以上形态坐标记忆逻辑是依据自左向右运算的。 ⒊简化约定

如前第三步所述,在B图需求中画ab(视同)线段是没有意义的,因此我们把它简化为Start与e一条向下的线段,有兴趣的读者可以自行添加。

电指标的核心运算由函数GetElectricity()承担,函数GetElectricity()解读如下:

⒈参数表

int nY_Shift 左侧起始坐标,该值与LeftShift保持一致。 ⒉状态代码 ①笔即线,代码1。

●笔触及超高压,如图6所示。

图6

运算代码: //●笔触及超高压,代码1 if( (nY_High-nY_Low)>=(1+Delta)*HighVoltage ) { if( LineTowards>0 ) { RightPrice = nY_High; } else { RightPrice = nY_Low; } return(1); } 其中此前已对右侧坐标赋值:RightShift = Stroke[nY_Pos][3];,而LineTowards存储的是笔方向(即新线段方向)=±1。

●笔触及高压线并创新高或新低,如图7所示。

图7

图7与图6的不同之处在于它必须是创新高或新低,所以它肯定是非首柱的,即BeforePrice>0;图6就没有这个限制,它可以发生在BeforePrice=0的位置。

运算代码:

//●非首柱笔触及高压线 if( nY_Shift<(TotalStroke-2) && (nY_High-nY_Low)>=HighVoltage ) { //且创新高或新低,绝对值为1 if( (LastTowards<0 && nY_High>BeforePrice) || (LastTowards>0 nY_Low0 ) { RightPrice = nY_High; } else { RightPrice = nY_Low; } return(1); } } && 其中此前已对右侧坐标赋值:RightShift = Stroke[nY_Pos][3];,而LineTowards存储的是笔方向(即新线段方向)=±1。

②笔成电(Z字形),代码2或3。

笔成电分为正向电(如图8所示)和反向电(如图9所示)二种。

图8

图9

●延续原线方向的电称为正向电,包括图8中的 A和B二种情形,状态代码为2;与原线方向相反的电称为反向电,包括图9中的 A和B二种情形,状态代码为3。

●Z字形包括一重和多重振荡。


缠学-线段指标的创新(MQL4)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017年广州市海珠区江南外国语学校八年级(下)期中英语试题(答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: