交易危机

 找回密码
 快捷注册(禁q号)

QQ登录

只需一步,快速开始

搜索
广告位
查看: 15195|回复: 13
打印 上一主题 下一主题

[Zigzag] ZigZag Pointer 改版zigzag指标

[复制链接]

824

主题

27万

积分

28

精华

大型投行

金钱
273475 美元
权重
2293
跳转到指定楼层
楼主
发表于 2014-10-24 06:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
图示:

代码下载:
用箭头标识的zigzag指标.mq4 (3.75 KB, 下载次数: 19)

  1. //+------------------------------------------------------------------+
  2. //|                                               ZigZag Pointer.mq4 |
  3. //|                                    zigzag modified by Dr. Gaines |
  4. //+------------------------------------------------------------------+
  5. #property copyright "dr_richard_gaines"
  6. #property indicator_chart_window
  7. #property indicator_buffers 2
  8. #property indicator_color1 Lime
  9. #property indicator_width1 1
  10. #property indicator_color2 Red
  11. #property indicator_width2 1
  12. //---- indicator parameters
  13. extern int ExtDepth=12;
  14. extern int ExtDeviation=5;
  15. extern int ExtBackstep=3;
  16. //---- indicator buffers
  17. double ExtMapBuffer[];
  18. double ExtMapBuffer2[];
  19. //+------------------------------------------------------------------+
  20. //| Custom indicator initialization function                         |
  21. //+------------------------------------------------------------------+
  22. int init()
  23.   {
  24.    IndicatorBuffers(2);
  25. //---- drawing settings
  26.    SetIndexStyle(0,DRAW_ARROW);
  27.    SetIndexArrow(0, 233);
  28.    SetIndexStyle(1,DRAW_ARROW);
  29.    SetIndexArrow(1, 234);
  30. //---- indicator buffers mapping
  31.    SetIndexBuffer(0,ExtMapBuffer);
  32.    SetIndexBuffer(1,ExtMapBuffer2);
  33.    SetIndexEmptyValue(0,0.0);
  34.    
  35. //---- indicator short name
  36.    IndicatorShortName("ZigZag("+ExtDepth+","+ExtDeviation+","+ExtBackstep+")");
  37. //---- initialization done
  38.    return(0);
  39.   }
  40. //+------------------------------------------------------------------+
  41. //|                                                                  |
  42. //+------------------------------------------------------------------+
  43. int start()
  44.   {
  45.    int    shift, back,lasthighpos,lastlowpos;
  46.    double val,res;
  47.    for(shift=Bars-ExtDepth; shift>=0; shift--)
  48.      {
  49.       val=Low[Lowest(NULL,0,MODE_LOW,ExtDepth,shift)];
  50.       if(val==lastlow) val=0.0;
  51.       else
  52.         {
  53.          lastlow=val;
  54.          if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
  55.          else
  56.            {
  57.             for(back=1; back<=ExtBackstep; back++)
  58.               {
  59.                res=ExtMapBuffer[shift+back];
  60.                if((res!=0)&&(res>val)) ExtMapBuffer[shift+back]=0.0;
  61.               }
  62.            }
  63.         }
  64.       ExtMapBuffer[shift]=val;
  65.       //--- high
  66.       val=High[Highest(NULL,0,MODE_HIGH,ExtDepth,shift)];
  67.       if(val==lasthigh) val=0.0;
  68.       else
  69.         {
  70.          lasthigh=val;
  71.          if((val-High[shift])>(ExtDeviation*Point)) val=0.0;
  72.          else
  73.            {
  74.             for(back=1; back<=ExtBackstep; back++)
  75.               {
  76.                res=ExtMapBuffer2[shift+back];
  77.                if((res!=0)&&(res<val)) ExtMapBuffer2[shift+back]=0.0;
  78.               }
  79.            }
  80.         }
  81.       ExtMapBuffer2[shift]=val;
  82.      }
  83.    // final cutting
  84.    lasthigh=-1; lasthighpos=-1;
  85.    lastlow=-1;  lastlowpos=-1;
  86.    for(shift=Bars-ExtDepth; shift>=0; shift--)
  87.      {
  88.       curhigh=ExtMapBuffer2[shift];
  89.       //---
  90.       if(curhigh!=0)
  91.         {
  92.          if(lasthigh>0)
  93.            {
  94.             if(lasthigh<curhigh) ExtMapBuffer2[lasthighpos]=0;
  95.             else ExtMapBuffer2[shift]=0;
  96.            }
  97.          //---
  98.          if(lasthigh<curhigh || lasthigh<0)
  99.            {
  100.             lasthigh=curhigh;
  101.             lasthighpos=shift;
  102.            }
  103.          lastlow=-1;
  104.         }
  105.       //----
  106.         {
  107.          if(lastlow>0)
  108.            {
  109.             else ExtMapBuffer[shift]=0;
  110.            }
  111.          //---
  112.            {
  113.             lastlowpos=shift;
  114.            }
  115.          lasthigh=-1;
  116.         }
  117.      }
  118.   
  119.    for(shift=Bars-1; shift>=0; shift--)
  120.      {
  121.       if(shift>=Bars-ExtDepth) ExtMapBuffer[shift]=0.0;
  122.       else
  123.         {
  124.          res=ExtMapBuffer2[shift];
  125.          if(res!=0.0) ExtMapBuffer2[shift]=res;
  126.         }
  127.      }
  128.   }
  129.   
  130.   //end//
复制代码

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏4 转播转播 分享分享 分享淘帖 支持支持 保留保留

122

主题

3万

积分

23

精华

地佐更接地气

大型投行

金钱
30818 美元
权重
870
沙发
发表于 2015-12-26 19:01 来自手机 | 只看该作者
沙发消灭零回复。

0

主题

34

积分

0

精华

外汇入门

金钱
34 美元
权重
0
板凳
发表于 2016-4-6 08:17 | 只看该作者
回复

使用道具 举报

0

主题

34

积分

0

精华

外汇入门

金钱
34 美元
权重
0
地板
发表于 2016-4-6 08:29 | 只看该作者
公式错误啊

0

主题

39

积分

0

精华

外汇入门

金钱
39 美元
权重
0
5
发表于 2016-7-12 21:11 | 只看该作者
有未来按摩谢谢

0

主题

71

积分

0

精华

外汇入门

金钱
71 美元
权重
0
6
发表于 2017-2-25 11:41 | 只看该作者
感谢楼主分享!

1

主题

1810

积分

0

精华

初级操盘手

金钱
1810 美元
权重
0
7
发表于 2018-3-30 13:07 | 只看该作者
谢谢分享!!

0

主题

303

积分

0

精华

见习操盘手

金钱
303 美元
权重
0
8
发表于 2020-4-9 11:01 | 只看该作者
这指标漂移不?

0

主题

93

积分

0

精华

外汇入门

金钱
93 美元
权重
0
9
发表于 2020-8-25 10:45 | 只看该作者
这个源码有问题啊,安装上没反应

0

主题

93

积分

0

精华

外汇入门

金钱
93 美元
权重
0
10
发表于 2020-8-25 11:11 | 只看该作者
为啥安装上没反应

0

主题

93

积分

0

精华

外汇入门

金钱
93 美元
权重
0
11
发表于 2020-8-25 11:11 | 只看该作者
不能用的安装了

0

主题

93

积分

0

精华

外汇入门

金钱
93 美元
权重
0
12
发表于 2020-8-25 15:34 | 只看该作者
好像带没有问题里面

1

主题

99

积分

0

精华

外汇入门

金钱
99 美元
权重
0
13
发表于 2021-4-8 23:09 | 只看该作者
为啥安装上没反应

0

主题

97

积分

0

精华

外汇入门

金钱
97 美元
权重
0
14
发表于 2022-10-9 15:31 | 只看该作者
好东西啊
您需要登录后才可以回帖 登录 | 快捷注册(禁q号)

本版积分规则

QQ|黄金吧|黄金论坛|手机版|指标下载|非农|目录|交易危机

版权所有: ©2014-2021 fx3q.com Powered by Discuz! X3
皖ICP备: 2024050410号-2

风险提示:杠杆风险高,交易要谨慎 声明:坛友发言和回复均为个人观点,不代表论坛立场。
若有侵权请联系fx3q@qq.com删除

快速回复 返回顶部 返回列表