[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 267

 

что означает строчки: 1) if (Volume [0]>1) return;

2) if (Open [1]>ma) ; ?

спасибо!

 
okvseok:

что означает строчки: 1) if (Volume [0]>1) return;

2) if (Open [1]>ma) ; ?

спасибо!


1) Если объём на нулевой свече более 1, то возврат.

2) Если цена открытия первой свечи больше, чем величина в переменной ma, то... а вот что там то, Вы не прописали. Конструкция

 if (Open [1]>ma) ;

не имеет права жить, ибо за условием тут ни чего не следует. Не понятно процессору что нужно сделать, если условие выполнится или не выполнится.

 
okvseok:

что означает строчки: 1) if (Volume [0]>1) return;

2) if (Open [1]>ma) ; ?

спасибо!

Обычно условие 1 применяется для определения, открылся ли новых бар. В вашем примере если обьём текущего бара >1 то выход из программы, и программа вообще не будет работать. А во втором, после if (...) но перед ; надо какое-то действие описать.
 
drknn:
Немножко не то. Вопрос в том как в советнике прописать, а не в индюке. Но все равно спасибо, хотя вопрос остался открытым.

 
kwadrad:
Немножко не то. Вопрос в том как в советнике прописать, а не в индюке. Но все равно спасибо, хотя вопрос остался открытым.

Вы попросили код - я дал код.

В советнике это тоже осуществимо. Нужно объявить массив, заполнить его значениями RSI, после чего можно обрабатывать этот массив как угодно. В том числе и с помощью функции iMAOnArray()

 
drknn:

Вы попросили код - я дал код.

В советнике это тоже осуществимо. Нужно объявить массив, заполнить его значениями RSI, после чего можно обрабатывать этот массив как угодно. В том числе и с помощью функции iMAOnArray()

Именно тонкости в объявлении и заполнении значениями массива вызывают затруднения, т.е. на графике не работают. Может не с той стороны заполняю массив или орфография кривая. В индюке получается. В советнике нет.
 
kwadrad:
Именно тонкости в объявлении и заполнении значениями массива вызывают затруднения, т.е. на графике не работают. Может не с той стороны заполняю массив или орфография кривая. В индюке получается. В советнике нет.
А вы статьи читали на эту тему?
Перенос кода индикатора в код эксперта. Строение индикатора.
Перенос кода индикатора в код эксперта. Общие схемы строения эксперта и индикаторных функций
 
kwadrad:
Именно тонкости в объявлении и заполнении значениями массива вызывают затруднения, т.е. на графике не работают. Может не с той стороны заполняю массив или орфография кривая. В индюке получается. В советнике нет.
// перед блоком инициализации советника пишем:
  extern int RazmerMassiva=10;// размер будущего массива
  double Massiv[1];//Перед блоком инициализации объявляем массив
  // в старте советника пишем:
  if(ArrayResize(Massiv,RazmerMassiva)==(-1)){
    Print("Ошибка № ",GetLastError()," при изменении размерности массива - размерность не изменена");
  }
  else{// заполняем массив значениями
    for(int i=0;i<RazmerMassiva;i++){
      Massiv[i]=iRSI(/* Сюда вставить нужные параметры */);
      // сразу проверяем что у нас в массив внесено
      Print("Massiv[",i,"] = ",Massiv[i]);
    }
  }
  // далее точно так же организзуем цикл, заполняющий другой массив значениями, возвращаемыми
  // функцией iMAOnArray() и точно так же сразу принтуем результат. Если принты показывают
  //биллеберду, то становится понятно в каком направлении искать. Без принтов Вы не разберётесь,
  //как работать с iMAOnArray()
 
Что за хтрости: 2012.07.20 07:15:00 '*****': order sell 0.10 EURUSD opening at 1.2256 sl: 0.0000 tp: 0.0000 failed [Trade context is busy], а для ордеров "бай" не занят?

А теперь, обратное: 2012.07.20 07:51:13 '*****': order buy 0.10 EURUSD opening at 1.2258 sl: 0.0000 tp: 0.0000 failed [Trade context is busy]

С чем это может быть связано?
 
yosuf:
Что за хтрости: 2012.07.20 07:15:00 '*****': order sell 0.10 EURUSD opening at 1.2256 sl: 0.0000 tp: 0.0000 failed [Trade context is busy], а для ордеров "бай" не занят?

А теперь, обратное: 2012.07.20 07:51:13 '*****': order buy 0.10 EURUSD opening at 1.2258 sl: 0.0000 tp: 0.0000 failed [Trade context is busy]

С чем это может быть связано?


https://www.mql5.com/ru/forum/100321

PS. Юсуф, на форуме работает поиск.

Причина обращения: