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

 
никак, только писать дополнительную логику для запрета торговли на нужное время.
 
220Volt:
Обратите внимание: возвращаемое значение изменил на int вместо void.

Да вы батенька затейник )))

Но не работает всё равно, да ещё и терминал вешает после останова тестирования.

2014.01.18 19:47:42.109 2012.10.11 01:00 Testing pass stopped due to a critical error in the EA

 
Какие-то метаквотовские хитрости ))
 
evillive:

Да вы батенька затейник )))

Но не работает всё равно, да ещё и терминал вешает после останова тестирования.

2014.01.18 19:47:42.109 2012.10.11 01:00 Testing pass stopped due to a critical error in the EA


Не знаю как там у вас, а у меня все работает, только что проверил.
 

А чем функции не устраивают ?

https://www.mql5.com/ru/forum/131859/page4#434231

https://www.mql5.com/ru/forum/131859/page5#434246

https://www.mql5.com/ru/forum/131859/page5#434248

Функция isLossLastPos()

Функция SecondsAfterCloseLastPos()

Функция SecondsAfterOpenLastPos()

 
220Volt:
Не знаю как там у вас, а у меня все работает, только что проверил.

Пример можно работающего кода?

У меня такой код, задержка в тестере не действует (билд 574):

#import "Kernel32.dll"
    int SleepEx(int time,  // Время в миллисекундах
                int);      // Всегда передавать false
#import 

void init()  {  }

void deinit()  {  }

void start()
  {
Print("pre time: ", TimeCurrent());
SleepEx(10000,false);
Print("post time: ", TimeCurrent());
}

//+------------------------------------------------------------------+

журнал:
2014.01.18 21:13:14.624 USDJPY,H1: 3 tick events (8060 bars, 16020 bar states) processed within 30015 ms (total time 30015 ms)
2014.01.18 21:13:14.624 2012.09.28 22:00  Testing pass stopped due to a critical error in the EA
2014.01.18 21:13:04.624 2012.09.28 22:00  sleep USDJPY,H1: pre time: 2012.09.28 22:00:00
2014.01.18 21:13:04.624 2012.09.28 21:00  sleep USDJPY,H1: post time: 2012.09.28 21:00:00
2014.01.18 21:12:54.624 2012.09.28 21:00  sleep USDJPY,H1: pre time: 2012.09.28 21:00:00
2014.01.18 21:12:54.624 2012.09.28 20:00  sleep USDJPY,H1: post time: 2012.09.28 20:00:00
2014.01.18 21:12:44.624 2012.09.28 20:00  sleep USDJPY,H1: pre time: 2012.09.28 20:00:00
2014.01.18 21:12:44.609 sleep test started
2014.01.18 21:12:44.609 TestGenerator: current spread 2 used
2014.01.18 21:12:44.609 Expert sleep USDJPY,H1: loaded successfully
 
BeerGod:

А чем функции не устраивают ?

https://www.mql5.com/ru/forum/131859/page4#434231

https://www.mql5.com/ru/forum/131859/page5#434246

https://www.mql5.com/ru/forum/131859/page5#434248

Функция isLossLastPos()

Функция SecondsAfterCloseLastPos()

Функция SecondsAfterOpenLastPos()


Вы читали стартпост?
 
evillive:

Пример можно работающего кода?

У меня такой код, задержка в тестере не действует (билд 574):




Пожалуйста:

#import "Kernel32.dll"
    int SleepEx(int time,  // Время в миллисекундах
                int=false);      // Всегда передавать false
#import 

void init()  {  }

void deinit()  {  }

void start()
{
   Print("pre time: ", TimeLocal());
   
   for(int i = 0;  i < 100 && ! IsStopped();  i ++)
   {
      SleepEx(100);
      //if(Условие выхода)   break;
   }
   
   Print("post time: ", TimeLocal());
}

Добавлена конструкция для предотвращения аварийного завершения при ручной остановке.

 
220Volt:



Пожалуйста:

Добавлена конструкция для предотвращения аварийного завершения при ручной остановке.


Нет, задержку не делает всё равно...

Конечно, можно сослаться на то что сейчас рынок закрыт, так мы здесь про тестер толкуем, там всё должно работать и без внешних тиков.

2014.01.18 22:00:40.859 USDJPY,H1: 2 tick events (8060 bars, 16020 bar states) processed within 17110 ms (total time 17110 ms)
2014.01.18 22:00:40.859 2012.09.28 21:00  sleep USDJPY,H1: post time: 2012.09.28 21:00:00
2014.01.18 22:00:33.812 2012.09.28 21:00  sleep USDJPY,H1: pre time: 2012.09.28 21:00:00
2014.01.18 22:00:33.812 2012.09.28 20:00  sleep USDJPY,H1: post time: 2012.09.28 20:00:00
2014.01.18 22:00:23.765 2012.09.28 20:00  sleep USDJPY,H1: pre time: 2012.09.28 20:00:00
2014.01.18 22:00:23.749 sleep test started
2014.01.18 22:00:23.749 TestGenerator: current spread 2 used
2014.01.18 22:00:23.749 Expert sleep USDJPY,H1: loaded successfully
 
evillive:

Нет, задержку не делает всё равно...


Какое время нужно задержать - реальное или тестерное? Точнее по-какому спать.