Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 565

 
alex12:
подскажите как называется скрипт - показывающий историю сделок на демо счете.

скрипт не нужен, - открываете историю счета и переносите все сделки на график с зажатой ШИФТ
 

Подскажите, пожалуйста, как решить следующую проблему.

В советнике использую внешний индикатор, подключаемый через iCustom. В реале связка нормально работает, без ошибок.

Но мне, чтобы протестировать его на истории в тестере, необходимо взять данные, которые находятся в файле.

В советнике сейчас стоит строка:

iCustom("EURUSD", 0, "ClusterDelta_Volume", 0, i);

В файле данных csv есть такие поля:

DATE;TIME;HIGH;LOW;OPEN;CLOSE;VOLUME;DELTA;ASK;BID

Интересует данные из поля VOLUME, чтобы они подставлялись в тесте соответствующей переменной вместо вызова индикатора.

Как сделать - ума не приложу, т.к. еще мало опыта в программировании. Может хотя бы алгоритм или последовательность, где почитать и на какие функции обратить внимание.

Если непонятно задал вопрос, уточняйте - перефразирую.

 
AlexeyVik:
Да, я уже видел этот вопрос и проверил, действительно не работает хотя в документации пишут что если свойство OBJPROP_RAY вертикальной линии равно false то линия отображается только в основном окне.


Спасибо за подтверждение, а то я думал может дело в моей версии mql4, которую скачал у брокера. Сложно поверить, что это баг mql4. Надеюсь, у разработчиков найдётся время на ответ на такой элементарнейший вопрос.
 

Люди подскажите. Как собрать массив? В общем прописал в цикле так.

int mass[] = 'f';

Пишет ошибку. Как сделать так, чтобы переменная mass представляла из себя массив... После выполнения цикла.

 
Zolotai:

Люди подскажите. Как собрать массив? В общем прописал в цикле так.

int mass[] = 'f';

Пишет ошибку. Как сделать так, чтобы переменная mass представляла из себя массив... После выполнения цикла.


Массиву надо задавать размерность.

char mass[3] ; // массив из 3 элементов
mass[0]='a';  mass[1]='b'; mass[2]='c';
//---------
  
  int ticket[], n=0; 
  for(int OrdersTotal()-1; i>=0; i--)
  {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
       
      if(OrderType()<2)                        // записашем тикеты открытых позиций
      { 
        n++;                                   // увеличим счетчик элементов массива
        ArrayResize(ticket,n);                   // зададим размерность массиву
        ticket[n-1]=OrderTicket();               // 1 элемент имеет индекс 0, второй элемент записывается в 1 индекс и т.д.
      } 
    }
  }
 

день добрый,

получаю предупреждение при компиляци:

empty controlled statement found


которое относится к строке

if(OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) == true);

{...}


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

с каким-то пустым контролируемым сообщением? Если кто знает, расскажите,

а то как то непонятно, чего оно вдруг стало предупреждать?


Спасибо.

 

Здравствуйте.

На ноутбуке (Win 8.1) на всех терминалах папка MQL4 находится в папке пользователя, т.е. как надо, а на компьютере (Win 7) эта же папка находится в Программ файлах. Билд 625.

Почему папка MQL4 не переехала в пользовательскую директорию?
Кто виноват, что делать и нужно ли вообще по этому поводу "заморачиваться"?

Заранее спасибо!

 
Notter:

день добрый,

получаю предупреждение при компиляци:

empty controlled statement found


которое относится к строке

if(OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) == true);

{...}


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

с каким-то пустым контролируемым сообщением? Если кто знает, расскажите,

а то как то непонятно, чего оно вдруг стало предупреждать?


Спасибо.



точку с запятой убери.
 
isn-88:

Здравствуйте.

На ноутбуке (Win 8.1) на всех терминалах папка MQL4 находится в папке пользователя, т.е. как надо, а на компьютере (Win 7) эта же папка находится в Программ файлах. Билд 625.

Почему папка MQL4 не переехала в пользовательскую директорию?
Кто виноват, что делать и нужно ли вообще по этому поводу "заморачиваться"?

Заранее спасибо!


у Вас отключен UAC
 
GSB:

Массиву надо задавать размерность.




Спс. А не подскажите. Какой процес

while (true) {

void Sleep(250);

}

Я бы хотел, чтобы цикл выполнялся бесконечно и в тоже время с определенным промежутком. К примеру 1/4 секунды. Та ошибка, как правильно прописать?

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