Скачать MetaTrader 5

Проблема с функцией Sleep();

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
BaTTLeBLooM
197
BaTTLeBLooM  

В общем всё хорошо работает до одного момента... окончание дня

У меня стоят большие задержки, более 24 часов...

Но Sleep принудительно прерывается при окончании суток по терминалу...

Как это обойти? 

Dmitry Fedoseev
43809
Dmitry Fedoseev  
Покажите как вы вызываете Sleep(), какие число там стоит?
BaTTLeBLooM
197
BaTTLeBLooM  
Dmitry Fedoseev:
Покажите как вы вызываете Sleep(), какие число там стоит?
Sleep (DelayHours*3600000);
Alexey Volchanskiy
17342
Alexey Volchanskiy  
BaTTLeBLooM:
Sleep (DelayHours*3600000);
Насчет слипа не в курсе, а таймер пробовали? Конечно, придется немного алгоритм переделать. 
BaTTLeBLooM
197
BaTTLeBLooM  
Dmitry Fedoseev:
Покажите как вы вызываете Sleep(), какие число там стоит?

я понимаю, что звучит странно, но при оптимизации советника, всё что выходит за рамки суток имеет одинаковые значения...

вообщем смысл такой

жду триггер и вхожу по истечения n часов... но это n может быть сколько угодно... может даже не на этой неделе...

не цикл же мне делать со слипом, чтоб добиться нужного эффекта

у меня получается всё что выходит за рамки открывается в одно и тоже время в 23 часа по терминалу... 

BaTTLeBLooM
197
BaTTLeBLooM  
Alexey Volchanskiy:
Насчет слипа не в курсе, а таймер пробовали? Конечно, придется немного алгоритм переделать. 
как пишется? я не в курсе про него... про слип то еле вспомнил...
Andrey Barinov
39295
Andrey Barinov  
BaTTLeBLooM:

я понимаю, что звучит странно, но при оптимизации советника, всё что выходит за рамки суток имеет одинаковые значения...

вообщем смысл такой

жду триггер и вхожу по истечения n часов... но это n может быть сколько угодно... может даже не на этой неделе...

не цикл же мне делать со слипом, чтоб добиться нужного эффекта

у меня получается всё что выходит за рамки открывается в одно и тоже время в 23 часа по терминалу... 

В тестере Sleep не работает.
BaTTLeBLooM
197
BaTTLeBLooM  
Andrey Barinov:
В тестере Sleep не работает.
понял спасибо, значит буду делать цикл со слипом, раз тестер такой привередливый
Andrey Barinov
39295
Andrey Barinov  
BaTTLeBLooM:
понял спасибо, значит буду делать цикл со слипом, раз тестер такой привередливый
Зачем вам Sleep? Работайте по времени. Засекли время события datetime eventtime=TimeCurrent() или TimeLocal() и потом просто ждите когда время станет TimeLocal()>=eventtime+SleepTime и действуйте.
Dmitry Fedoseev
43809
Dmitry Fedoseev  
Сделайте переменную, в нее засекайте время начала отсчета. В начале функции OnTick() проверяйте сколько времени прошло, если меньше суток, то return. 
BaTTLeBLooM
197
BaTTLeBLooM  
Andrey Barinov:
Зачем вам Sleep? Работайте по времени. Засекли время события datetime eventtime=TimeCurrent() или TimeLocal() и потом просто ждите когда время станет TimeLocal()>=eventtime+SleepTime и действуйте.
ну похоже так и придётся... даже цикл со слипом не сработал ))) не хочет и всё )))
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий