Группа функций, обеспечивающих работу с данными типа datetime (целое число, представляющее собой количество секунд, прошедших с 0 часов 1 января 1970 года).
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
Функция |
Действие |
TimeCurrent |
Возвращает последнее известное время сервера (время прихода последней котировки) в формате datetime |
TimeTradeServer |
Возвращает расчетное текущее время торгового сервера |
TimeLocal |
Возвращает локальное компьютерное время в формате datetime |
TimeGMT |
Возвращает время GMT формате datetime с учетом перехода на зимнее или летнее время по локальному времени компьютера, на котором запущен клиентский терминал |
TimeDaylightSavings |
Возвращает признак перехода на летнее /зимнее время |
TimeGMTOffset |
Возвращает текущую разницу между временем GMT и локальным временем компьютера в секундах с учетом перехода на зимнее или летнее время |
TimeToStruct |
Производит конвертацию из значения типа datetime в переменную типа структуры MqlDateTime |
StructToTime |
Производит конвертацию из переменной типа структуры MqlDateTime в значение типа datetime |
TimeCurrent
Возвращает последнее известное время сервера, время прихода последней котировки по одному из выбранных в «Обзоре рынка» символов. В обработчике OnTick() данная функция вернет время пришедшего обрабатываемого тика. В других случаях (например, вызов в обработчиках OnInit(), OnDeinit(), OnTimer() и так далее) это – время прихода последней котировки по любому символу, доступного в окне «Обзор рынка», то самое время, которое показано в заголовке этого окна. Значение времени формируется на торговом сервере и не зависит от настроек времени на компьютере пользователя. Существует 2 варианта функции.
Вызов без параметров
datetime TimeCurrent();
Вызов с параметром типа MqlDateTime
datetime TimeCurrent( MqlDateTime& dt_struct // переменная типа структуры );
Параметры
dt_struct — [out] Переменная типа структуры MqlDateTime.
Возвращаемое значение
Значение типа datetime
Примечание
Если в качестве параметра была передана переменная типа структуры MqlDateTime, то она заполняется соответствующим образом.
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
При работе в тестере стратегий время последней котировки TimeCurrent() моделируется в соответствии с историческими данными.
TimeTradeServer
Возвращает расчетное текущее время торгового сервера. В отличие от функции TimeCurrent(), расчет значения времени производится в клиентском терминале и зависит от настроек времени на компьютере пользователя. Существует 2 варианта функции.
Вызов без параметров
datetime TimeTradeServer();
Вызов с параметром типа MqlDateTime
datetime TimeTradeServer( MqlDateTime& dt_struct // переменная типа структуры );
Параметры
dt_struct — [out] Переменная типа структуры MqlDateTime.
Возвращаемое значение
Значение типа datetime
Примечание
Если в качестве параметра была передана переменная типа структуры MqlDateTime, то она заполняется соответствующим образом.
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
При работе в тестере стратегий время TimeTradeServer() моделируется в соответствии с историческими данными и всегда равно TimeCurrent().
TimeTradeServer
Возвращает расчетное текущее время торгового сервера. В отличие от функции TimeCurrent(), расчет значения времени производится в клиентском терминале и зависит от настроек времени на компьютере пользователя. Существует 2 варианта функции.
Вызов без параметров
datetime TimeTradeServer();
Вызов с параметром типа MqlDateTime
datetime TimeTradeServer( MqlDateTime& dt_struct // переменная типа структуры );
Параметры
dt_struct — [out] Переменная типа структуры MqlDateTime.
Возвращаемое значение
Значение типа datetime
Примечание
Если в качестве параметра была передана переменная типа структуры MqlDateTime, то она заполняется соответствующим образом.
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
При работе в тестере стратегий время TimeTradeServer() моделируется в соответствии с историческими данными и всегда равно TimeCurrent().
TimeLocal
Возвращает локальное время компьютера, на котором запущен клиентский терминал. Существует 2 варианта функции.
Вызов без параметров
datetime TimeLocal();
Вызов с параметром типа MqlDateTime
datetime TimeLocal( MqlDateTime& dt_struct // переменная типа структуры );
Параметры
dt_struct — [out] Переменная типа структуры MqlDateTime.
Возвращаемое значение
Значение типа datetime
Примечание
Если в качестве параметра была передана переменная типа структуры MqlDateTime, то она заполняется соответствующим образом.
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
При работе в тестере стратегий локальное время TimeLocal() всегда равно моделируемому серверному времени TimeCurrent().
TimeGMT
Возвращает время GMT, которое вычисляется с учётом перехода на зимнее или летнее время по локальному времени компьютера, на котором запущен клиентский терминал. Существует 2 варианта функции.
Вызов без параметров
datetime TimeGMT();
Вызов с параметром типа MqlDateTime
datetime TimeGMT( MqlDateTime& dt_struct // переменная типа структуры );
Параметры
dt_struct — [out] Переменная типа структуры MqlDateTime.
Возвращаемое значение
Значение типа datetime
Примечание
Если в качестве параметра была передана переменная типа структуры MqlDateTime, то она заполняется соответствующим образом.
Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах.
При работе в тестере стратегий время TimeGMT() всегда равно моделируемому серверному времени TimeTradeServer().
TimeDaylightSavings
Возвращает поправку на летнее время в секундах, если был произведен переход на летнее время. Зависит от настроек времени на компьютере пользователя.
int TimeDaylightSavings();
Возвращаемое значение
Если был произведен переход на зимнее (стандартное) время, то возвращается 0.
TimeGMTOffset
Возвращает текущую разницу между временем GMT и локальным временем компьютера в секундах с учетом перехода на зимнее или летнее время. Зависит от настроек времени на компьютере пользователя.
int TimeGMTOffset();
Возвращаемое значение
Значение типа int, представляющее текущую разницу между временем GMT и локальным временем компьютера TimeLocal() и в секундах.
TimeGMTOffset() = TimeGMT() — TimeLocal()
TimeToStruct
Производит конвертацию из значения типа datetime (количество секунд с 01.01.1970) в переменную типа структуры MqlDateTime.
bool TimeToStruct( datetime dt, // дата и время MqlDateTime& dt_struct // структура для принятия значений );
Параметры
dt — [in] Значение даты для конвертации.
dt_struct — [out] Переменная структуры типа MqlDateTime.
Возвращаемое значение
true – в случае успеха, иначе false. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
StructToTime
Производит конвертацию из переменной типа структуры MqlDateTime в значение типа datetime и возвращает полученное значение.
datetime StructToTime( MqlDateTime& dt_struct // структура даты и времени );
Параметры
dt_struct — [in] Переменная структуры типа MqlDateTime.
Возвращаемое значение
Значение типа datetime, содержащее количество секунд с 01.01.1970.