智能交易网,程序化交易,自动交易,量化交易

 找回密码
 注册

QQ登录

只需一步,快速开始

手机短信登录

参加MT4智能交易编程培训,7课免费在线试听MT4指标,EA代写,或EA指标加密账户远程验证服务 最完善商业MT4跟单系统(0.1秒极速响应不漏单)
为论坛做贡献有奖学金,奖学金可直接换真钱 扫本站微信公 众号部分视频课程指标EA免费得智能交易网MT4操盘神器,扫公众号免费得
查看: 843|回复: 3

如何解决数组越界问题????

[复制链接]
发表于 2018-2-23 11:08:19 | 显示全部楼层 |阅读模式
本帖最后由 土匪 于 2018-2-23 17:46 编辑

在坐标(76.21)处老是提示数组越界,如何解决????
//+------------------------------------------------------------------+
//|                                                          平仓2.mq4 |
//|                                                              gwb |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "gwb"
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 clrWhite
#property indicator_color2 Blue
#property indicator_color3 Red
#property indicator_width2  2
#property indicator_width3  2

extern int      a=120;
extern int      是否报警=1;
extern int      是否发邮件=1;
//extern int      b=10;

double         均线1[];
double         箭头1[];
double         箭头2[];
datetime       t=0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   IndicatorBuffers(3);
   SetIndexStyle(0, DRAW_LINE);
   SetIndexStyle(1, DRAW_ARROW);
   SetIndexStyle(2, DRAW_ARROW);
   SetIndexBuffer(0, 均线1);
   SetIndexBuffer(1, 箭头1);  
   SetIndexBuffer(2, 箭头2);
   SetIndexArrow(1, 74);  
   SetIndexArrow(2, 74);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
         
       if(rates_total<a )
        {
          return(0);
        }
       int  i=0;
       int  limit;
       limit=rates_total-prev_calculated;
       if(prev_calculated>0)  limit++;
       for(i=0;i<limit;i++)
          {
            均线1=iMACD(NULL,0,12,26,9,PRICE_CLOSE,1,i);
          }
       for(i=0;i<limit;i++)
          {
            if(  均线1[i+2]<=均线1[i+1]  &&  均线1[i+1]>=均线1  )
              {
                箭头1=均线1+10*Point;
                if(  是否报警==1  )
                  {
                    Alert("多单平");
                  }
                if(  是否发邮件==1  &&  t!=Time[0])
                  {
                    SendMail("多单平","多单平");
                    t=Time[0];
                  }
              }
            if(均线1[i+2]>均线1[i+1]  &&  均线1[i+1]<均线1)
              {
                箭头2=均线1-10*Point;
                 if(  是否报警==1  )
                  {
                    Alert("空单平");
                  }
                if(  是否发邮件==1  &&  t!=Time[0])
                  {
                    SendMail("空单平","空单平");
                    t=Time[0];
                  }
              }
          }
         
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
回复

使用道具 举报

发表于 2018-6-25 09:06:29 | 显示全部楼层
指标开发4大难点:
MT4、MT5 指标开发4大难题
1 数组越界
2 最新k线数据不刷新
3 开始画的线k线混乱
4 for,while循环过多,执行太慢
以后我会录制视频专门讲。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|sitemap|智能交易网,程序化交易,自动交易,量化交易 ( 苏ICP备08108698号,苏州智德金网络科技股份有限公司版权所有 )

GMT+8, 2019-11-13 12:55 , Processed in 0.079724 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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