Author

Topic: Крипто-HFT (Read 110 times)

newbie
Activity: 3
Merit: 0
February 06, 2020, 05:15:29 AM
#1
Статья 28 ноября 2018
Прошло 9 месяцев, как в полном бою тестируются высокочастотные стратегии, на сколько они могут быть высокочастотными на существующих популярных биржах крипты. Девять месяцев хороший срок все лучшее происходит на таких сроках, чтобы что-то уже сказать по этому поводу. Исходные данные снимались с, примерно, двух десятков счетов, почти все они не зависимые друг от друга и управляются трейдерами и фондами совершенно разных подходов к торговле. Общее одно, почти все — арбитражеры (одноногие, парные, баскет, календарные и все какие только можно). Но группа делится на склонных рисковать и наоборот, задалбливать биржу большим количеством заявок и наоборот, мейкеры и тейкеры и т.д. Такая разношерстность группы позволяет исключить специфику подхода отдельно взятого трейдера к торговле и сделать объективный срез по roundtrip на разных биржах:
В обзор попали пять бирж (в скобках количество транзакций за эти 9 месяцев):

Bitmex (ФЬЮЧИ) (54,8 млн)
Bitfinex (СПОТ) (6,8 млн)
Cryptofacilities (ФЬЮЧИ) (1,1 млн)
Deribit (ФЬЮЧИ) (3,9 млн)
Hitbtc (СПОТ) (21,7 млн)

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

Ниже график всех наших выставлений в микросекундах

https://drive.google.com/file/d/1hmmlveDprkA1yfXjGKppz7fatAIkVoKH/view?usp=sharing

(куда-то пропала подпись к hitbtc, синяя линяя это hitbtc)

Из очевидного, что бросается в глаза bitmex — худший из нашей выборки. Во многом это правда, но с некоторыми замечаниями. При построении графиков я фильтровал базу от экстремумов и база заявок bitmex как раз таки нуждалась в наименьшей зачистике а такие площадки как deribit имели их очень большое количество (deribit на всем отрезке рассматриваемого периода имел их сотни, на других площадках поменьше) при очень хорошем раундтрипе (avg.31 млсек). Экстремумы появлялись когда мы выставили заявку, а биржа нам не ответила об этом ничего или ответила очень поздно или ответила двумя противоречивыми сообщениями на одну и туже заявку (типа «ваша заявка снята» а в следующую секунду прилетает «ваша заявка исполнена»). У bitmex таких проблем было единицы, на этой площадке если твоя заявка пролезла в ядро, то скорее всего она выставиться и алгоритмически это можно будет нормально обработать. С bitmex другая известная проблема — очень много желающих пролезть в узкий шлюз их ядра и биржа часто просто отвергает попытку выставить, о чем нормально сообщает вашему роботу.
Но на первое место по совокупности наименьших проблем с скоростью доставки заявок к ядру и по нормальности алгоритмической обработки транзакций я бы поставил Cryptofacilities (avg 14 млсек). За все время торгов было очень мало ошибок в выставлении и обработки заявок ботом.

Средняя скорость выставления заявки:
Bitmex — 898 млсек.
Bitfinex — 138 млсек.
Cryptofacilities — 14 млсек.
Deribit — 31 млсек.
Hitbtc - 168 млсек.

Отдельно про deribit и  bitmex
Bitmex портит свою статистику редкими ( от пяти до двух процентов всех заявок) долгими выставлениями (более двух секунд) и если их исключить, то средняя становится около 400-500 млсек, что уже не так плохо на фоне остальных.
Deribit выглядит лучше многих по скорости, но, как упоминал выше, очень не стабильно обрабатывает заявки ( >3% от общего числа заявок «теряются»). При такой «стабильности» на deribit будет тяжело ложиться спать ночью с пониманием, что какая-то заявка пройдет у нас а мы об этом ничего не узнаем)) т.е. эту биржу можно рекомендовать тем, кто он-лайн находится за монитором постоянно.
По остальным биржам распределение более менее около своей средней.

Ниже график без битмекса, что-бы можно было разглядеть остальные биржи

https://drive.google.com/file/d/1I4tOZxI_EsRhfkmmC2oXReffk1OGmJBC/view?usp=sharing

Видно, что каждый в своем среднем коридоре.

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

https://drive.google.com/file/d/1y1hXOsD-zb_g_WaUJLheBZJbmcbUWES4/view?usp=sharing

Bitmex — 1441 млсек.
Bitfinex — 188 млсек.
Cryptofacilities — 87 млсек.
Deribit — 59 млсек.
Hitbtc - 184 млсек.

У битмекс такие же проблемы, как и в случае adds, т.е. очень много долгих сниманий, когда по несколько секунд приходилось ждать пока придет подтверждение о снятии (но, всегда приходит).
Сильно поменялась картинка у Cryptofacilities. Средняя стала сильно хуже, кроме того появился сильный разброс.
По плохим dell-ам можно судить о пригодности маркетить эти площадки. Понятно, что если вы не можете быстро одернуть свою заявку, то увеличивается риск что вам нальют по плохой цене.
Обзор касался только о пригодности этих площадок к алготрейдингу, и хоть как-то там пытаться автоматизировать процесс торговли. Многое из того, к чему привыкли hft-шники традиционных бирж, там конечно не реализовать с такими цифрами, как мы получили ( к примеру, на московской бирже эти значения по раундтрипам у нас в сотни раз меньше, другими словами, если бы мы с такими скоростями, как например на hitbtc работали на московской бирже, то пока мы пытались бы снять свою заявку нам успели бы налить 184 раза).  Ну и на многие стратегии это накладывает ограничения, приходится в торговый риск больше закладывать не рыночного поведения биржи (не прилетел ответ по твоей заявке, не смог вообще выставиться и т.д) Но в целом, фильтруя эти биржи на предмет пригодности (эти пять бирж прошли этот фильтр) и строя свою стратегию с расчетом, что какая-то часть твоих поз может оказаться без хеджа или что-то еще (именно заложить это в стратегию и просчитать последствия) можно работать и зарабатывать и спокойно ложиться спать не ожидая сюрпризов на своем счету утром )).
Как-то так...
Jump to: