CurTime()

 
Здравствйте!
Начиная с прошлой версии замете, что функция CurTime() с какоо-то омента после начала работы терминала начинает выдавать время на час болше. После перезагрузки терминала она работает нормально, потом все повтаряется. Думал, что в советники что-то не так. Написал такой советик:

//+------------------------------------------------------------------+
//| curtime.mq4 |
//| Kustov VK |
//| |
//+------------------------------------------------------------------+
#property copyright "Kustov VK"
#property link ""

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
Comment(TimeToStr(CurTime()));
//----
return(0);
}
//+------------------------------------------------------------------+

Подключил... Время на час болше. Перезагрузл терминал... все нормально.
Конкретного времени я не смог засечь. Иногда и три часа териал работает - подключаеш советника, все нормально. А иногда через час подключаешь - сдвиг по времени.
ЧТО БЫ ЭТО ЗНАЧИЛО!!!!
 
билд?
 
билд?

заметел в 183. 184 тоже глючит. Сегодня кака случилась. Может быть и раньше было.
 

Подключил... Время на час болше.

Вы с каким временем сравнивали? Оно должно быть таким же, как и в заголовке окна MarketWatch
 
Все, нашел косячек. Дело выглядит так. На одном сервере щас время 14:мм. Это время показывает в заголовке окна MarketWatch и рядом с котировками, затем я переключаюсь на другой сервер, там время щас 13:мм, а в заголовке окна MarketWatch осталось 14:мм. И соответственно CurTime() показывает 14:мм. То есть загвоздка не с CurTime(), а с обнавлением времени в заголовке окна MarketWatch
 
а если сравнить со временем поступления последней котировки соответствующей валютной пары? ведь эксперт запускается только с приходом новой котировки
 
Все, нашел косячек. Дело выглядит так. На одном сервере щас время 14:мм. Это время показывает в заголовке окна MarketWatch и рядом с котировками, затем я переключаюсь на другой сервер, там время щас 13:мм, а в заголовке окна MarketWatch осталось 14:мм. И соответственно CurTime() показывает 14:мм. То есть загвоздка не с CurTime(), а с обнавлением времени в заголовке окна MarketWatch

В том то и дело, что Вы переключаетесь на другой торговый сервер, который работает в другой таймзоне. Отсюда и разница ровно на 1 час.
 
[quote В том то и дело, что Вы переключаетесь на другой торговый сервер, который работает в другой таймзоне. Отсюда и разница ровно на 1 час. [/quote]

Интересно, только это я понимаю, а вот почему разница между временем котировок и заголовком окна MarketWatch в 1 час. При чем интерсная картина, если я перехожу с сервера со "меншей таймзоной", т.е. там 15:мм, на "большую", где 16:мм, время в заголовке окна MarketWatch увеличивается, соответсвенно, на 1 час, т.е. было 15:мм, стало 16:мм. А при обратном переходе, оно остается неизменным, т.е. было 16:мм и стало 16:мм, при этом время котировок стало 15:мм. Ну подробней токо для прапоров писать.
 
В том то и дело, что Вы переключаетесь на другой торговый сервер, который работает в другой таймзоне. Отсюда и разница ровно на 1 час.


Интересно, только это я понимаю, а вот почему разница между временем котировок и заголовком окна MarketWatch в 1 час. При чем интерсная картина, если я перехожу с сервера со "меншей таймзоной", т.е. там 15:мм, на "большую", где 16:мм, время в заголовке окна MarketWatch увеличивается, соответсвенно, на 1 час, т.е. было 15:мм, стало 16:мм. А при обратном переходе, оно остается неизменным, т.е. было 16:мм и стало 16:мм, при этом время котировок стало 15:мм. Ну подробней токо для прапоров писать.

Спасибо за указание на ошибку.
На самом деле была ошибка с заморозкой показа времени в заголовке окна Market Watch при переключении на торговые серверы с меньшей таймзоной. Ошибка касалась только показа текста и не влияла на остальные функции. Ошибка исправлена.
 
Ошибка касалась только показа текста и не влияла на остальные функции. Ошибка исправлена.


Вот на CurTime() она влияла прямым образом. Спасибо за исправление.
Причина обращения: