StringToTime работает как-то не так

 

Не могу понять, в чем проблема

Берем банальный код

   datetime time = StringToTime("00:45");
   Comment(time);

На Мт4 при таком указании он возьмет текущую дату и отобразит 2022.07.06 00:45:00

Примечание

Если в строке содержится время без указания даты, то результатом выполнения будет текущая дата локального компьютера с указанным временем.

На МТ5 он почему-то берет вчерашний день

TimeLocal - Дата и время - Справочник MQL4
TimeLocal - Дата и время - Справочник MQL4
  • docs.mql4.com
TimeLocal - Дата и время - Справочник MQL4
 
Nikita Chernyshov:

Не могу понять, в чем проблема

Берем банальный код

На Мт4 при таком указании он возьмет текущую дату и отобразит 2022.07.06 00:45:00

Примечание

Если в строке содержится время без указания даты, то результатом выполнения будет текущая дата локального компьютера с указанным временем.

На МТ5 он почему-то берет вчерашний день

Если сегодня 6.07 то откуда на графике завтрашний день? Ведь это грааль… Посмотрел сегодня котировки на завтра и ты миллиардер…

 
Alexey Viktorov #:

Если сегодня 6.07 то откуда на графике завтрашний день? Ведь это грааль… Посмотрел сегодня котировки на завтра и ты миллиардер…

А где там у него день завтрашний?
 
Попробуйте перекомпилировать код сегодняшним днем. 
 
Alexey Viktorov #:

Если сегодня 6.07 то откуда на графике завтрашний день? Ведь это грааль… Посмотрел сегодня котировки на завтра и ты миллиардер…

В том-то и дело, что мне нужен не завтрашний день, а сегодняшний.

А выдает вчерашний.

 
А время у брокера какое? Может у него еще не наступил новый день.
 
Nikita Chernyshov #:

В том-то и дело, что мне нужен не завтрашний день, а сегодняшний.

А выдает вчерашний.


Но тут есть еще интересный момент.

Почему-то именно в 3:00 StringToTime меняет дату на текущую.

В коде у меня вот так 

datetime timeStart = StringToTime("18:00");
   datetime timeEnd = StringToTime("00:59");
   
   Print(timeStart,"   ",timeEnd);

Время брокера мск, время локальное мск, они совпадают.

 
Nikita Chernyshov #:

В том-то и дело, что мне нужен не завтрашний день, а сегодняшний.

А выдает вчерашний.

Да. Я не прав. Месяц принял за день, а день вообще не смотрел.

 
Ihor Herasko #:
Попробуйте перекомпилировать код сегодняшним днем. 

Что вы имеете ввиду?

Я прям на тот момент, когда создавал ветку - тогда и компилировал кусок кода, несколько раз, не верилось. Компилировал изолированно эту логику в пустом советнике)

 
Еще раз подниму, может кто-то объяснить?
 
Nikita Chernyshov #:
Еще раз подниму, может кто-то объяснить?

Напишите в эту ветку, её иногда разработчики просматривают.

Ошибки, баги, вопросы - Попробуйте через SymbolInfoTick или SymbolInfoDouble.
Ошибки, баги, вопросы - Попробуйте через SymbolInfoTick или SymbolInfoDouble.
  • 2010.06.02
  • www.mql5.com
то ордер по GBPUSD не открывается и в логе ошибка 26 Core 1 failed instant sell 1. И не подскажете как правильнее через SymbolInfoTick или SymbolInfoDouble. Написал такой код происходит что-то не понятное где может быть ошибка. Потому что отсутствуют операторы break между case спасибо
Причина обращения: