Что такое HFT-фонд и как его запустить?

Логотип компании
Что такое HFT-фонд и как его запустить?
HFT (high-frequency trading) – инструмент алгоритмической торговли на бирже, который основан на использовании компьютерных программ для выполнения торговых операций с высокой скоростью.

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

HFT-фонды

HFT (high-frequency trading) – инструмент алгоритмической торговли на бирже, который основан на использовании компьютерных программ для выполнения торговых операций с высокой скоростью. Фирмы, занимающиеся HFT, используют алгоритмы для анализа рыночных данных и совершения торговых операций за долю секунды.

Крупным банкам и хедж-фондам этот инструмент зачастую не интересен, на рынке представлено много небольших команд ИТ-специалистов и математиков. Wunder Fund — одна из таких команд, мы — технологичный ИТ-проект в финансовой сфере. Сотрудники компании занимаются разработкой биржевых роботов — программ, которые анализируют биржевые данные и совершают сделки без участия человека. Мы не продаем свои разработки и не привлекаем инвестиции. Роботы торгуют на биржах и приносят прибыль сотрудникам. Работаем с биржами Европы, Азии и Америки.

Как начать

Идея проекта пришла моим товарищам-сооснователям — Александру Власюку и Эмилю Лернеру — во время стажировки в 2013 году в компании, которая занималась высокочастотной торговлей.   Взяв свой опыт стажировки за основу, они решили создать собственный продукт. Я присоединился к команде в начальной фазе разработки, которая была запущена в том же году в комнате студенческого общежития.

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

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

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

За 8 лет существования Wunder Fund мы выросли до 18 штатных специалистов, вышли на биржи 9 стран. Сейчас наш ежедневный оборот составляет $4 млрд, он складывается из множества сделок, в которых мы покупаем, продаем, фиксируем прибыль и сразу же направляем ее в дальнейшую работу. В торговле участвует небольшая часть нашего капитала, остальные средства используются для инвестиций в различные проекты. В ближайшем году мы планируем расширить штат, выйти на новые рынки и ускорить работу нашей инфраструктуры.

Что нужно для старта

Для запуска HFT-проекта необходимо обеспечить наличие следующих элементов:

  • Торговая стратегия или алгоритм, который будет использоваться для автоматизированной торговли.

  • Биржевое подключение, которое позволит взаимодействовать с биржей и получать необходимые данные.

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

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

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

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

Чтобы узнать живучесть этой стратегии, как раз и используется бэкстест. Для проверки ресёчер программирует эту логику и запускает стратегию на симуляторе. Симулятор момент за моментом проигрывает всё, что происходило на бирже, и в каждый момент спрашивает: «Что сейчас хочет сделать твоя стратегия?». Если стратегия хочет что-то купить или продать, то бэктест подмешивает куда и когда надо ордера нашей стратегии. В конце симуляции бэктест сообщает ресёрчеру результат, который получился бы, если стратегия действительно была бы запущена в выбранном промежутке времени.

У высокочастотной торговли, как и у любой отрасли, есть своя специфика. Например, в биржах есть ограниченная емкость неэффективных сделок, на которых мы зарабатываем. Неэффективные сделки появляются, когда кто-то выставляет не рыночную стоимость покупки или продажи определенного объема финансовых инструментов, допустим, миллион за день. То есть каждая такая «ошибка» имеет ограниченный объем: мы не можем на ней заработать больше, чем продается в текущий момент. Благодаря этому можно разработать стратегию, которая удвоит 1 млн рублей за определенный период. Но нельзя вложить в эту же стратегию 100 млн и ожидать, что будет 200. На выходе получатся все те же 2 млн выручки. И ежедневно на бирже проходит около 10 000 таких сделок, но каждая из них обладает заранее заданным ограничением по объему.

Найти специалиста

Из-за особенностей HFT-бизнеса таким компаниям не всегда подходят сотрудники даже с высоким уровнем квалификации в своем направлении. Это связано с тем, что в соискателе очень важно умение применить творческий подход к решению задачи и задействовать логику. Объясню на примере. Спустя год после начала работы мы решили расширять штат. Изначально искали С++разработчика уровня senior. На нашу позицию пришло большое количество подходящих кандидатов. Однако они не могли справиться с простейшими логическими задачами: например, как с помощью нечестной монетки получить событие с вероятностью 1/2. В итоге первым нашим нанятым разработчиком стал сханченный специалист из «Яндекса». Впоследствии он внес большой вклад в развитие фонда.

Помимо расширения штата разработчиков важно и масштабирование отдела исследований. Их работа заключается в анализе данных, построении моделей машинного обучения, генерации идей и их проверке на симуляторе. Они должны тестировать гипотезы снова и снова до тех пор, пока не найдут идею, которая окупит все вложенные старания. Оказалось, что исследователям нужен особый склад ума, выдержка, готовность погружаться в мелкие технические детали, а также интуиция, ну и определенная доля удачи. Работа ресёчера похожа на научное исследование, когда 99 попыток из 100 неудачны.

Например, таких специалистов мы искали не только из числа айтишников. Это могли быть студенты-олимпиадники, физики, математики. Основной скилл — придумывать нестандартные решения. Мы пробовали разные подходы для отбора подходящих кандидатов, проводили стажировки и постоянно модернирнизировали тестовые задания. В итоге пришли к трем вариантам отбора:

Первым заданием было разработать бота, используя машинное обучение с подкреплением, для популярной на тот момент игры Flappy bird. Бот должен был самостоятельно обучаться, получая сигналы, после каждого верного действия. Если перекладывать на реальные примеры, это как дрессировать животное: за верное действие оно получает лакомство, за неверное — нет. На выходе у стажирующегося должен был получиться бот с заданным механизмом, который будет определять расстояние до игровых препятствий и предлагать варианты действий. По итогу работы программа должна проходить игру самостоятельно.

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

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

Новое время

Потрясения этого года не сказались напрямую на нашем бизнесе: основные фокусы на 2022 остались прежними — рост числа сотрудников и бирж, с которыми работаем.

Но, так или иначе, сложности у HFT-команд из России появились. Например, мы не могли оплатить с российского счета серверы и сервисы для работы с данными, которые у нас базируются на Google и Amazon. Пришлось открыть ряд юридических лиц в разных странах, а для этого необходим счет в иностранном банке, который россиянам открывают неохотно. Мы связывались с 15 банками Европы и США, это был долгий и сложный процесс, но в итоге удалось открыть счет в Штатах.

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

Опубликовано 22.12.2022

Похожие статьи