hft что это такое

Гайд для начинающих: Что такое высокочастотный трейдинг в крипто?

Многие торговые стратегии кажутся прибыльными для трейдеров, но некоторые из них дают более весомое преимущество. Одним из таких примеров является высокочастотная торговля, хотя очевидно, что она может не подходить всем. В этом руководстве мы объясним все тонкости высокочастотной торговли. Обратите внимание, что этот подход не обязательно гарантирует успех, поскольку он также предполагает, что у вас есть правильные навыки, необходимые для его использования. Итак, если вы заинтересованы в понимании торговой концепции и применении этой стратегии в криптоторговле, – в этой статье именно то, что вам нужно знать.

Высокочастотная торговля (HFT) — это торговая система или подход, который основан на алгоритмической торговле, использующей мощные компьютеры и специальное оборудование. Он включает в себя высокоскоростное исполнение сделок, большое количество транзакций и фокусируется на очень коротких временных промежутках. HFT – это, как правило непростая технология, и в основном институциональные инвесторы отдают предпочтение именно этому методу.

Что такое высокочастотная торговля?

Как следует из названия, HFT связана со скоростью. Этот метод использует различные алгоритмы для анализа минимальных изменений цен и расхождений между одними и теми же ценами активов на нескольких биржах. Как правило, платформы и системы HFT могут автоматически открывать и закрывать несколько позиций в секунду и стремиться к краткосрочным сделкам, которые в ином случае остались бы незамеченными невооруженным глазом.

Традиционно этот метод применяется на валютном, фондовом и других рынках. Однако со временем высокочастотная торговля набрала обороты в криптопространстве, главным образом из-за возможности проведения нескольких сделок в секунду, что дает большое количество преимуществ. Конечно, существуют также специализированные сервисы, которые предоставляют платформы HFT для институциональных инвесторов, чтобы помочь им извлечь выгоду из высокой волатильности криптовалют. Напротив, розничные трейдеры должны остерегаться подозрительных онлайн-сервисов, претендующих на предоставление эффективных алгоритмов HFT в обмен на заранее внесенную сумму средств. Большинство из этих алгоритмов вообще не работают.

Ранее было известно, что высокочастотная торговля составляет до 73% всего объема торговли акциями в США, но на самом деле этот показатель ниже. В 2017 году Олдридж и Кравцив обнаружили, что HFT отвечает за 10-40% объема торговли акциями, 15% иностранной валюты и сырьевыми товарами. Однако, когда дело доходит до дневной торговли, доля HFT может варьироваться от 0% до 100%. Nasdaq показывает, что половина объема биржевых торгов только в США связана с высокочастотной торговлей. В других странах около 80% объема криптоторговли на Bitfinex генерируется фирмами HFT.

Ключевые аспекты HFT

Хотя Комиссия по ценным бумагам и биржам США не использует четкого определения высокочастотной торговли. Они подчеркнули пять ключевых аспектов высокочастотной торговли:

• Использование высокоскоростных и сложных программ для генерации и исполнения ордеров.

• Использование услуги коллокации, предлагаемые биржами и другими службами, чтобы уменьшить потенциальные отмены и задержки в передаче данных

• Использование весьма ограниченных временных рамок для открытия и ликвидации позиций.

• Подача нескольких ордеров, которые отменяются вскоре после подачи.

• Уменьшение риска овернайта

В целом, HFT является неотъемлемой важной частью всех рынков. Криптовалюта тоже входит в их число, хотя большинство розничных трейдеров не знают о ее вкладе. Большинство розничных трейдеров заинтересованы в получении большей прибыли без особых усилий, и HFT, по-видимому, идеально подходит для достижения этой цели.

Однако успех стратегий HFT во многом зависит от используемых алгоритмов и оборудования. К сожалению, реальность показывает, что обычно институциональные инвесторы – это те, кто способен получить доступ к лучшим алгоритмам.

Как работает высокочастотная торговля?

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

Алгоритмы создаются торговыми экспертами для обнаружения трендов и других торговых триггеров, которые не могут быть замечены остальными трейдерами, независимо от их опыта. Основываясь на анализе, программы автоматически открывают большое количество позиций с высокой скоростью. Главная цель состоит в том, чтобы первым извлечь выгоду из новых трендов, обнаруженных алгоритмом.

Когда крупное учреждение или кит открывает большую лонг или шорт позицию по определенной криптовалюте, цена обычно меняется в соответствии с этим трейдом. Как правило, алгоритмы, используемые высокочастотными трейдерами, построены так, чтобы отслеживать эти ценовые движения и торговать на противоположной стороне. Например, крупная продажа криптовалюты может привести к снижению цен. Но алгоритмы будут «покупать падение» и выходить из позиций, когда криптовалюта будет возвращаться к нормальному состоянию.

Обратите внимание, что мы обсуждаем не значительные движения цен, а скорее краткосрочные аномалии, вызванные крупными трейдерами. Кроме того, алгоритмы могут использовать различные стратегии, кроме торговли на противоположной стороне.

Можно ли применять HFT в криптовалютной торговле?

HFT может быть применена в торговле криптовалютами, но не каждый может правильно её использовать. Масштабы и возможности HFT в криптоторговле аналогичны тем, которые наблюдаются на традиционных рынках. Однако криптопространство более волатильно, здесь полно возможностей и рисков.

Коллокация – одни из основных методов HFT, который используется в крипто-пространстве. Она используется, когда торговый сервер размещается как можно ближе к центру обработки данных биржи. В идеале сервер находится на том же объекте, что и биржа, что обеспечивает минимальную задержку при передаче данных. Небольшие задержки в передаче данных для розничных трейдеров не столь значительны. Но каждая миллисекунда может иметь значение для институциональных трейдеров.

Если сравнивать крипто биржи по этому аспекту, то можно выделить Gemini. Это одна из первых криптовалютных бирж, обеспечившая коллокацию в своем дата-центре в Нью-Йорке. В то время как Huobi и чикагская ErisX также запустили её несколько месяцев спустя.

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

Как работать с HFT на крипто-рынке?

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

Вот основные типы высокочастотных торговых возможностей:

Возможности для арбитража

hft что это такое

Трейдеры, которые обнаруживают и используют эти различия, называются арбитражерами. На самом деле, несмотря на то, что их главная цель извлечь выгоду из неэффективности рынка, они помогают уравновешивать рынки, балансировать цены. Очевидно, что, используя эффективные алгоритмы HFT, трейдеры становятся первыми, кто использует эти ценовые различия.

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

Возможности для маркет-мейкинга

Маркет-мейкинг – это еще один подход, используемый институциональными трейдерами, которые спекулируют на спреде. Маркет-мейкеры с большим капиталом размещают на одном и том же рынке «бид и аск». Это позволяет трейдерам извлекать выгоду из спреда, а также помогает рынку обеспечить ликвидность.

В обычной торговле маркет-мейкинг предлагается крупными компаниями и рассматривается как положительная практика. Криптовалютная биржа может сотрудничать с одним или несколькими маркет-мейкерами, которые приносят ликвидность и поддерживают рынок в хорошем состоянии. Кроме того, есть маркет-мейкеры HFT, которые не имеют никаких контрактов с биржевыми платформами. Их цель – использовать свои алгоритмы и извлечь выгоду из спреда.

Возможности в краткосрочной торговле

Высокочастотная торговля не предназначена для свинг-трейдеров и инвесторов, которые покупают и держат криптовалюту (HOLD). Вместо этого он используется трейдерами, которые хотят спекулировать на краткосрочных движениях цен. Вы можете думать об этом, как о скальпинге на стероидах. HFT использует мощные компьютеры и алгоритмы, которые могут обеспечить прибыль в течение нескольких секунд или даже миллисекунд. Высокочастотные трейдеры работают так быстро, что цена может даже не успеть вовремя отреагировать.

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

Торговля на объеме

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

Когда использовать HFT в крипто?

Вы можете использовать высокочастотную торговлю, когда убедитесь, что торговый алгоритм эффективен на 100%. Следует проверить, что это не мошенничество. Помните, что результаты алгоритма напрямую зависят от навыков того, кто его создал. Поэтому имеет смысл провести дью-дилидженс, прежде чем заниматься высокочастотной торговлей.

Как только вы найдете алгоритм, который лучше всего соответствует вашим потребностям, вы можете заниматься HFT, когда будете готовы.

Преимущества HFT

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

Ограничения и критика HFT

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

Подойдет ли высокочастотная торговля для всех?

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

Лучше всего придерживаться обычной торговли, чтобы набраться опыта и научиться понимать рынок. Возможно, трейдерам следует начать с дневной торговли в криптотрейдинге и медленно совершенствовать стратегии и продвигаться к HFT.

Заключение

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

Источник

Высокочастотный трейдинг (HFT) с использованием FPGA

Введение

Высокочастотному трейдингу (HFT) уделяется большое внимание в последнее время, и он становится важнейшим игроком на финансовых рынках. Под термином HFT понимается набор техник при торговле акциями и деривативами, когда большой поток заявок отправляется на рынок с раунд-трипом меньше миллисекунды[1]. Цель высокочастотников, это подойди к концу дня без каких-либо позиций ценных бумаг в наличии, а получать прибыль от своих стратегий покупая и продавая акции на очень высокой скорости. Исследования показывают, что HFT трейдеры держат акцию в среднем всего 22 секунды[2]. Aite Group утверждает, что HFT оказывает существенное влияние на рынок, более чем 50% сделок по акциям в США было совершенно HFT в 2010 году, при этом рост только за 2009 год составил 70%[3].

HFT трейдеры используют несколько вариантов стратегий, как например — стратегия по обеспечению ликвидности, стратегия статистического арбитража и стратегия по поиску ликвидности [2]. В стратегии по обеспечению ликвидности, высокочастотники пытаются заработать на спреде спроса-предложения(bid-ask), который отражает разницу, по которой продавцы готовы продать, а покупатели купить. Высокая волатильность и широкий bid-ask спред могут обернуться прибылью для HFT трейдера, и в то же время он становится поставщиком ликвидности и сужает bid-ask спред, как бы исполняя роль маркетмейкера. Ликвидность и маленький ask-bid спред являются важными вещами, поскольку они снижают торговые издержки и позволяют точнее определить стоимость актива[4]. Трейдеры, которые используют арбитражные стратегии, используют корреляцию между ценами производных инструментов и их базовых активов[5]. Стратегии по поиску ликвидности исследуют рынок в поисках крупных заявок, путем посылки небольших приказов, которые помогают обнаружить большие скрытые заявки. Все стратегии объединяет одно, для работы им требуются бескомпромиссно низкие временные задержки, поскольку только самые быстрые HFT компании в состоянии воспользоваться возникающими на рынке возможностями.

Электронная торговля акциями происходит путем посылки запросов в электронной форме на биржу. Заявки на покупку и продажу затем сопоставляются на бирже, и осуществляется сделка. Выставляемые заявки видны всем участникам торгов через так называемые фиды. Фид – это сжатый или несжатый поток данных, поставляемый в реальном времени некой независимой организацией, как например Options Price Reporting Authority (OPRA). Фид содержит финансовую информацию по акциям и передается с помощью мультикаста участникам рынка через стандартизированные протоколы, в основном через Ethernet посредством UDP. Стандартным протоколом поставки рыночных данных является Financial Information Exchange (FIX) Adapted for Streaming (FAST), который используется на большинстве бирж[18].

Для того чтобы добиться минимального времени задержки, HFT движок должен быть оптимизирован на всех уровнях. Для уменьшения времени задержки при передачи по сети используется collocation, когда HFT сервер устанавливается рядом со шлюзом биржи. Фид с данными должен распространятся с минимальными задержками до серверов HFT. Эффективная обработка UDP и FAST пакетов также является необходимой. И наконец, решение о создании заявки и ее передача должны осуществляется с наименьшими возможными задержками. Для достижения этих целей был разработан новый HFT движок, реализованный на плате FPGA. Благодаря использованию FPGA, появилась возможность снять нагрузку по обработке UDP и FAST с центрального процессора и перенести ее на специально оптимизированные блоки платы. В представленной системе, на аппаратном уровне реализован весь цикл обработки, за исключением принятий торговых решений, включая крайне гибкий движок с поддержкой микрокода для обработки FAST сообщений. Подход дает значительное снижение задержек более чем на 70% по сравнению с софтверными решениями и в то же время позволяет гораздо проще изменять или добавлять обработку новых протоколов, чем интегральные схемы специального назначения(Application-specific integrated circuit).

История вопроса

Текущий раздел рассказывает о базовых концепциях и реализации биржевой инфраструктуры. В дополнение, будет рассказано о базовых свойствах протокола FAST, чтобы определить требования к аппаратной реализации.

Инфраструктура для трейдинга

Типичная инфраструктура для трейдинга состоит из нескольких компонентов, контролируемых различными участниками. Это – биржа, поставщик фида и участники рынка, как показано на Figure 1. Движок для сопоставления заявок (матчинга), маршрутизатор дата-центра, и шлюз контролируются биржей. Механизм для фидов предоставляет другая организация. Маршрутизатор для доступа участников рынка – это собственность этих участников, в данном случае HFT фирм.

hft что это такое

Стек протоколов

Для осуществления электронной торговли приходится задействовать несколько уровней сетевого стека. Иллюстрация этих слоев отображена на Figure 2.

hft что это такое

Основы FAST протокола

FAST протокол используется поставщиком фидов для передачи финансовой информации участникам рынка. Для снижения нагрузки, несколько сообщений FAST могут быть объединены в одном UDP пакете. Эти сообщения не используют фрейминг и не содержат в себе информацию о размере сообщения. Вместо этого, каждый тип сообщения описывается в шаблоне, который должен быть известен, чтобы правильно обработать поток данных. Большинство поставщиков фидов объявляют свою собственную реализацию протокола, путем поставки собственных независимых спецификаций для шаблонов. Обработка должна проводиться с должным вниманием, так как ошибка в одном сообщении приведет к тому, что будет потерян весь UDP пакет. Шаблоны описывают набор полей, последовательностей и групп. Группы это – набор полей, где каждое поле может содержаться только по одному разу, а последовательности могут содержать наборы повторяющихся полей.

hft что это такое

Каждое сообщение начинается с presence map (PMAP) и идентификатора шаблона (TID) как показано на Figure 3. PMAP является маской, и указывает какие именно из объявленных полей, групп и последовательностей содержатся в текущем потоке. Поля могут быть как обязательными, так и необязательными, а также могут содержать связанный с ними оператор. Причем это факт зависит от атрибута presence, а также и от битового флага в PMAP, если к полю привязан оператор. Это добавляет дополнительную сложность, так как заранее неизвестно, потребуется ли обработка PMAP или нет.

TID используется для идентификации шаблона, который потребуется для обработки сообщения. Шаблоны описываются в XML, например,

В этом примере TID равен 1, а шаблон состоит из двух полей и одной группы. Тип поля может быть строкой, целым числом, дробным числом, 32 или 64 битным, а также типом decimal, где 32 бита будет выделено на показатель степени и 64 бита на мантиссу.

Для снижения нагрузки на сеть передаются только те байты, которые содержат явные значения. Например, только один байт будет передан для 64-битного целого числа со значением ‘1’, несмотря на то, что в памяти это число занимает 64 бита.

Только первые семь бит из каждого переданного байта используются для записи полезных данных, восьмой же бит используется как стоп-бит и служит для разделения полей. Стоп-бит должен быть удален, а оставшиеся 7 бит должны быть объединены, если поле состоит более чем из одного байта.

Допустим, был получен следующий бинарный поток:

10000111 00101010 10111111

На основании подчеркнутых стоп-битов, следует, что эти три байта содержат два поля. Чтобы получить значение первого поля следует заменить восьмой бит значением 0. Результатом будет:

Бинарное значение: 00111111
Шестнадцатеричное значение: 0x63

Второе поле состоит из 2 байт. Чтобы получить настоящее значение, требуется в каждом байте заменить восьмой бит на 0 и совместить оставшиеся части. Результатом будет:

Бинарное значение: 00000011 10101010
Шестнадцатеричное значение: 0x03 0xAA

На самом деле все еще более сложно, так например, поля должны быть обработаны по-разному, в зависимости от их атрибута presence. Необязательное целое число должно уменьшаться на единицу, а обязательное нет.

Операторы предписывают выполнение какого-либо действия c полем, после того как оно было получено, или если поле вовсе не представлено в потоке. Доступные операторы constant, copy, default, delta и increment. Например, constant, говорит о том, что поле всегда содержит одинаковое значение, и, следовательно, никогда не передается в фиде.

Спецификация FAST также предусматривает объявление массива байт, в котором не используются стоп-биты, а все восемь бит в байте используются для передачи полезных данных. Данный массив в свою очередь содержит поле, в котором задается общее количество байт. Это часть спецификации не была реализована в связи с высокой сложностью, и с тем фактом, что она не используется на целевой бирже, в данном случае во Франкфурте.

Похожие работы

В последнее время появилось много литературы по теме, но все-таки большая часть работы выполняется внутри организаций и не публикуется. Очень хороший обзор по оптимизации HFT дан в [6]. Более того, предоставлена система для оптимизации обработки ORPA FAST фида с использованием устройства Myrinet MX. Многопоточный «faster FAST» движок, для использования на многоядерных системах представлен в [7]. Несмотря на то, что обе системы сфокусированы на оптимизации обработки FAST, подход из данной статьи является первым, который использует FPGA. Morris [8] описывает HFT систему, которая использует FPGA для оптимизации обработки UDP/IP, похожую на [9]. Другие связанные темы, это использование FPGA для техник алгоритмической торговли основанной на методе Монте Карло[10], [11], [12]. Sadoghi [13] использует основанные на FPGA технологии для эффективной обработки событий в алгоритмической торговле. Mittal представляет программный FAST декодер, который исполняется на PowerPC 405, который встроен в несколько плат FPGA [13]. И последнее, Tandon опубликовал работу «A Programmable Architecture for Real-time Derivative Trading» [14].

Реализация

Предлагается три различных подхода для уменьшения времени задержек в HFT приложениях. Первый – это оптимизация UDP, второе – аппаратная реализация обработки сообщений FAST, и третье – задействование параллельных аппаратных структур для одновременной обработки нескольких потоков.

Оптимизация UDP

В обычных системах UDP данные приходят на сетевую карту(NIC) в виде необработанных пакетов ETH. Затем NIC передает пакеты в ядро ОС, которое производит проверку контрольной суммы и обрабатывает пакет. Поток выполнения для этого процесса показан на Figure 4. Данный подход показывает высокие временные задержки, вследствие того что используются прерывания для информирования ОС о поступивших пакетах, а также из-за внедрения еще одного дополнительного уровня, который служит для передачи данных в пользовательское пространство – сокетов. Более того, ядро ОС может быть занято другими активностями, что тоже неблагоприятно влияет на времена обработки. Детальный список различных временных задержек, которые появляются в процессе обработки TCP/IP можно найти в [15]. В случае UDP ситуация очень схожа, поскольку разница с TCP начинает появляться только на более высоких уровнях.

hft что это такое

Первым и наиболее эффективным подходом для уменьшения задержки будет обход ядра ОС и обработка поступающих пакетов в аппаратной части, как это показано в Figure 5. Следовательно, потребуется поддержка Address Resolution Protocol (ARP), чтобы корректно получать и отправлять пакеты. ARP используется для сопоставления IP адресов с физическими MAC адресами участников.

Для получения мультикаста также потребуется поддержка Internet Group Management Protocol (IGMP), который требуется для подключения и отключения мультикаст групп. Другие протоколы, которые потребуют реализации это ETH, IP и UDP. Все эти протоколы эффективно реализованы, с фокусом на минимально возможные задержки для ETH, IP и UDP. Реализация IGMP и ARP протоколов не является критичной к скорости, поскольку при трейдинге они не участвуют в непосредственной передаче данных. Все контрольные суммы заголовков различных протоколов и ETH CRC вычисляются параллельно, в то время как проверка этих контрольных сумм производится на самом последнем этапе.

hft что это такое

Проверенный пакет далее передается на FAST обработчик или на движок DMA, который способен записать необработанные данные в адресное пространство торгового ПО. Пример, когда обработка FAST производится на FPGA, и затем через DMA движок передается в пользовательское приложение, показан на Figure 6.

hft что это такое

Аппаратная обработка FAST

Из-за высокой сложности FAST декодер разбит на три независимые части. Как показано на Figure 7, все три части развязаны через FIFO буферы, чтобы компенсировать различную и иногда непредвиденную задержу в каждом из модулей. Поскольку декомпрессия повышает объемы данных для обработки, то FAST процессор может работать на более высокой частоте, чем ядро ETH, что позволит повысить пропускную способность и компенсировать высокий объем данных.

hft что это такое

Данный движок при загрузке устройства запускает программу, которая находится на FPGA, с отдельной процедурой на каждый шаблон. Таблица переходов содержит указатели на нужную процедуру, в зависимости от ID шаблона, этот ID указывается вначале каждого FAST сообщения. Все поля FAST сообщения обрабатываются соответствующей подпрограммой. В зависимости от подпрограммы, содержание поля либо отбрасывается, либо передается на обработку следующему модулю. Бинарный код для движка микрокода реализован в виде языка ассемблера, с помощью простого предметно-ориентированного языка (DSL), который был специально разработан для данных целей. Ассемблерный код для шаблона, который был представлен в примере выше, будет выглядеть следующим образом:

hft что это такое

Как можно увидеть, предложенный предметно-ориентированный язык содержит четыре колонки. Две левые колонки описывают данные, которые должны быть обработаны на указанном шаге. Две правые – указывают на команду, которая должна быть исполнена движком микрокода. В частности, первая колонка описывает поле с его атрибутом наличия, вторая сопоставляет поле с уникальным идентификатором, который в дальнейшем может быть обработан программным обеспечением. Третья колонка объявляет конкретную команду управления, которая может увеличивать текущий указатель, перепрыгивать команды, выбирать данные из FIFO буфера или проверять PMAP. Последняя колонка используется для указания цели перехода.

Использование языка ассемблера совместно с движком микрокода упрощает адаптацию FPGA при изменении шаблонов, или даже при переходе на другую биржевую площадку, при этом не потребуется пересматривать архитектуру. Это значительно облегчает работу с FPGA при любых изменениях протокола.

Данная реализация позволяет получить минимально возможный уровень временных задержек при использовании постоянного опроса буфера (поллинга). Поллинг показывает гораздо меньшие времена задержек, чем прерывания. Основная причина высоких задержек при использовании прерываний лежит в том, что приходится переключать контекст исполнения. Однако же выбранный подход приводит к повышенной нагрузке на CPU и повышенному энергопотреблению, но низкие времена задержки перевешивают эти недостатки.

Параллелизм

FAST протокол строго последовательный, поскольку начало каждого поля в потоке зависит от предыдущего поля. Даже после того как FAST декодер выровняет данные, все равно будет невозможно обрабатывать поток параллельно. Это ограничения протокола.

К счастью, биржи поставляют данные сразу в несколько фидов. Поэтому можно увеличить пропускную способность и снизить задержки путем параллельной обработки фидов FAST процессором. Каждый FAST процессор работает с отдельным FAST потоком. Пропускная способность может быть значительно увеличена благодаря данному подходу. Каждый FAST процессор использует схему из 5620 таблиц поиска.

hft что это такое

Интерфейс взаимодействия с компьютером

Для дальнейшего снижения задержек, когда счет идет на наносекунды, используется интерфейс HyperTransport, предлагаемый компанией AMD для Opetron процессоров. Данная технология позволяет достичь гораздо меньших задержек, чем PCI Express, благодаря тому, что FPGA напрямую подключается к центральному процессору в обход различных промежуточных шин[16]. Данная технология использует HTX слот в системах AMD Opetron.

Конечная архитектура

Устройство было реализовано с помощью синтезируемых конструкций verilog RTL кода и протестировано на FPGA карте основанной на Xilinx Virtex-4 FX100.

Figure 8 схематично иллюстрирует архитектуру HFT устройства. Крайний слева – это HT-ядро, работающее на частоте 200МГц. Далее идет HTAX, соединяющий FAST процессоры, UDP и RegisterFile с HT-ядром. Эта часть работает на максимальной частоте в 160МГц. В правой части, красным цветом показана инфраструктура для обработки сетевых пакетов, соединенная с Gigabit Ethernet MAC, которая работает на частоте 125МГц. Вся архитектура, включая 4 FAST процессора, используют 77 слайсов(slices).

Выполнение

Для выполнения измерений, записанные данные, поставляемые поставщиком фидов, были отправлены на стандартную сетевую карту сервера, расположенному первым, чтобы определить исходную точку для последующих расчетов. Figure 9 показывает поток сообщений в подобной системе. Измеренная задержка для NIC части 9 мкс, для пространства ядра 1.8 мкс и для пользовательского пространства 2 мкс. Общая величина задержки равна 12.8 мкс.

hft что это такое

hft что это такое

Во втором эксперименте включили FAST процессор, что позволило обрабатывать сообщения в аппаратном устройстве и затем передавать результат в адресное пространство ПО, этот процесс показан на Figure 11. Измеренная величина задержки, когда и сетевой стек и FAST обработка вынесены на FPGA, получилась на 28 процентов меньше, и равняется всего 2.6 мкс. В результате, достигнуто уменьшение задержки в 4 раза, по сравнению со стандартным решением.

hft что это такое

Заключение

Была показана реализация устройства, направленного на оптимизацию HFT, которое способно значительно уменьшить количество времени, требуемого на получение и обработку торговой информации, основанной на FAST. В частности, задержки были снижены в четыре раза, что позволило существенно снизить время раунд-трипа для осуществления сделок.

Особая природа FAST протокола, не позволяющая производить его эффективную обработку на стандартных CPU, делает его весьма привлекательным для реализации на FPGA, со значительным уменьшением временных задержек. Успешная реализация такого подхода и была показана в этой статье.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *