Вопросы от "чайника" - страница 242

 
lazarev-d-m:
Мы не экстрасенсы, укажите сигнал, первое предположение - сигнал для mt5, а вы подписались будучи клиенnом mt4
Сигнал вроде бы он для mt4 подходит.

Skalping 1pips 

 
Vitek87:
Сигнал вроде бы он для mt4 подходит.

Skalping 1pips 

Да, должен, у сигнала 24 подписчика, хватает ли у вас денег на совершение операции, может быть пропорции не те?
 
lazarev-d-m:
Да, должен, у сигнала 24 подписчика, хватает ли у вас денег на совершение операции, может быть пропорции не те?
 не подскажете какие как минимум пропорции должны быть?
 
Vitek87:
 не подскажете какие как минимум пропорции должны быть?

Для открытия сделки объёмом 0.01 лота, при подписке на тот сигнал у Вас должно быть примерно 3600 долларов :)

И это при максимальной (95%) нагрузке на депозит. 

Как-то так. 

 
Contender:

Для открытия сделки объёмом 0.01 лота, при подписке на тот сигнал у Вас должно быть примерно 3600 долларов :)

И это при максимальной (95%) нагрузке на депозит. 

Как-то так. 

Благодарю любезнейший.
 

Подскажите, что не так?

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
//--- plot Deviation
#property indicator_label1  "Deviation"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1
//--- indicator buffers
double         Buffer[];

input int period=2;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetIndexBuffer(0,Buffer,INDICATOR_DATA);
   return(0);
  }
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[])
  {
   int start=0;
   if(prev_calculated>0) start=prev_calculated-1;
   for(int i=start;i<rates_total;i++)
     {
     Buffer[i]=0;
     double Buf[];
     for(int q=i;q>i-period;q--)
      {
      Buf[q]=MathMax(MathMax(MathAbs(open[i-q]-high[i-q]),MathAbs(open[i-q]-low[i-q])),MathAbs(open[i-q]-close[i-q]));
      Print(q);
      Buffer[i]=Buffer[i]+Buf[q];
      }
     
     }
   return(rates_total);
  }

 В самой длинной строчке Buf[q] каким-то образом выходит за пределы массива, как это, он ведь вроде бы безразмерный?

 

2013.02.20 13:12:48 Deviation 2 (EURUSD,H1) array out of range in 'Deviation 2.mq5' (61,10)

 
lazarev-d-m:

Подскажите, что не так?

 В самой длинной строчке Buf[q] каким-то образом выходит за пределы массива, как это, он ведь вроде бы безразмерный?

 2013.02.20 13:12:48 Deviation 2 (EURUSD,H1) array out of range in 'Deviation 2.mq5' (61,10)

Потому и выходит, что безразмерный.

Надо задать ему размер c помощью ArrayResize(), прежде чем использовать

 
kPVT:

Потому и выходит, что безразмерный.

Надо задать ему размер c помощью ArrayResize(), прежде чем использовать

Помоему, в этом случае нельзя задать конечное значение, обьем буфера должен быть равен по факту rates_total, но обьем нельзя задать через переменную
 

Массив не может быть бесконечным.

Бегло взглянув есть ошибки в алгоритме, например тут:

for(int q=i;q>i-period;q--)

индекс массива q становится отрицательным.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
lazarev-d-m:
Помоему, в этом случае нельзя задать конечное значение, обьем буфера должен быть равен по факту rates_total, но обьем нельзя задать через переменную
Сделайте ArrayResize(Buf, rates_total);
Причина обращения: