📅 财经日历 📊 实时波动 📈 大盘云图 📶 行情走势 🆚 投机情绪 🚀 今日热点

    测试环境中测试后如何显示均线

    2011-12-18 · 9014 阅读
    原创文章:macy01.blogcn.com
      
      开发一个显示7均线的指标,在EA中调用,那么在测试完毕后,即可显示7均线。在Start()函数中调用的代码如下:
      //------------------------------------------------------------------------------------------
      //以下为spiderMA指标对应的配置参数,用于测试环境中显示均线
      extern int _MAShow0=5;
      extern int _MAShow1=10;
      extern int _MAShow2=20;
      extern int _MAShow3=40;
      extern int _MAShow4=60;
      extern int _MAShow5=120;
      extern int _MAShow6=233;
      //------------------------------------------------------------------------------------------
      int start()
      {
        //如果是测试环境,测试结束后显示7条均线
        if(IsTesting())
          iCustom(NULL, _TradePeriod, \"spiderMA\", _MAShow0, _MAShow1, _MAShow2, _MAShow3, _MAShow4, _MAShow5, _MAShow6, 0, 0);
      }
      
      测试中发现,只要是EA中调用过的指标,在测试完毕后,在图形上就都会有显示。因此有些时候一个指标如果调用了多次,则会在测试后的图形上显示多次,为了避免这种情况的发生,往往需要使用HideTestIndicators()来取消一些指标的显示,具体方式如下:
         HideTestIndicators(true);
         closeBuy  = iCustom(......);
         HideTestIndicators(false);
      
      显示7均线的指标代码如下:
      //+------------------------------------------------------------------+
      //|                                                spiderMA.mq4 |
      //|                                                       笨蛋学经济 |
      //|                                        http://macy01.blogcn.com/ |
      //+------------------------------------------------------------------+
      #property copyright \"笨蛋学经济\"
      #property link      \"http://macy01.blogcn.com/\"
      
      #property indicator_chart_window
      #property indicator_buffers 7
      #property indicator_color1 White
      #property indicator_color2 Pink
      #property indicator_color3 Lime
      #property indicator_color4 RoyalBlue
      #property indicator_color5 Magenta
      #property indicator_color6 PeachPuff
      #property indicator_color7 Yellow
      
      double buf0_ma0[];
      double buf1_ma1[];
      double buf2_ma2[];
      double buf3_ma3[];
      double buf4_ma4[];
      double buf5_ma5[];
      double buf6_ma6[];
      
      extern int _MA0=5;
      extern int _MA1=10;
      extern int _MA2=20;
      extern int _MA3=40;
      extern int _MA4=60;
      extern int _MA5=120;
      extern int _MA6=233;
      
      //+------------------------------------------------------------------+
      //| Custom indicator initialization function                         |
      //+------------------------------------------------------------------+
      int init()
        {
      //---- indicators
         SetIndexStyle(0, DRAW_LINE, EMPTY);
         SetIndexBuffer(0, buf0_ma0);
         
         SetIndexStyle(1, DRAW_LINE, EMPTY);
         SetIndexBuffer(1, buf1_ma1);
         
         SetIndexStyle(2, DRAW_LINE, STYLE_SOLID, 2);
         SetIndexBuffer(2, buf2_ma2);
         
         SetIndexStyle(3, DRAW_LINE, EMPTY);
         SetIndexBuffer(3, buf3_ma3);
         
         SetIndexStyle(4, DRAW_LINE, EMPTY);
         SetIndexBuffer(4, buf4_ma4);
         
         SetIndexStyle(5, DRAW_LINE, STYLE_SOLID, 2);
         SetIndexBuffer(5, buf5_ma5);
         
         SetIndexStyle(6, DRAW_LINE, STYLE_DOT);
         SetIndexBuffer(6, buf6_ma6);
      //----
         return(0);
        }
      //+------------------------------------------------------------------+
      //| Custom indicator deinitialization function                       |
      //+------------------------------------------------------------------+
      int deinit()
        {
      //----
         
      //----
         return(0);
        }
      //+------------------------------------------------------------------+
      //| Custom indicator iteration function                              |
      //+------------------------------------------------------------------+
      int start()
        {
      //----  
         int countedBars=IndicatorCounted();
      
         if(countedBars < 0)
           return(-1);
         
         int limit=Bars-countedBars;
         if(limit>2000)
           limit=2000;
         
         for(int i=0; i
    ""
    还没有人打赏,支持一下
    回复

    举报

     

    回答|共 26 个

    郁闷小甜甜 LV5

    发表于 2012-11-21 23:00:23 | 显示全部楼层

    先看看怎么样!  

    相亲 LV5

    发表于 2012-11-21 23:00:23 | 显示全部楼层

    我来看看!谢谢  

    慢慢的不着急 LV4

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    ding   支持  

    newer LV6

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    ea编程高手有偿开发MT4指标和ea系统,并有稳定盈利ea出售,非大资金勿扰  

    dutus1 LV4

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    帮你项项吧  

    慢慢的不着急 LV4

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    楼主,支持!  

    怀秋 LV5

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    呵呵,等着就等着....  

    机器人 LV5

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    一个子 没看懂  

    oxp LV8

    发表于 2012-11-22 00:05:51 | 显示全部楼层

    应该加分  
    123下一页
    您需要登录后才可以回帖 登录 | 注册

    提醒: 禁止引战、谩骂、灌水内容

    微信二维码

    有问题联系客服