Какие сетевые распределенные вычислительные среды в настоящее время предпочтительнее для торговых систем - PullRequest
6 голосов
/ 15 мая 2010

Кажется, что существует довольно много сеточных вычислительных сред, но какие из них фактически используются инвестиционными банками в значительной степени для целей расчета распределения с малой задержкой? Мне было бы интересно услышать ответы, касающиеся как Windows, Linux, так и кроссплатформенности. Кроме того, какие механизмы RPC кажутся наиболее предпочтительными?

Я слышал, что из-за низкой задержки и скорости сами вычисления довольно часто пишутся на C ++ / C, поскольку вычисления, выполняемые на виртуальных машинах, на несколько порядков медленнее, чем собственный код. Кажется ли это распространенным сценарием на практике? например, распределенная структура сетки .NET, выполняющая вычисления, написанные на нативном c ++ / c?

Ответы [ 4 ]

2 голосов
/ 15 октября 2013

Расчет распределения с низкой задержкой

«Низкая задержка» и «распределенный» являются взаимоисключающими:)

Но, говоря это, это зависит от того, насколько низко вы подразумеваете под «низкой задержкой». Если вы говорите о высокочастотной торговле (HFT), то во всех реализациях будет использоваться самый быстрый сетевой код, который они могут получить - вероятнее всего, пользовательские стеки TCP / IP (например, OpenOnload, собственный инфинити и т. Д.). Сеть всегда будет самой медленной частью вашего кода, поэтому вам нужно свести сеть к минимуму.

Если вы говорите «быстро», но не HFT-быстро (например, при оценке экзотических опционов / структурированных продуктов), тогда вы можете в значительной степени использовать все, что вам нравится. Я работал над системами, в которых использовались все что угодно: .Net / RPC, JMS (ActiveMQ), сокеты TCP / IP и т. Д. Это больше о гибкости и простоте, с которой вы можете определять и отправлять данные, а не о простой скорости работы в сети .

2 голосов
/ 22 июня 2010

Некоторые направления (фактически используются в некоторых корпоративных инвестиционных банках):

  • Самодельные решения с использованием ПК
    фермы (трейдеры ставят в очередь свои
    вычислительные запросы)
  • GPU

, поскольку вычислительные операции с интенсивными вычислениями (например, ценообразование по методу Монте-Карло) обычно сильно параллелизуемы

0 голосов
/ 18 апреля 2011

Проверьте www.zircomp.com zNet C ++ framework используется в нескольких электронных торговых системах. Это кроссплатформенная, многоядерная и распределенная платформа программирования, основанная на архитектуре, управляемой данными, специально настроенная для высокой производительности с использованием собственной ОС, с интуитивно понятным API, который равномерно поддерживает параллелизм данных и задач.

0 голосов
/ 21 декабря 2010

Сервер G-WAN начинает проникать в эту область. Он смешивает скорость (и занимаемую площадь) ANSI C со сценариями (полностью совместимыми с ANSI C) (позволяя редактировать / обновлять в режиме реального времени без остановки сервера).

Полная версия JSON RPC ожидается к концу этого года в том же духе эффективности. С его помощью вы сможете реализовать распределенные вычисления.

Это безумие - видеть, что им удалось поместить в 200 КБ (сервер + механизм сценариев + множество функций, таких как диаграммы, сжатие, криптография и т. Д.).

...