![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
а понять дубликаты это или нет я не виду как -так как в структуре нет уникального идетификатора
видимо вы не сталкивались на практике.
делаю так
запоминаю последний тик MqlTick
когда приходит событие OnTick - запрашиваю последние тики со времени последнего MqlTick который храню
так вот если в МТ приходит 10 тиков с одним временем - а такое на бирже постоянно - то я получу 10 раз событие OnTick
при этом в первый раз мне отдадут 1 тик с этим временем - потом 2 тика с этим временем потом 3 и так далее
тоесть я получу 10 событий и в итоге придет 55 тиков
а понять дубликаты это или нет я не виду как -так как в структуре нет уникального идетификатора
p.s. вроде в боевом билде направление сделок передается неправильно - обещали исправить.
Да, в терминал миллисекунды добавили, а сервер шлет котировки без миллисекунд. Возможно сервер еще не обновили или не доработали.
Событие OnTick приходит нерегулярно поэтому не вижу смысла анализировать сделки между событиями OnTick. Лучше взять нужное количество сделок или за определенный период например за одну минуту.
Но если уж так надо получить сделки между OnTick, то можно обойтись и без миллисекунд. Просто надо вместе с временем последнего запроса запомнить количество полученных сделок - N, при следующем запросе новые сделки будут начинаться с этого номера - N.
Ну а что если взять (кол откр поз т.е ОИ) в расчет от проходящего объема сделок
решение костыльное и не гарантирует правильную логику
много сделок приходят в одно время когда по рынку бьет крупный ордер и сносит лимитные ордера
некоторые лимитные будут на открытие позиций - некоторые на закрытие
например MKT BUY 100 at 1.55 хочет войти
LMT SELL 10 1.50 хочет войти в позу ОИ +20
LMT SELL 10 1.51 хочет выйти ОИ +0
LMT SELL 10 1.52 хочет выйти ОИ +0
LMT SELL 10 1.53 хочет выйти ОИ +0
LMT SELL 10 1.54 хочет войти в позу выйти ОИ +20
LMT SELL 10 1.55 хочет выйти выйти ОИ +0
итого я получу 4 дубликата