Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
подскажите какой тип флага соответствует номеру 24. Опытным путем определил что
подскажите какой тип флага соответствует номеру 24. Опытным путем определил что
Флаги могут складываться. Чтобы определить какие именно события произошли (Здесь "tick" - массив с тиками):
if((tick.flags &TICK_FLAG_BID)==TICK_FLAG_BID)
flags=" TICK_FLAG_BID ";
if((tick.flags &TICK_FLAG_ASK)==TICK_FLAG_ASK)
flags+=" TICK_FLAG_ASK ";
if((tick.flags &TICK_FLAG_LAST)==TICK_FLAG_LAST)
flags+=" TICK_FLAG_LAST ";
if((tick.flags &TICK_FLAG_VOLUME)==TICK_FLAG_VOLUME)
flags+=" TICK_FLAG_VOLUME ";
if((tick.flags &TICK_FLAG_BUY)==TICK_FLAG_BUY)
flags+=" TICK_FLAG_BUY ";
if((tick.flags &TICK_FLAG_SELL)==TICK_FLAG_SELL)
flags+=" TICK_FLAG_SELL ";
Comment(flags);
Добрый день, коллеги.
Возможно кому-то будет интересно смоделировать проблему, с которой я столкнулся - похоже CopyTicks в тестере стратегий в режиме "Каждый тик на основе реальных" в некоторых случаях начинает задваивать тики, возвращаемые одним запросом.
Проверял на MOEX RTS в эксперте, запрашивая новые тики в событии OnTimer(). Код во вложении.
Флаги TICK_FLAG_BUY TICK_FLAG_SELL у дублей могут как повторяться, так и отличаться от оригинальных записей (впрочем понять какие из них оригиналы, а какие дубли невозможно, не проведя сравнение с другим источником тиков).
Пробовал подключаться к реал "Открытие" и MetaQuotes-Demo - результат одинаковый.
Проверял в том числе на build 1578. Удалял все папки ticks на машине. После их автообновления результат тотже.
Вот кусок лога, где видно, что в одном запросе внезапно пошли повторные тики (с меньшим временем, чем предыдущие)
Startup MetaTester 5 x64 build 1578 (07 Apr 2017)
Server MetaTester 5 started on 127.0.0.1:3000
Startup initialization finished
127.0.0.1 login (build 1578)
Network 38520 bytes of account info loaded
Network 1482 bytes of tester parameters loaded
Network 188 bytes of input parameters loaded
Network 4192 bytes of symbols list loaded
Tester expert file added: Experts\!sn_err.ex5. 11617 bytes loaded
Tester initial deposit 10000.00 RUR, leverage 1:100
Tester successfully initialized
Network 29 Kb of total initialization data received
Tester QEMU Virtual version (cpu64-rhel6), 2047 MB
Symbols RTS-6.17: symbol to be synchronized
Symbols RTS-6.17: symbol synchronized, 3784 bytes of symbol info received
History RTS-6.17: history synchronization started
History RTS-6.17: load 31 bytes of history data to synchronize in 0:00:00.000
History RTS-6.17: history synchronized from 2016.01.20 to 2017.04.07
Ticks RTS-6.17: ticks synchronization started
Ticks RTS-6.17: load 38 bytes of tick data to synchronize in 0:00:00.000
Ticks RTS-6.17: history ticks synchronized from 2017.04.06 to 2017.04.06
History RTS-6.17,M1: history cache allocated for 475200 bars and contains 23851 bars from 2016.01.20 12:28 to 2017.04.05 23:45
History RTS-6.17,M1: history begins from 2016.01.20 12:28
Tester RTS-6.17,M1 (MetaQuotes-Demo): generating based on real ticks
Tester RTS-6.17,M1: testing of Experts\!sn_err.ex5 from 2017.04.06 00:00 to 2017.04.07 00:00 started
Ticks RTS-6.17 : real ticks begin from 2017.04.06 00:00:00
...
CYCLE: 16 TICK: 2017.04.06 11:06:42;1491476802652;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 16 TICK: 2017.04.06 11:06:43;1491476803512;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 16 TICK: 2017.04.06 11:06:46;1491476806819;2;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 16 TICK: 2017.04.06 11:06:46;1491476806865;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 16 TICK: 2017.04.06 11:06:46;1491476806865;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807075;1;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;3;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;10;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;4;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;3;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;4;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;1;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807075;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;3;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;10;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;4;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807470;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;3;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;4;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 17 TICK: 2017.04.06 11:06:47;1491476807472;1;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY DOUBLE
CYCLE: 19 TICK: 2017.04.06 11:06:49;1491476809747;3;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 19 TICK: 2017.04.06 11:06:49;1491476809747;7;88; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_SELL
CYCLE: 19 TICK: 2017.04.06 11:06:49;1491476809747;3;56; TICK_FLAG_LAST TICK_FLAG_VOLUME TICK_FLAG_BUY
...
Возможно кому-то будет интересно смоделировать проблему, с которой я столкнулся - похоже CopyTicks в тестере стратегий в режиме "Каждый тик на основе реальных" в некоторых случаях начинает задваивать тики, возвращаемые одним запросом.
Всплыла очень неприятная вещь как раз в Вашей ситуации.
Так что тут выход только один - отказаться на время от тестера.
ЗЫ Посмотрел Ваши код и лог. Однозначно, баг CopyTicks в тестере. Интересно, DOUBLE-тики начинаются не с полного дублирования. В общем, копи-пастите в СД свой пост. На данный момент CopyTicks нельзя использовать в тестере и сам тестер нельзя использовать в режиме "по реальным тикам".
Всплыла очень неприятная вещь как раз в Вашей ситуации.
Так что тут выход только один - отказаться на время от тестера.
ЗЫ Посмотрел Ваши код и лог. Однозначно, баг CopyTicks в тестере. Интересно, DOUBLE-тики начинаются не с полного дублирования. В общем, копи-пастите в СД свой пост. На данный момент CopyTicks нельзя использовать в тестере и сам тестер нельзя использовать в режиме "по реальным тикам".
Спасибо, в сервисдеск отписал. По результатам отпишусь.
В истории правильные тики идут начиная с определенной даты (писал ранее об этом). До того идут с дублями. Это если в Открытии счет.
По логам видно, что тест проводился за 06 апреля 2017. Аналогичные результаты за 07 апреля.
И на Открытие-реал и на МQ-Demo ситуация аналогичная
По логам видно, что тест проводился за 06 апреля 2017. Аналогичные результаты за 07 апреля.
И на Открытие-реал и на МQ-Demo ситуация аналогичная
Тады в морг. То бишь, в СД))
Очень точное замечание.
Прошло три месяца, а тикет так и не закрыли. Беда.
Дополнительно нашел еще один косяк (если конечно проблема не связана с поставщиком котировок), на этот раз с неверным определением направления сделки. Копирую текст тикета, чтобы предупредить сообщество:
Сравнение тиковых данных МТ5, полученных стандартным инструментом "Стакан цен / Показ таблицы всех сделок" на реальном счете AMP-Features c котировками от CQG, с данными от Ритмика показало, что МТ5 в некоторых, видимо достаточно редких случаях неверно определяет направление сделки.
Выгружаем стакан цен за 11.07 стандартным инструментом "Стакан цен / Показ таблицы всех сделок". Смотрим данные по фьючерсу GCEQ7 за 00:03 минуту по чикагскому времени (В таблице ниже не чикагское, а GMT)
Полученный результат
Ожидаемый результат
Данные от Rithmic по московскому времени:
Красным показаны расхождения в направлении сделок