Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
- Интересный отчет
- На ecn счетах открывается два ордера вместо одного
- Отправка СМС
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
С потоками MQL4/5 не работает, так что только выносить расчеты во внешнюю DLL и там открывать поток с вычислениями.
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Никак. Но если оч хочется, то можно. Открываете еще неск графиков и туда цепляете индикаторы-советники для фоновых задач.
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Alexey Volchanskiy:
С потоками MQL4/5 не работает, так что только выносить расчеты во внешнюю DLL и там открывать поток с вычислениями.
При этом, эт д.б. DLL-сервер, т.е экзешник.
С потоками MQL4/5 не работает, так что только выносить расчеты во внешнюю DLL и там открывать поток с вычислениями.
Yuriy Asaulenko:
При этом, эт д.б. DLL-сервер, т.е экзешник.
Почему? Достаточно лишь самой DLL. Передача информации из MQL в DLL - вызов функции DLL, а обратно - событие на графике индикатора.
При этом, эт д.б. DLL-сервер, т.е экзешник.
Roma:
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Подскажите как индикатору или эксперту производить расчёты в фоновом режиме – т.е. не тормозя польз интерфейс.
Ihor Herasko:
Почему? Достаточно лишь самой DLL. Передача информации из MQL в DLL - вызов функции DLL, а обратно - событие на графике индикатора.
Почему? Достаточно лишь самой DLL. Передача информации из MQL в DLL - вызов функции DLL, а обратно - событие на графике индикатора.
Пожалуй.
Я тут для подобных задач цикл придумал. Эксперт пустой. Ну, там еще немного.
OnTick()
{
j=1;
while(j==1)
{
sleep(v); //системный в мс
//проверка внешних событий
//..........................
}
}
В DeInit() { j=0}.
Как-то так.
Yuriy Asaulenko:
Никак. Но если оч хочется, то можно. Открываете еще неск графиков и туда цепляете индикаторы-советники для фоновых задач.
Да, но придется извращаться с синхронизацией, ибо атомарные операции в МТ4/5 не поддерживаются
Никак. Но если оч хочется, то можно. Открываете еще неск графиков и туда цепляете индикаторы-советники для фоновых задач.
Вы сами пробовали? Как видяха позволяет организовать независимые потоки?
Yuriy Asaulenko:
При этом, эт д.б. DLL-сервер, т.е экзешник.
М-м-м-м, почему сервер? Вы даете ДЛЛ команду открыть поток, в потоке исполняется нужная функция. Когда поток завершается, в ДЛЛ выставяется флаг завершения расчетов. Ну а ваш советник/индюк по таймеру проверяет этот флаг. Если флаг взведен, считываем результаты расчетов.
При этом, эт д.б. DLL-сервер, т.е экзешник.
Только индикаторы тормозят пользовательский интерфейс. Эксперты не тормозят. У эксперта при вычислениях только сложности с открытием окна свойств.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь