当前位置:钱柜娱乐官网 > 空间钱柜娱乐官网 > 心情钱柜娱乐官网

【战国策魏策阅读理解】MT4策略精讲:Zigzag.带解读

() () () ()

篇一 : MT4策略精讲:Zigzag.带解读

//[i]Zigzag.带解读

//指标属性设置

#property indicator_chart_window // 主窗口进行指标显示

#property indicator_buffers 1 // 指标运用到数值的个数

#property indicator_color1 Yellow // 指标显示颜色

//三个参数

extern int 跨期 = 12; // 用于设置高低点是相对与过去多少个Bars。[)默认是12

extern int ExtDeviation = 5; // 用于设置重新计算高低点时,与前一高低点的相对点差(默认值是5), 也就是说如果

// A)当前高点>上个高点+ 5 , 或者

// B)当前低点<上个低点 – 5的情况下,则会对之前计算过的ExtBacksteps个Bars值的高低点进行重新计算。

extern int ExtBackstep = 3; // 用于设置回退计算的Bars的个数

//指标的数值存储变量

double 之字折线组[]; // 拐点

double 选择性极高[]; // 高点的临时变量数组

double 选择性极低[]; // 低点的临时变量数组

int level = 3; // 最近已知的三个拐点

bool downloadhistory = false; // 是否第一次计算

//+-------------------------------------------------------------------------------+

int init()

{

IndicatorBuffers(3); // 对于缓冲储存器分配记忆应用自定义指标计算 SetIndexStyle(0, DRAW_SECTION); // 划线的风格 为线段

SetIndexBuffer(0, 之字折线组); // 将数组之字折线组 对应到索引号为0的缓存上 SetIndexBuffer(1, 选择性极高); // 将数组选择性极高 对应到索引号为1的缓存上 SetIndexBuffer(2, 选择性极低); // 将数组选择性极低 对应到索引号为1的缓存上

//--设置图表划线空值, 只是不显示, 但0当作基准用.

SetIndexEmptyValue(0, 0);

//--设置指标的简称。

IndicatorShortName("ZigZag("+跨期+", "+ExtDeviation+", "+ExtBackstep+")");

return(0);

}

//+------------------------------------------------------------------+

int start()

{

//--对临时变量定义

int i;

zigzag指标 MT4策略精讲:Zigzag.带解读

int 已计 = IndicatorCounted();

int limit; // limit:算法中所谓的开始计算位置;

int counterZ; // counterZ:临时变量;

int 关注方向; // 关注方向:用于标识当前计算的是高点或者低点 int shift; //

int back; //

int lasthighpos; //

int lastlowpos; //

double 所取极端值; //

double res; //

double curlow; //

double curhigh; //

double lasthigh; //

double lastlow; //

//--指标载入时已计为0,而downloadhistory为false,将在下一次价格变化时进行 if(已计==0 && downloadhistory){

ArrayInitialize(之字折线组, 0);

ArrayInitialize(选择性极高, 0);

ArrayInitialize(选择性极低, 0);

}

//--初期化,第一次运行时limit为去掉跨期个图形最初的部分。[](算法1.1) if(已计==0){

limit= Bars-跨期;

downloadhistory= true;

}

// 如果之前已经计算过,找到最近已知的三个拐点(高点或低点),将计算位置设置为倒数第三个拐点。(算法1.2)

if(已计>0){

while(counterZ<level && i<100){

res= 之字折线组[i];

if(res!=0)

counterZ++;

i++;

}

// 在上面while中最后一次找到的时候进行+1,所以要-1才能得到真正第三个拐点处。 i--;

//--计算位置赋值

limit= i;

//--如果倒数第三个拐点是低点 (目标是为了寻找高点)

zigzag指标 MT4策略精讲:Zigzag.带解读

if(选择性极低[i]!=0){

curlow= 选择性极低[i];

关注方向= 1;

}

else{

curhigh= 选择性极高[i];

关注方向= -1;

}

//--清空第三个拐点后的数值,准备重新计算最后的拐点

for(i=limit-1; i>=0; i--){

之字折线组[i]= 0;

选择性极低[i]= 0;

选择性极高[i]= 0;

}

}

//--算法Step2部分:计算高低点

for(shift=limit; shift>=0; shift--){

//--2.1计算跨期区间内的低点

所取极端值= Low[iLowest(NULL, 0, MODE_LOW, 跨期, shift)];

if(所取极端值==lastlow)

所取极端值= 0;

else{

lastlow= 所取极端值; // 如果该低点是当前低点,

//--是否比上个低点还低ExtDeviation,不是的话则不进行回归处理

if(Low[shift]-所取极端值>ExtDeviation*Point)

所取极端值= 0;

//--找到一个新的低点

else{

for(back=1; back<=ExtBackstep; back++){

res= 选择性极低[shift+back]; // 回退ExtBackstep个Bar,把比当前低点高的纪录值给清空

if(res!=0 && res>所取极端值)

选择性极低[shift+back]= 0;

泡友留言() 请文明发表评论,恶意辱骂/诽谤,发布广告者封号处理!
当前没有评论评论,赶快抢个沙发吧!
分享泡泡花QQ娱乐网有机会免费得VIP会员哦!
QQ钱柜娱乐官网
女生钱柜娱乐官网男生钱柜娱乐官网情侣钱柜娱乐官网微信钱柜娱乐官网卡通钱柜娱乐官网欧美钱柜娱乐官网
空间钱柜娱乐官网
唯美钱柜娱乐官网可爱钱柜娱乐官网文字钱柜娱乐官网动漫钱柜娱乐官网情侣钱柜娱乐官网欧美钱柜娱乐官网
QQ个性钱柜娱乐官网
伤感钱柜娱乐官网搞笑钱柜娱乐官网情侣钱柜娱乐官网哲理钱柜娱乐官网超拽钱柜娱乐官网幸福钱柜娱乐官网
QQ钱柜娱乐官网
个性名字男生钱柜娱乐官网女生钱柜娱乐官网情侣钱柜娱乐官网搞笑钱柜娱乐官网英文钱柜娱乐官网
QQ钱柜娱乐官网
背景钱柜娱乐官网透明钱柜娱乐官网可爱钱柜娱乐官网外观钱柜娱乐官网小窝钱柜娱乐官网 模块钱柜娱乐官网
QQ钱柜娱乐官网
钱柜娱乐官网设计钱柜娱乐官网图案 钱柜娱乐官网列表钱柜娱乐官钱柜娱乐官网称情侣钱柜娱乐官网伤感钱柜娱乐官网
说说大全
伤感说说心情说说个性说说爱情说说经典说说搞笑说说
Back to Top