Время котировки

 

Как получить время котировки в милисекундах?

из справки:

CopyTicks

Функция получает в массив ticks_array тики, накопленные терминалом за текущую рабочую сессию. Необходимо отметить, что порядок индексации ведется от прошлого к настоящему, то есть тик с индексом 0 является самым старым в массиве.

int  CopyTicks(
   string           symbol_name,           // имя символа
   MqlTick&         ticks_array[],         // массив для приема тиков
   uint             flags=COPY_TICKS_ALL,  // флаг, определяющий тип получаемых тиков
   ulong            from=0,                // дата, начиная с которой запрашиваются тики
   uint             count=0                // количество последних тиков, которые необходимо получить
   );

Параметры

symbol_name

[in]  Символ.

ticks_array

[out]  Массив типа MqlTick для приема тиков.

flags

[in]  Флаг, определяющий тип получаемых тиков. COPY_TICKS_INFO – только Bid и Ask, COPY_TICKS_TRADE – только Last и Volume, COPY_TICKS_ALL – все тики.

from

[in]  Дата, начиная с которой запрашиваются тики. Указывается в миллисекундах с 01.01.1970. 

 Может быть мне в терминал поступают вчерашние тики? ))

 
Serj_Che:

Как получить время котировки в милисекундах?

из справки:

 Может быть мне в терминал поступают вчерашние тики? ))

В мс нельзя, только секунды.

Кстати, я щас проверил эту функцию на 1100 она так и не работает правильно! 

 
Mikalas:

В мс нельзя, только секунды.

Кстати, я щас проверил эту функцию на 1100 она так и не работает правильно! 

В справке написано указывается в миллисекундах, значит изначально время тика идет в миллисекундах.

Получается MQ умышленно урезает миллисекунды?

Как можно так торговать? Может интернет сбойнул, или виндос себе на уме тормознул,  котировка пришла а таких цен таких и в помине уже нет. )

 
Serj_Che:

В справке написано указывается в миллисекундах, значит изначально время тика идет в миллисекундах.

Получается MQ умышленно урезает миллисекунды?

Как можно так торговать? Может интернет сбойнул, или виндос себе на уме тормознул,  котировка пришла а таких цен таких и в помине уже нет. )

https://www.mql5.com/ru/forum/42122#comment_1481862 

Но это, пока "хотелки", а в реале ВОТ: 

Тип datetime предназначен для хранения даты и времени в виде количества секунд, прошедших с 01 января 1970 года. Занимает в памяти 8 байт.

 

struct MqlTick
  {
   datetime     time;          // Время последнего обновления цен
   double       bid;           // Текущая цена Bid
   double       ask;           // Текущая цена Ask
   double       last;          // Текущая цена последней сделки (Last)
   ulong        volume;        // Объем для текущей цены Last
  };
Тестируем 'CopyTicks'
Тестируем 'CopyTicks'
  • www.mql5.com
Индикатор с тиковым объемом прилагается ( скомпилирован на МТ5-1100). - - Категория: автоматические торговые системы
 
Mikalas:

Тип datetime предназначен для хранения даты и времени в виде количества секунд, прошедших с 01 января 1970 года. Занимает в памяти 8 байт.

 

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

К сделкам прикрутили миллисекунды, значит и к котировкам можно (нужно) прикрутить.

Абсурд получается, сделки в миллисекундах меряются, а тики в секундах. 

Что там мелочиться, оставили бы только год в котирах, не все ли равно ) 

 

Если не читали, то посмотрите на это (смотрим на время):

https://www.mql5.com/ru/forum/38456/page26#comment_1445099 

ФОРТС Вопрос к Ренату
ФОРТС Вопрос к Ренату
  • www.mql5.com
С большими проблемами удалось это сделать (начальник отдела по работе с профессиональными клиентами ДЦ Открытие Евгений Сергеевич,. - Страница 26 - Категория: автоматические торговые системы
 
Mikalas:

Если не читали, то посмотрите на это (смотрим на время):

https://www.mql5.com/ru/forum/38456/page26#comment_1445099 

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

Сейчас в CopyTick биржевое или серверное время?

Причина обращения: