Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Зарегистрируйся на MQL5.community и оставляй комментарии!
Павел
34
Павел 2012.02.23 21:28 

Уважаемые знатоки и эксперты! Есть небольшой вопрос. Программировать начал недавно, поэтому чувствую большие ограничения в переводе своих мыслей на язык MQL4. Вот, например, как объяснить компьютеру, что, если произошла сделка на текущем баре, то на этом баре больше не торговать? Напишите, пожалуйста, полезную функцию. Спасибо!

Рустам
3602
Рустам 2012.02.23 22:25  

Запомните в статической (static) переменной время открытия текущего бара, и потом сравнивайте это время с текущим. Как только время изменилось - значит новый бар. это как минимум. Вариантов много.

А если вы пороетесь в этой теме https://www.mql5.com/ru/forum/134688 За весь форум в поиске я молчу(я понимаю, что это безумно трудно, и вы на такой подвиг не готовы). То вы найдете еще с десяток вариантов ответа на ваш вопрос.

Актер
2301
Актер 2012.02.23 22:28  

Просто вставляете эти две строчки в функцию start()

if(iTime(NULL,0,0)==lasttime) return(0);

lasttime = iTime(NULL,0,0);

Переменную lasttime конечно предварительно проинициализировать, можно как глобальную.

int lasttime=0;
Павел
34
Павел 2012.02.23 22:35  
FAQ:

Запомните в статической (static) переменной время открытия текущего бара, и потом сравнивайте это время с текущим. Как только время изменилось - значит новый бар. это как минимум. Вариантов много.

А если вы пороетесь в этой теме https://www.mql5.com/ru/forum/134688 За весь форум в поиске я молчу(я понимаю, что это безумно трудно, и вы на такой подвиг не готовы). То вы найдете еще с десяток вариантов ответа на ваш вопрос.


Спасибо большое!)
Павел
34
Павел 2012.02.23 22:35  
OnGoing:

Просто вставляете эти две строчки в функцию start()

Переменную lasttime конечно предварительно проинициализировать, можно как глобальную.


Спасибо огромное!!!
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий