Некорректная работа функции StrToTime

 
Не пойму в чём заморочка: на первом тике в тестере не срабатывает функция StrToTime, причём, только на М1:
.......
extern string News_Time = "2007.03.29 15:30"; // время выхода новости - cтрока в формате "yyyy.mm.dd hh:mi"
   
int start()
{
//----
   // пропускаем все свечи до новостной
   if(Time[0]<StrToTime(News_Time)) return(0); 
 
   Print(" News_Time = ",News_Time);
   Print(" StrToTime(News_Time) = ",StrToTime(News_Time));
   Print(" News_Time = ",TimeToStr(StrToTime(News_Time),TIME_DATE|TIME_MINUTES));
......
 
Журнал тестера:
 
02:22:35 Slide_News_M1 inputs: Lots=0.1; 
 
02:22:35 2007.03.29 00:00  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 00:00  Slide_News_M1 GBPUSD,M1:  StrToTime(News_Time) = 0
02:22:35 2007.03.29 00:00  Slide_News_M1 GBPUSD,M1:  News_Time = 1970.01.01 00:00
02:22:35 2007.03.29 00:00  Slide_News_M1 GBPUSD,M1: error= 0
 
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  StrToTime(News_Time) = 1175182200
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1: error= 0
 
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  StrToTime(News_Time) = 1175182200
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1: error= 0
 
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  StrToTime(News_Time) = 1175182200
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1:  News_Time = 2007.03.29 15:30
02:22:35 2007.03.29 15:30  Slide_News_M1 GBPUSD,M1: error= 0
 
Вот скрипт для проверки, который я использовал

//+------------------------------------------------------------------+
//|                                               CheckStrToTime.mq4 |
//|                      Copyright © 2007, MetaQuotes Software Corp. |
//|                                        https://www.metaquotes.net/ru/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link      "'Некорректная  работа функции StrToTime'"
 
extern string News_Time = "2007.06.7 15:30"; // время выхода новости - cтрока в формате "yyyy.mm.dd hh:mi"
 
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   // пропускаем все свечи до новостной
   if(Time[0]<StrToTime(News_Time)) return(0); 
 
   Print(" News_Time = ",News_Time);
   Print(" StrToTime(News_Time) = ",StrToTime(News_Time));
   Print(" News_Time = ",TimeToStr(StrToTime(News_Time),TIME_DATE|TIME_MINUTES));   
//----
   return(0);
  }
//+------------------------------------------------------------------+


Вот его результаты в MetaTrader 4 b205 от 25 мая 2007 г.

2007.06.08 09:39:07 CheckStrToTime EURGBP,H1: removed
2007.06.08 09:39:07 CheckStrToTime EURGBP,H1: News_Time = 2007. 06. 07 15:30
2007.06.08 09:39:07 CheckStrToTime EURGBP,H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:07 CheckStrToTime EURGBP,H1: News_Time = 2007. 06. 7 15:30
2007.06.08 09:39:07 CheckStrToTime EURGBP,H1 inputs: News_Time="2007. 06.7 15:30";
2007.06.08 09:39:07 CheckStrToTime EURGBP,H1: loaded successfully



Вот советник с такой же функцией:

//+------------------------------------------------------------------+
//|                                            ExpCheckStrToTime.mq4 |
//|                      Copyright © 2007, MetaQuotes Software Corp. |
//|                                        https://www.metaquotes.net/ru/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link      "'Некорректная  работа функции StrToTime'"
 
extern string News_Time = "2007.06.7 15:30"; // время выхода новости - cтрока в формате "yyyy.mm.dd hh:mi"
 
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   // пропускаем все свечи до новостной
   if(Time[0]<StrToTime(News_Time)) return(0); 
 
   Print(" News_Time = ",News_Time);
   Print(" StrToTime(News_Time) = ",StrToTime(News_Time));
   Print(" News_Time = ",TimeToStr(StrToTime(News_Time),TIME_DATE|TIME_MINUTES));   
//----
   return(0);
  }
//+------------------------------------------------------------------+

А вот лог :

2007.06.08 09:39:43 2007.06.08 06:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 06:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 06:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 05:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 05:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 05:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 04:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 04:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 04:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 03:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 03:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 03:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 02:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 02:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 02:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 01:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 01:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 01:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.08 00:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.08 00:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.08 00:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 23:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 23:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 23:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 22:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 22:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 22:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 21:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 21:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 21:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 20:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 20:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 20:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 19:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 19:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 19:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 18:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 18:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 18:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 17:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 17:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 17:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 2007.06.07 16:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.07 15:30
2007.06.08 09:39:43 2007.06.07 16:00 ExpCheckStrToTime EURUSD, H1: StrToTime(News_Time) = 1181230200
2007.06.08 09:39:43 2007.06.07 16:00 ExpCheckStrToTime EURUSD, H1: News_Time = 2007. 06.7 15:30
2007.06.08 09:39:43 ExpCheckStrToTime started for testing
2007.06.08 09:39:41 ExpCheckStrToTime: loaded successfully

 
Какой у Вас билд? Проверьте на моих примерах.
 
Rosh:
Какой у Вас билд? Проверьте на моих примерах.

Спасибо за ответы. Запускал Вашего советника на билде 205 по GBPUSD, M1, 2007.03.29 15-30. Лог был с ошибкой такой же как в моём первом примере, но сохранить, к сожалению, не успел. После обновления до 206 глюк исчез. Всё же рекомендую, на всякий случай, запустить на билде 205, с параметрами указанными выше.
 
Я как раз запускал на 205 билде :
Rosh:

Вот его результаты в MetaTrader 4 b205 от 25 мая 2007 г.

Вы хотите сказать, что нужно использовать именно дату
extern string News_Time = "2007.03.29 15:30"
?
 
Rosh:
Я как раз запускал на 205 билде :
Rosh:

Вот его результаты в MetaTrader 4 b205 от 25 мая 2007 г.

Вы хотите сказать, что нужно использовать именно дату
extern string News_Time = "2007.03.29 15:30"
?

Да именно эту дату, таймфрейм и инструмент.