Какова дискретность времени прихода цен?

 

Нужна инфа для статьи, чтобы не ошибиться. Пишу раздел про квантование, с ценами все понятно, шаг квантования определяем, как 

Print("POINT = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_POINT), _Digits), "  TRADE_TICK_SIZE = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_SIZE), _Digits));
/*
Я верно понимаю, что для определения минимального шага цены правильнее использовать SYMBOL_TRADE_TICK_SIZE?
В практике не встречал, но наверное возможна ситуация, когда POINT != TICK_SIZE?
/*

Со временем, я так понимаю, самое точное время в миллисекундах дает  MqlTick, данные заполняем через CopyTicks. 

Вопрос: можно писать в статье, что дискретность времени приходящих котировок 1 мс? Или она все же меньше и не определена? 

 
Alexey Volchanskiy:

Нужна инфа для статьи, чтобы не ошибиться. Пишу раздел про квантование, с ценами все понятно, шаг квантования определяем, как 

Print("POINT = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_POINT), _Digits), "  TRADE_TICK_SIZE = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_SIZE), _Digits));
/*
Я верно понимаю, что для определения минимального шага цены правильнее использовать SYMBOL_TRADE_TICK_SIZE?
В практике не встречал, но наверное возможна ситуация, когда POINT != TICK_SIZE?
/*

Со временем, я так понимаю, самое точное время в миллисекундах дает  MqlTick, данные заполняем через CopyTicks. 

Вопрос: можно писать в статье, что дискретность времени приходящих котировок 1 мс? Или она все же меньше и не определена? 

Так как все молчат, пишу, что дискретность, определяемая в MQL5 1 мс. Так что потом не обессудьте )) 
 
Alexey Volchanskiy:

Нужна инфа для статьи, чтобы не ошибиться. Пишу раздел про квантование, с ценами все понятно, шаг квантования определяем, как 

Print("POINT = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_POINT), _Digits), "  TRADE_TICK_SIZE = ", DoubleToString(SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_SIZE), _Digits));
/*
Я верно понимаю, что для определения минимального шага цены правильнее использовать SYMBOL_TRADE_TICK_SIZE?
В практике не встречал, но наверное возможна ситуация, когда POINT != TICK_SIZE?
/*

Со временем, я так понимаю, самое точное время в миллисекундах дает  MqlTick, данные заполняем через CopyTicks. 

Вопрос: можно писать в статье, что дискретность времени приходящих котировок 1 мс? Или она все же меньше и не определена? 

Про тик могу сказать, что он не всегда равен _Point. На ФОРТС точно.
 
Alexey Volchanskiy:

Вопрос: можно писать в статье, что дискретность времени приходящих котировок 1 мс?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Тестируем 'CopyTicks'

fxsaber, 2016.10.13 10:18

два подряд идущих тика могут полностью совпадать (MqlTick), но при этом не обозначать одно и то же событие. Помимо MqlTick-данных есть еще номер тика, который не показывается в MT. два подряд идущих тика (вызывающие события Tick/Calculate) могут совпадать полностью по структуре MqlTick (все цены и объемы и время и флаги равны), но на самом деле быть разными.


 
Там есть до микросекунд определение через MqlTicks, но оно не работает (не работало по крайней мере месяц-2 назад, когда я смотрел)
 
Maxim Dmitrievsky:
Там есть до микросекунд определение через MqlTicks, но оно не работает (не работало по крайней мере месяц-2 назад, когда я смотрел)
"Не работает" и "торговый сервер не предоставляет" - это немного разные ошибки.
 
Maxim Dmitrievsky:
Там есть до микросекунд определение через MqlTicks, но оно не работает (не работало по крайней мере месяц-2 назад, когда я смотрел)
Попробуйте открыть ленту и все сразу станет понятно.
 
Alexey Volchanskiy:
Так как все молчат, пишу, что дискретность, определяемая в MQL5 1 мс. Так что потом не обессудьте )) 
Нельзя так писать, даже если разрешающий предел таймера в MQL - 1 мс. У тиков нет понятия дискретности. Когда мы говорим о дискретности тикового потока, прежде всего подразумеваем некую среднюю частоту поступления новых тиков ну или минимальную разницу во времени между поступлением двух соседних тиков. Так вот, эта разница может быть равна абсолютному нулю (0). Тик - это заключение сделки между двумя контрагентами. Две сделки теоретически и практически могут быть заключены между четырьмя контрагентами в один и тот же квант времени. Поэтому, повторюсь, говорить о каком-либо временном квантовании тикового потока некорректно в принципе.
 
Vasiliy Sokolov:
Нельзя так писать, даже если разрешающий предел таймера в MQL - 1 мс. У тиков нет понятия дискретности. Когда мы говорим о дискретности тикового потока, прежде всего подразумеваем некую среднюю частоту поступления новых тиков ну или минимальную разницу во времени между поступлением двух соседних тиков. Так вот, эта разница может быть равна абсолютному нулю (0). Тик - это заключение сделки между двумя контрагентами. Две сделки теоретически и практически могут быть заключены между четырьмя контрагентами в один и тот же квант времени. Поэтому, повторюсь, говорить о каком-либо временном квантовании тикового потока некорректно в принципе. 
Вот и fxsaber об этом пишет. Кстати, я помню эти обсуждения о нескольких одинаковых тиках, в том числе и по времени. Ситуация прояснилась, всем спасибо!
 
Maxim Dmitrievsky:
Там есть до микросекунд определение через MqlTicks, но оно не работает (не работало по крайней мере месяц-2 назад, когда я смотрел)
Можно пояснить, где в MqlTicks лежат микросекунды? Я вижу только поле миллисекунды.
 
Vasiliy Sokolov:
 Тик - это заключение сделки между двумя контрагентами. 
На Форекс это не так. Это просто изменение котировки. К реальным сделкам это может как иметь, а равно так и не иметь никакого отношения.