14评论

0收藏

求帮主帮忙用ZigZag指标求出顶点值【已经解决】

avatar 不爱不恨 | 5927 人阅读 | 14 人评论 | 2011-11-15

指标源码如下:
  //+------------------------------------------------------------------+
  //|                                                       Zigzag.mq4 |
  //|                 Copyright ?2005-2007, MetaQuotes Software Corp. |
  //|                                       http://www.metaquotes.net/ |
  //+------------------------------------------------------------------+
  #property copyright \"Copyright ?2007, MetaQuotes Software Corp.\"
  #property link      \"http://www.metaquotes.net/\"
  
  #property indicator_chart_window
  #property indicator_buffers 1
  #property indicator_color1 Red
  //---- indicator parameters
  extern int ExtDepth=12;
  extern int ExtDeviation=5;
  extern int ExtBackstep=3;
  //---- indicator buffers
  double ZigzagBuffer[];
  double HighMapBuffer[];
  double LowMapBuffer[];
  int level=3; // recounting\'s depth
  bool downloadhistory=false;
  //+------------------------------------------------------------------+
  //| Custom indicator initialization function                         |
  //+------------------------------------------------------------------+
  int init()
    {
     IndicatorBuffers(3);
  //---- drawing settings
     SetIndexStyle(0,DRAW_SECTION);
  //---- indicator buffers mapping
     SetIndexBuffer(0,ZigzagBuffer);
     SetIndexBuffer(1,HighMapBuffer);
     SetIndexBuffer(2,LowMapBuffer);
     SetIndexEmptyValue(0,0.0);
  
  //---- indicator short name
     IndicatorShortName(\"ZigZag(\"+ExtDepth+\",\"+ExtDeviation+\",\"+ExtBackstep+\")\");
  //---- initialization done
     return(0);
    }
  //+------------------------------------------------------------------+
  //|                                                                  |
  //+------------------------------------------------------------------+
  int start()
    {
     int i, counted_bars = IndicatorCounted();
     int limit,counterZ,whatlookfor;
     int shift,back,lasthighpos,lastlowpos;
     double val,res;
     double curlow,curhigh,lasthigh,lastlow;
  
     if (counted_bars==0 && downloadhistory) // history was downloaded
       {
        ArrayInitialize(ZigzagBuffer,0.0);
        ArrayInitialize(HighMapBuffer,0.0);
        ArrayInitialize(LowMapBuffer,0.0);
       }
     if (counted_bars==0)
       {
        limit=Bars-ExtDepth;
        downloadhistory=true;
       }
     if (counted_bars>0)
       {
        while (counterZ=0; shift--)
       {
        val=Low[iLowest(NULL,0,MODE_LOW,ExtDepth,shift)];
        if(val==lastlow) val=0.0;
        else
          {
           lastlow=val;
           if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
           else
             {
              for(back=1; backval)) LowMapBuffer[shift+back]=0.0;
                }
             }
          }
        if (Low[shift]==val) LowMapBuffer[shift]=val; else LowMapBuffer[shift]=0.0;
        //--- high
        val=High[iHighest(NULL,0,MODE_HIGH,ExtDepth,shift)];
        if(val==lasthigh) val=0.0;
        else
          {
           lasthigh=val;
           if((val-High[shift])>(ExtDeviation*Point)) val=0.0;
           else
             {
              for(back=1; back
""
还没有人打赏,支持一下

评论|共 14 个

sky

发表于 2012-11-25 16:59:05 | 显示全部楼层

怎么就没人拜我为偶像那?? ~  

草比

发表于 2012-11-25 16:59:05 | 显示全部楼层

顶.支持,路过.....  

秀色可餐

发表于 2012-11-25 18:27:51 | 显示全部楼层

支持一下吧  

udvwf

发表于 2012-11-25 18:27:51 | 显示全部楼层

真的有么  

仓木

发表于 2012-11-25 18:27:51 | 显示全部楼层

好帖子,要顶!

wenken123

发表于 2012-11-25 18:27:51 | 显示全部楼层

发贴看看自己积分  

kalialy

发表于 2012-11-25 18:27:51 | 显示全部楼层

坐下沙发,呵呵,模拟了一下,觉得可以。  

谢了好兄弟

发表于 2012-11-25 18:27:51 | 显示全部楼层

你好!我想编写一平仓条件,可一直不成功。当下单成功后赢利超过7点之后赢利又小于6点平仓。就这个平仓条件能辛苦帮我写一下吗?这样能保住赢利不会变亏损。先行谢谢了!!!~~~  

爻爻

发表于 2014-10-30 17:31:55 | 显示全部楼层

路过。。看下先。

12下一页
您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则