Фоновые расчёты

 
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
 
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
С потоками MQL4/5 не работает, так что только выносить расчеты во внешнюю DLL и там открывать поток с вычислениями.
 
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Никак. Но если оч хочется, то можно. Открываете еще неск графиков и туда цепляете индикаторы-советники для фоновых задач.
 
Alexey Volchanskiy:
С потоками MQL4/5 не работает, так что только выносить расчеты во внешнюю DLL и там открывать поток с вычислениями.
При этом, эт д.б. DLL-сервер, т.е экзешник.
 
Yuriy Asaulenko:
При этом, эт д.б. DLL-сервер, т.е экзешник.
Почему? Достаточно лишь самой DLL. Передача информации из MQL в DLL - вызов функции DLL, а обратно - событие на графике индикатора.
 
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.

На видеокарте.

 
Ihor Herasko:
Почему? Достаточно лишь самой DLL. Передача информации из MQL в DLL - вызов функции DLL, а обратно - событие на графике индикатора.

Пожалуй.

Я тут для подобных задач цикл придумал. Эксперт пустой. Ну, там еще немного.

OnTick()

{

j=1;

while(j==1)

{

sleep(v);  //системный в мс

//проверка внешних событий

//..........................

}

}

В DeInit() { j=0}.

Как-то так.

 
Yuriy Asaulenko:
Никак. Но если оч хочется, то можно. Открываете еще неск графиков и туда цепляете индикаторы-советники для фоновых задач.
Да, но придется извращаться с синхронизацией, ибо атомарные операции в МТ4/5 не поддерживаются
 
Вы сами пробовали? Как видяха позволяет организовать независимые потоки?
 
Yuriy Asaulenko:
При этом, эт д.б. DLL-сервер, т.е экзешник.
М-м-м-м, почему сервер? Вы даете ДЛЛ команду открыть поток, в потоке исполняется нужная функция. Когда поток завершается, в ДЛЛ выставяется флаг завершения расчетов. Ну а ваш советник/индюк по таймеру проверяет этот флаг. Если флаг взведен, считываем результаты расчетов.
 
Только индикаторы тормозят пользовательский интерфейс. Эксперты не тормозят. У эксперта при вычислениях только сложности с открытием окна свойств.
Причина обращения: