Скорость исполнения ордеров - страница 2

 

Вот сейчас по Москве в 17 00, новости вышли выделено жирным, это "пипец" как страшно

2016.09.01 15:49:02,469,531,344,219,265,219

2016.09.01 15:50:02,219,625,250,360,359,375

2016.09.01 15:51:01,234,219,172,219,219,484

2016.09.01 15:52:01,266,297,281,203,203,219

2016.09.01 15:53:01,188,297,218,219,172,172

2016.09.01 15:54:02,328,265,172,203,391,156

2016.09.01 15:55:01,328,328,532,281,265,172

2016.09.01 15:56:01,187,203,344,219,281,844

2016.09.01 15:57:02,250,266,250,265,219,281

2016.09.01 15:58:00,203,110,172,203,234,203

2016.09.01 15:59:04,172,235,109,188,203,250

2016.09.01 16:00:39,297,13156,20141,4640,641,265

2016.09.01 16:01:04,344,343,282,437,438,437

2016.09.01 16:02:03,359,453,641,265,438,734

2016.09.01 16:03:09,500,656,954,3156,3484,1000

2016.09.01 16:04:02,203,328,281,453,282,265

2016.09.01 16:05:02,203,391,500,672,297,359

2016.09.01 16:06:02,328,515,375,391,297,594

2016.09.01 16:07:03,328,250,359,875,313,1140

2016.09.01 16:08:02,406,234,266,281,250,1406

2016.09.01 16:09:02,188,218,266,328,250,219


 
Alex Mikhailov:

Вот сейчас по Москве в 17 00, новости вышли выделено жирным, это "пипец" как страшно

2016.09.01 15:49:02,469,531,344,219,265,219

2016.09.01 15:50:02,219,625,250,360,359,375

2016.09.01 15:51:01,234,219,172,219,219,484

2016.09.01 15:52:01,266,297,281,203,203,219

2016.09.01 15:53:01,188,297,218,219,172,172

2016.09.01 15:54:02,328,265,172,203,391,156

2016.09.01 15:55:01,328,328,532,281,265,172

2016.09.01 15:56:01,187,203,344,219,281,844

2016.09.01 15:57:02,250,266,250,265,219,281

2016.09.01 15:58:00,203,110,172,203,234,203

2016.09.01 15:59:04,172,235,109,188,203,250

2016.09.01 16:00:39,297,13156,20141,4640,641,265

2016.09.01 16:01:04,344,343,282,437,438,437

2016.09.01 16:02:03,359,453,641,265,438,734

2016.09.01 16:03:09,500,656,954,3156,3484,1000

2016.09.01 16:04:02,203,328,281,453,282,265

2016.09.01 16:05:02,203,391,500,672,297,359

2016.09.01 16:06:02,328,515,375,391,297,594

2016.09.01 16:07:03,328,250,359,875,313,1140

2016.09.01 16:08:02,406,234,266,281,250,1406

2016.09.01 16:09:02,188,218,266,328,250,219


Расшифруйте, что это, тоже хочу попугаться
 
Это данные в мс, то есть не один ордер не закроется и не откроется, по нормальной цене, только с безумным проскальзыванием
 
Alex Mikhailov:
Это данные в мс, то есть не один ордер не закроется и не откроется, по нормальной цене, только с безумным проскальзыванием
Я на робо торгую с самого начала новостей, все нормально, немного увеличилось время поначалу. Я говорю - от ДЦ все зависит.
 
Alex Mikhailov:
Это данные в мс, то есть не один ордер не закроется и не откроется, по нормальной цене, только с безумным проскальзыванием
Покажите терминал, где быстрее. А так - добро пожаловать в мир лимитных заявок!
 
Renat Fatkhullin:

Вот сегодня на реальном счете в Открытии при торговлен на фьючерсной секции MOEX: читать надо с конца лога

С нашего VPS при пинге в 2 мс, в среднем сделки проходят за 14-15 мс. Через неделю будет еще быстрее.

Причем это время полного цикла с размещением заявки на бирже и получением подтверждения с биржи об успешном размещении.

Чем измеряете наносекунды в отчете?

Renat Fatkhullin:

В любом случае, MetaTrader 5 на голову выше MetaTrader 4 по латенси:

около 3-4 мс в локалке на MetaTrader 5 MetaQuotes-Demo.

Мы провели большую работу над новой архитектурой и именно в MetaTrader 5 у трейдеров огромное преимущество в скорости по сравнению с четверкой.

В локалке за 3-4 мс (пинг 0), MOEX - 14-15мс (пинг 2) за полный цикл. Бижа - не дольше 1мс. Выходит, что MT5 на пинге теряет 10 мс. Это около пяти запросов-ответов должно быть при 2 мс пинге. Верно?

 

Покажите стату по асинхронному выставлению лимитной заявки. От момента ухода приказа от терминала, до размещения его в стакане биржей (без подтверждения) .

 
Alex Mikhailov:

Вот сейчас по Москве в 17 00, новости вышли выделено жирным, это "пипец" как страшно

2016.09.01 15:49:02,469,531,344,219,265,219

2016.09.01 15:50:02,219,625,250,360,359,375

2016.09.01 15:51:01,234,219,172,219,219,484

2016.09.01 15:52:01,266,297,281,203,203,219

2016.09.01 15:53:01,188,297,218,219,172,172

2016.09.01 15:54:02,328,265,172,203,391,156

2016.09.01 15:55:01,328,328,532,281,265,172

2016.09.01 15:56:01,187,203,344,219,281,844

2016.09.01 16:09:02,188,218,266,328,250,219
Жуткое дело! Ужассс!
 
fxsaber:

Чем измеряете наносекунды в отчете?

У нас точность до микросекунд.


В локалке за 3-4 мс (пинг 0), MOEX - 14-15мс (пинг 2) за полный цикл. Бижа - не дольше 1мс. Выходит, что MT5 на пинге теряет 10 мс. Это около пяти запросов-ответов должно быть при 2 мс пинге. Верно?

Не МТ5 теряет, а Plaza II. Именно у нее удивительный для 2016 года механизм снапшотинга на подтверждениях в 10 мс. То есть, она отдает подтверждения блоками раз в 10 мс.

На следующей неделе Открытие включит режим снапшотинга Плазы в 3 мс и тем самым мы еще выиграем в среднем от 5 до 7 мс при исполнении.

А сам МТ5 на внутренний процессинг, включая свой шлюз, тратит меньше 1 мс. В новых версиях еще меньше будет тратить за счет очередных оптимизаций процессов на пару сотем микросекунд.


Покажите стату по асинхронному выставлению лимитной заявки. От момента ухода приказа от терминала, до размещения его в стакане биржей (без подтверждения) .

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

Вот серия из установок 20 отложенников: читать логи надо снизу

вот финальные уведомления о регистрации сделок приходят через 17 мс от начала (0.109 - 0.092 мс) посылки первой асинхронной транзакции 
2016.09.01 17:44:51.456    Trades    'xxxxx': deal #28952541 buy 1.00 Si-9.16 at 66167 done (based on order #43542453)
2016.09.01 17:44:51.437    Trades    'xxxxx': deal #28952540 buy 1.00 Si-9.16 at 66167 done (based on order #43542452)
2016.09.01 17:44:51.419    Trades    'xxxxx': deal #28952539 buy 1.00 Si-9.16 at 66167 done (based on order #43542451)
2016.09.01 17:44:51.399    Trades    'xxxxx': deal #28952538 buy 1.00 Si-9.16 at 66167 done (based on order #43542450)
2016.09.01 17:44:51.381    Trades    'xxxxx': deal #28952537 buy 1.00 Si-9.16 at 66167 done (based on order #43542449)
2016.09.01 17:44:51.362    Trades    'xxxxx': deal #28952536 buy 1.00 Si-9.16 at 66168 done (based on order #43542448)
2016.09.01 17:44:51.343    Trades    'xxxxx': deal #28952535 buy 1.00 Si-9.16 at 66168 done (based on order #43542447)
2016.09.01 17:44:51.324    Trades    'xxxxx': deal #28952534 buy 1.00 Si-9.16 at 66168 done (based on order #43542446)
2016.09.01 17:44:51.305    Trades    'xxxxx': deal #28952533 buy 1.00 Si-9.16 at 66168 done (based on order #43542445)
2016.09.01 17:44:51.286    Trades    'xxxxx': deal #28952532 buy 1.00 Si-9.16 at 66168 done (based on order #43542444)
2016.09.01 17:44:51.267    Trades    'xxxxx': deal #28952531 buy 1.00 Si-9.16 at 66167 done (based on order #43542443)
2016.09.01 17:44:51.248    Trades    'xxxxx': deal #28952530 buy 1.00 Si-9.16 at 66168 done (based on order #43542442)
2016.09.01 17:44:51.229    Trades    'xxxxx': deal #28952529 buy 1.00 Si-9.16 at 66168 done (based on order #43542441)
2016.09.01 17:44:51.212    Trades    'xxxxx': deal #28952528 buy 1.00 Si-9.16 at 66168 done (based on order #43542440)
2016.09.01 17:44:51.192    Trades    'xxxxx': deal #28952527 buy 1.00 Si-9.16 at 66168 done (based on order #43542439)
2016.09.01 17:44:51.175    Trades    'xxxxx': deal #28952526 buy 1.00 Si-9.16 at 66168 done (based on order #43542438)
2016.09.01 17:44:51.159    Trades    'xxxxx': deal #28952525 buy 1.00 Si-9.16 at 66168 done (based on order #43542437)
2016.09.01 17:44:51.142    Trades    'xxxxx': deal #28952524 buy 1.00 Si-9.16 at 66167 done (based on order #43542436)
2016.09.01 17:44:51.125    Trades    'xxxxx': deal #28952523 buy 1.00 Si-9.16 at 66167 done (based on order #43542435)
2016.09.01 17:44:51.109    Trades    'xxxxx': deal #28952522 buy 1.00 Si-9.16 at 66167 done (based on order #43542434)

вот получаются подтверждения от МТ5 сервера через 4 мс от первой посылки (0.096 - 0.092 мс),
первые подтверждения от биржи (placed for execution) начали приходить через 5.7 мс (0.098 - 0.092), последнее через 13.35 мс
2016.09.01 17:44:51.107    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 13.354 ms
2016.09.01 17:44:51.107    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 13.354 ms
2016.09.01 17:44:51.106    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.106    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 12.656 ms
2016.09.01 17:44:51.106    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.106    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 12.152 ms
2016.09.01 17:44:51.105    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.105    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.105    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 11.751 ms
2016.09.01 17:44:51.105    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 11.334 ms
2016.09.01 17:44:51.105    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.104    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 11.217 ms
2016.09.01 17:44:51.104    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.104    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.104    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 10.375 ms
2016.09.01 17:44:51.103    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 10.348 ms
2016.09.01 17:44:51.103    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.102    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 9.470 ms
2016.09.01 17:44:51.102    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 9.503 ms
2016.09.01 17:44:51.102    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.102    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 9.258 ms
2016.09.01 17:44:51.102    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.102    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.101    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 8.517 ms
2016.09.01 17:44:51.101    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.101    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 8.056 ms
2016.09.01 17:44:51.101    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.100    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 7.522 ms
2016.09.01 17:44:51.100    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.100    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 7.515 ms
2016.09.01 17:44:51.100    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 7.497 ms
2016.09.01 17:44:51.100    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.100    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 7.184 ms
2016.09.01 17:44:51.099    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.098    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 6.189 ms
2016.09.01 17:44:51.098    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.098    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market placed for execution in 5.716 ms
2016.09.01 17:44:51.097    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.097    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.096    Trades    'xxxxx': accepted exchange buy 1.00 Si-9.16 at market

выставляются 20 отложенников в асинхронном режиме, затрачено около 2 мс
2016.09.01 17:44:51.094    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.094    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.093    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.092    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.092    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.092    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market
2016.09.01 17:44:51.092    Trades    'xxxxx': exchange buy 1.00 Si-9.16 at market


пинг до брокера 2 мс.
 

Важный вывод про скорость самого языка MQL5: когда речь идет о миллисекундах и тем более о микросекундах, скорость самого языка автоматизации начинает занимать существенную часть в латенси.

Если трейдер использует интерпретируемые языки типа QLUA/EasyLanguage, то он просто на обвязке теряет миллисекунды и даже не в курсе этого. Не говоря уже о том, что его программа из ядра платформы может получать уведомления об активности на рынке тоже с существенными задержками в сотни микросекунд и даже миллисекунд.

Именно поэтому мы столько сил тратим на оптимизацию MQL5 и шаг за шагом вылизываем узкие места, выигрывая десятки и сотни микросекунд.


Недавно мы показали скорость отображения данных в трех терминалах Quik, MetaTrader 5 и SmartX на MOEX.

Смотреть открытие рынка надо с 00:50 примерно: победитель сразу виден


 
Renat Fatkhullin:
У нас точность до микросекунд.


Не МТ5 теряет, а Plaza II. Именно у нее удивительный для 2016 года механизм снапшотинга на подтверждениях в 10 мс. То есть, она отдает подтверждения блоками раз в 10 мс.

На следующей неделе Открытие включит режим снапшотинга Плазы в 3 мс и тем самым мы еще выиграем в среднем от 5 до 7 мс при исполнении.

Это великолепно! Правда, возникает вопрос, как с этой плаза дружат HFT, которые делают 40% объема в 1-2мс? Почему они не просто быстрее, а быстрее в несколько раз?!

А сам МТ5 на внутренний процессинг, включая свой шлюз, тратит меньше 1 мс. В новых версиях еще меньше будет тратить за счет очередных оптимизаций процессов на пару сотем микросекунд.

Но Вы же сами сказали, что 3-4 мс в локалке. Почему такая разница между внутренним процессингом и реальным демо в локалке?

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

Да, не требуют. Узнать время размещения самой бирже возможно как-то? Из-за упомянутого снапшота мы узнаем гораздо позже. Но ведь важно знать при асинхронной отправке, сколько времени будет идти до непосредственного размещения, а не ответа обратно в терминал.

Вот серия из установок 20 отложенников: читать логи надо снизу

пинг до брокера 2 мс.
Чувствуется этот снапшот. Видимо, им регулируют траффик.