Скачать MetaTrader 5

Как обойти ограничение Sleep() в тестере - страница 3

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
220Volt
1175
220Volt  
Ладно, не знаю кому чего надо, может не так понял, тестером не пользуюсь, ушел.
Vadim Pyankov
280
Vadim Pyankov  
220Volt:
Ладно, не знаю кому чего надо, может не так понял, тестером не пользуюсь, ушел.

Вот так всегда, не знаю кому чего надо, кто что спрашивал, никто не читает стартпосты, короче весело)
Alexander
2441
Alexander  

Какая тебе нужна задержка? секунда? пять секунд? какая цель? (при тестировании процессы проходят несколько отлично от действительности).

Какую модель используешь при тестировании? все тики? контрольные точки?

barbarian
339
barbarian  
vadynik:

Вот так всегда, не знаю кому чего надо, кто что спрашивал, никто не читает стартпосты, короче весело)

Я же тебе написал как сделать тут https://www.mql5.com/ru/forum/148976

То что тебе предлагают, это все зависит от реального времени и не будет работать в тестере, не пробовал конечно функцию из kernel32, но сдается мне, что она делает задержку тоже реального времени. А тебе нужна задержка времени, которая привязывается к торговле, ну так и привяжись к барам - и в тестере будет работать и в реальной торговле. Если не знаешь как реализовать в коде это, тогда задавай уже соответствующие вопросы.

Виктор
Модератор
6559
Виктор  
Вместо слипа запустить "пустой" цикл с математическим выражением внутри. Подбором сложности выражения и числа циклов подобрать нужную задержку.
Туповато, конечно, но работает для небольших задержек.
Vadim Pyankov
280
Vadim Pyankov  
Roger:

Какая тебе нужна задержка? секунда? пять секунд? какая цель? (при тестировании процессы проходят несколько отлично от действительности).

Какую модель используешь при тестировании? все тики? контрольные точки?


Все тики, задержка от часа и выше

Barbarian да я помню, буду пробовать

Alexander
2441
Alexander  
vadynik:


Все тики, задержка от часа и выше

Barbarian да я помню, буду пробовать

Тогда нет ничего проще, после события, которое подразумевает паузу, ставите

timepause = TimeCurrent()+3600;

В самом начале определяете глобальную переменную

datetime timepause;

И в начале функции start()

if(TimeCurrent()<timepause)return(0);

Boris
3941
Boris  
vadynik:


Все тики, задержка от часа и выше

Barbarian да я помню, буду пробовать

А почему по дням-часам-минутам не планируете работу?! В тестере также выполняется! В нём же определяю расписание и перерывы в работе.
Vladimir Gomonov
8327
Vladimir Gomonov  
Roger:

Тогда нет ничего проще, после события, которое подразумевает паузу, ставите

timepause = TimeCurrent()+3600;

В самом начале определяете глобальную переменную

datetime timepause;

И в начале функции start()

if(TimeCurrent()<timepause)return(0);

Он думать не хочет. Готов спорить, он твоё решение проигнорирует (даже понимать не захочет) и снова будет требовать от разработчиков чтоб Sleep() в тестере работал. :))
Vadim Pyankov
280
Vadim Pyankov  
MetaDriver:
Он думать не хочет. Готов спорить, он твоё решение проигнорирует (даже понимать не захочет) и снова будет требовать от разработчиков чтоб Sleep() в тестере работал. :))


друг,что тебе надо) и зачем апать тему, что мне надо я уже сделал, займись лучше делом
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий