В этой статье мы рассмотрим разработку и реализацию торговых алгоритмов криптовалют. В частности, мы уделяем особое внимание алгоритмам исполнения, алгоритмам маркет-мейкеров и ряду аспектов микроструктуры рынка. Мы также рассмотрим, где практика расходится с теорией, особенно при рассмотрении особенностей рынков криптовалют.
Целью алгоритма исполнения является преобразование состояния портфеля в другое состояние с минимизацией затрат на это. Например, если вы хотите увеличить свою позицию по BTCUSD на 1000, вы, вероятно, не захотите немедленно размещать рыночный ордер в торговом канале BitMEX, вызывая значительное проскальзывание. Вместо этого вы можете рассмотреть возможность постепенного формирования желаемой позиции посредством комбинации рыночных и лимитных ордеров на нескольких различных биржах.
Обычно существует 3 уровня алгоритмов исполнения: макротрейдер, микротрейдер и интеллектуальный маршрутизатор.
Уровень макротрейдера разбивает большой первоначальный ордер или родительский ордер на более мелкие подордера с течением времени. На самом деле это часть планирования всего алгоритма. VWAP, TWAP и POV — это распространенные простые примеры алгоритмов макротрейдеров. Как правило, существует множество различных моделей воздействия на рынок, которые можно использовать для проектирования сложного уровня макротрейдера. Модели влияния на рынок предназначены для изучения реакции рынка на исполнение. Останется ли рынок прежним после казни? Или пойти дальше? Или все вернется в какой-то степени? Две наиболее основополагающие модели воздействия на рынок — это модель постоянного воздействия на рынок Альмгрена-Крисса (1999, 2000) и модель временного воздействия на рынок Обижаевой-Ванг (2013). Исходя из этого, на практике рыночные эффекты не являются постоянными, поэтому модель Обижаевой-Ванга представляется более реалистичной, и с тех пор было разработано много новых моделей, устраняющих ее недостатки.
Дополнительная информация: Влияние рынка начинает ослабевать после алгоритмической торговли https://arxiv.org/pdf/1412.2152.pdf
Уровень микротрейдера решает для каждого дочернего ордера, исполнять ли его как рыночный ордер или лимитный ордер, и если как лимитный ордер, то по какой цене. Литературы по проектированию микротрейдеров мало, поскольку размер субордера обычно составляет небольшую часть всего рынка, поэтому способ его исполнения не имеет значения. Однако рынок криптовалют отличается тем, что ликвидность на нем очень мала, а проскальзывание на практике весьма заметно даже для подзаказов обычного размера. Проекты микротрейдеров часто фокусируются на времени и глубине, положении в очереди и других характеристиках микроструктуры рынка. Рыночные ордера (которые, если не учитывать задержку, являются тем же самым, что и лимитные ордера) гарантированно исполняются, тогда как лимитные ордера такой гарантии не имеют. Если исполнение не гарантировано, вы можете не выполнить торговый план, который вы разработали вместе с вашим макротрейдером.
Уровень интеллектуального маршрутизатора решает, как направлять заказы на различные биржи. Например, если Kraken имеет 60% ликвидности, а GDAX (Coinbase ProPrime) имеет 40% ликвидности на определенном уровне цен, то микротрейдер должен импортировать ордера на биржи Kraken и GDAX в соотношении 60% и 40% соответственно. . Место.
Теперь можно сказать, что арбитражеры и маркет-мейкеры на рынке перемещают ликвидность с одной биржи на другую, поэтому, если вы выполните половину своих ордеров на Kraken и подождете несколько секунд, часть ликвидности перейдет от арбитражеров к арбитражерам. статистические арбитражеры к ликвидности GDAX на Kraken, и вы можете делать все остальное по схожим ценам. Однако даже в этом случае арбитры будут взимать с вас премию за свою прибыль и перекладывать свои собственные расходы на хеджирование на комиссию Kraken за маркет-мейкинг. Кроме того, некоторые участники рынка размещают заказы в больших объемах, чем они хотели бы разместить на нескольких биржах, и отменяют избыточные суммы после срабатывания стоп-лосса.
В конечном итоге лучше иметь собственный локальный интеллектуальный маршрутизатор. Этот локальный интеллектуальный маршрутизатор также имеет преимущество в задержке по сравнению со сторонними службами интеллектуальных маршрутизаторов. В первом случае вы можете напрямую направить заявку на биржу, а во втором случае вам сначала нужно отправить сообщение сторонней службе маршрутизатора, которая затем отправит ваш заказ на биржу (кроме того, вам необходимо отправить Третья сторона оплачивает комиссию за маршрутизатор). Сумма любых двух катетов треугольника больше третьего катета.
Маркет-мейкинг подразумевает предоставление немедленной ликвидности другим участникам рынка и получение за это компенсации. Вы принимаете на себя риск потери запасов в обмен на положительную ожидаемую стоимость. В конечном итоге маркет-мейкеры получают компенсацию по двум причинам. Во-первых, маркет-тейкеры имеют высокие временные предпочтения и нуждаются в немедленности. Взамен маркет-мейкеры, обеспечивающие ликвидность, могут компенсировать свои более низкие временные предпочтения и терпение. Во-вторых, прибыль маркет-мейкеров PnL имеет левостороннее направление, а большинство трейдеров, как правило, отдают предпочтение правостороннему направлению. Другими словами, маркет-мейкеры аналогичны букмекерам на рынках ставок, казино, страховых компаниях и национальных лотереях. Они часто выигрывают понемногу и редко проигрывают по-крупному. В качестве вознаграждения за эту неожиданную прибыль маркет-мейкеры получают компенсацию в виде ожидаемой стоимости.
Дальнейшее чтение: Перекос https://en.wikipedia.org/wiki/Skewness
С точки зрения высокого уровня лимитные ордера представляют собой свободные опции на других рынках. Остальной рынок имеет право, но не обязанность, купить или продать актив по предельной цене лимитного ордера. На рынке, где информация полностью известна, никто не будет продавать бесплатные опционы. Это связано с тем, что рынок в целом не является тем местом, где информация полностью известна, и продажа бесплатных опций никогда не имеет смысла. С другой стороны, если рыночная информация совершенно неизвестна, то нейтральные к риску маркет-мейкеры готовы продавать эти бесплатные опционы лимитных ордеров по чрезвычайно маленьким спредам, поскольку вся торговля — это шум. Очевидно, что реальные участники рынка представляют собой неоднородную группу, каждый из которых обладает уникальным объемом известной и неизвестной информации.
При разработке алгоритма маркет-мейкера следует учитывать три точки зрения: маркет-мейкера, участников рынка и других маркет-мейкеров.
Мнения участников рынка отражаются в их запасах. Если у вас уже слишком много активов, то вы можете предложить более низкую цену, и наоборот. Вы делаете это по двум разным причинам. Во-первых, как корпорация вы в определенной степени не склонны к риску (вероятно, в меньшей степени, чем отдельный человек, но ваша кривая полезности денег все равно вогнута).
Существует множество структур для формы этой функции полезности (например, CARA, CRRA, HARA и т. д.). Во-вторых, будучи пассивным поставщиком ликвидности на рынке, вы столкнетесь с риском неблагоприятного выбора. Получатели положительной ликвидности могут знать что-то, чего не знаете вы, или просто быть умнее вас. По сути, это вопрос продажи бесплатных опций на рынке.
Более того, даже на механическом уровне рыночный приказ, который двигает цену, снижает цену на основе текущей рыночной стоимости, в то время как рыночный приказ, который двигает цену выше, двигает цену до текущей рыночной стоимости. В любой сделке в определенный момент вы всегда оказываетесь не на той стороне. Кроме того, котировки маркет-мейкеров будут оказывать пассивное влияние на рынок. Другими словами, отправка ордера в неисполненную книгу ордеров, по крайней мере, отдаляет рынок от вас.
Дальнейшее чтение: Функция избегания риска https://en.wikipedia.org/wiki/Risk_aversion
Точка зрения маркет-тейкера представлена потоком ордеров. Взвешенная по объему частота поступления заказов как функция глубины должна иметь некоторые ключевые свойства.
Функция должна быть:
Помимо этого, существует неизвестный фактор того, какой должна быть «справедливая средняя цена». При отправке и отмене глубоких ордеров средняя цена между лучшим спросом и лучшим спросом подвержена влиянию шумовых цен.
Более того, если учесть два случая с идентичными формами книги заказов, лучшая заявка из последней книги заказов будет указывать на справедливую цену, которая ниже лучшего предложения из первой книги заказов. Другой вопрос: важна ли история книги заказов, и если да, то следует ли нам сосредоточиться на соотношении цены и времени или объема и времени? Так где же следует разместить оптимальный лимитный ордер маркет-мейкера, учитывая характеристики ликвидности рынка? Если вы сузите глубину в верхней части книги ордеров, ваши глубокие ордера будут многочисленными, но в то же время их будет мало. Если вы сузите глубину в нижней части книги ордеров, ваши ордера глубины будут редкими, но их будет много каждый раз.
На самом деле это задача выпуклой оптимизации с уникальным глобальным максимумом. Еще одно соображение заключается в том, что поток заказов поступает с течением времени и немного напоминает «процесс Пуассона» (https://zh.wikipedia.org/wiki/%E6%B3%8A%E6%9D%BE%E8%BF% 87%Е7%А8%8Б). Некоторые утверждают, что это ближе к «процессу Хоукса» (http://jheusser.github.io/2013/09/08/hawkes.html). Более того, скачки цен на покупку и продажу, которые пытаются поймать маркет-мейкеры, являются самыми короткими. временная версия возврата к среднему. Поскольку это сверхкраткосрочное возвращение к среднему значению масштабируется локальной волатильностью, маркет-мейкерам имеет смысл расширять свои котировки, когда цены высоки, и сужать их, когда объемы низкие.
Дополнительная информация: интенсивность поступления заказов в зависимости от глубины (https://arxiv.org/pdf/1204.0148.pdf)
Дальнейшее чтение: Процесс Хоукса (http://jheusser.github.io/2013/09/08/hawkes.html)
Мнения других участников рынка представлены в этой книге заявок. Книга заявок раскрывает некоторую информацию о других маркет-мейкерах. В верхней части книги заявок наблюдается больше заявок на покупку, чем на продажу, что говорит о том, что другие участники рынка более склонны продавать, чем покупать. У этих маркет-мейкеров уже могут быть большие, несбалансированные излишки запасов, или они просто могут полагать, что в краткосрочной перспективе цены, скорее всего, упадут, чем вырастут. В любом случае, как маркет-мейкер, вы можете корректировать свои котировки на основе отклонений в книге заявок.
Кроме того, когда маркет-мейкеры конкурируют друг с другом, вы часто будете наблюдать такое поведение, как «копеечные тики», если тики небольшие. Участники рынка конкурируют друг с другом за определение цены до тех пор, пока не будет достигнута точка капитуляции, и только один «победитель» получит преимущество. После определения победителя занявший второе место обычно возвращается к предыдущему ценовому тику до появления следующей лучшей цены спроса или предложения. Если вы потеряете приоритет предложения, вы сможете получить второй приоритет предложения. Это приводит к явлению регрессии, когда победитель отступает на одно ценовое движение вперед от занявшего второе место, и игра на той же лестнице с двумя восходителями начинается заново.
Дальнейшее чтение: http://parasec.net/transmission/order-book-visualisation/
Наконец, долгосрочные сигналы направления могут переопределять алгоритмы маркет-мейкинга, когда цель алгоритма маркет-мейкинга больше не заключается в том, чтобы поддерживать запасы на прежнем уровне или без изменений, а в том, чтобы учитывать некоторые долгосрочные цели и соответствующие отклонения для их достижения.
Скорость важна по двум основным причинам. Во-первых, вы можете заполнить ордера в книге ордеров до того, как они будут отменены. Во-вторых, вы можете отменить ордер в книге ордеров до его исполнения. Другими словами, вы хотите всегда иметь инициативу в выполнении и отмене заказов. Арбитражные алгоритмы (активные) и алгоритмы исполнения (активные) больше связаны с первым, тогда как алгоритмы создания рынка (пассивные) больше связаны со вторым.
В целом, в принципе, наибольшую выгоду от скорости получают стратегии с самой простой логикой. Любая сложная логика неизбежно замедлит время передачи данных. Эти сложные типы алгоритмических стратегий являются болидами Формулы-1 в мире трейдинга. Проверка данных, проверка безопасности, настройка оборудования, методы оркестровки и т. д. — все это можно исключить в пользу скорости. Пропустите OMS, EMS и PMS (система управления портфелем проектов) и напрямую подключите вычислительную логику на графическом процессоре к бинарному API-интерфейсу совмещенной биржи. Быстрая и опасная игра.
Другой тип стратегии, чувствительной к скорости, стратегия относительного статистического арбитража заключается в том, что сервер фактически располагается между несколькими биржами, а не сосуществует с одной биржей. Хотя они не будут самыми быстрыми с данными какой-либо одной биржи, они будут получать цены раньше любой другой стратегии и смогут действовать на основе коррелированных и коинтегрированных данных.
Дополнительная информация: Оптимальное расположение промежуточных торговых узлов для крупнейших фондовых бирж мира (https://www.alexwg.org/publications/PhysRevE_82-056104.pdf)
В игре на скорость победитель получает все. В самом простом примере, если существует возможность арбитража, то тот, кто сможет ею воспользоваться первым, получит прибыль. За второе место достаются крохи, за третье — ничего. Доходы, скорее всего, будут распределены по степенному закону. (О степенном законе: https://zh.wikipedia.org/wiki/%E5%86%AA%E5%AE%9A%E5%BE%8B)
Игра на скорость — это тоже соревнование. Как только все перейдут с оптоволоконных сетей на микроволновые или лазерные, все окажутся в равных условиях, а все первоначальные преимущества будут превращены в товар.
Большинство систем, сопоставляющих заказы, следуют подходу, в котором сначала учитывается цена, а затем время (пропорциональное сопоставление является менее распространенной альтернативой, но мы не будем его сейчас рассматривать). Лучшая цена будет исполнена до того, как будет исполнен лимитный ордер по худшей цене. Для лимитных ордеров по той же цене ордер, отправленный ранее, будет исполнен раньше ордера, отправленного позднее.
Binance разделяет ордера с точностью до 8 знаков после запятой. Если цена транзакции составляет .000001, то цена .00000001 составляет 1% от транзакции. Если цена транзакции составляет .0001, то цена .00000001 составляет 1 бит/с (то есть один переход). Это огромная разница. В первом случае пропуск крупного заказа стоит целый балл, поэтому приоритет по времени важнее, а во втором случае он обходится в 100 раз дешевле, поэтому приоритет по цене важнее.
Другими словами, если вам нужно заплатить полный 1%, чтобы получить приоритет, это может быть нецелесообразно, поскольку вы платите относительно большую сумму, увеличивая при этом вероятность того, что будет заполнена относительно небольшая сумма, и, вероятно, лучшим вариантом будет ждать в очереди, но если вам нужно заплатить только 1 б.п., чтобы получить приоритет в сделке, вы можете это сделать, поскольку вы снижаете предельные издержки на относительно небольшую величину, одновременно увеличивая вероятность того, что относительно большое количество сделок будет выполнено. Меньшие ценовые тики отдают предпочтение ценовому приоритету, большие ценовые тики отдают предпочтение временному приоритету.
Это естественным образом приводит к следующему вопросу: какова стоимость вашего места в очереди? (Расширенное чтение: https://moallemi.com/ciamac/papers/queue-value-2016.pdf)
Существует только два способа сократить количество сделок в книге ордеров: либо активно отменить ее, либо исполнить. Если снижение вызвано торговым процессом, то все остальные цены, кроме этой, также будут снижены из-за торгового процесса. Мы можем сортировать эти записи транзакций, упорядочивая их и отмечая, связано ли каждое сокращение с транзакцией или с отменой.
Интуитивно понятно, что сделка означает, что две стороны договариваются торговать по определенной цене, тогда как отмена сделки означает, что одна из сторон решает, что она больше не желает покупать или продавать по определенной цене. Таким образом, на первый взгляд, можно сказать, что отмена по лучшей цене заявки — это очень сильный сигнал о том, что рыночная цена в краткосрочной перспективе пойдет вниз, а затем последует близкая к ней цена сделки.
С другой стороны, цена в стакане ордеров начинает расти, что может иметь только одну возможность: увеличение количества оставшихся лимитных ордеров.
Как прирост, так и падение в книге заявок отражают частные намерения участников рынка, тем самым подавая сигналы о краткосрочных движениях цен.
В настоящее время большинство ценовых индексов берут торговые данные с нескольких бирж и объединяют их для получения средневзвешенной по объему цены. В частности, индекс Tradeblock также усилит механизм штрафных санкций за биржевые веса, поскольку биржевые веса тесно связаны с неактивными биржами и биржами, цены на которых отклоняются слишком сильно. Что еще мы можем улучшить?
На GDAX комиссия мейкера составляет 0 базисных пунктов, а комиссия тейкера — 30 базисных пунктов. Например, если цена транзакции отображается как \(4000/BTC, фактическая цена продажи составляет \)4000/BTC, а цена покупки — \(4012/BTC. . «Справедливая цена» этой транзакции должна быть ближе к \)4006/BTC, чем фактическая отображаемая цена. С другой стороны, поскольку комиссия Bittrex в размере 25 б.п. распространяется как на мейкеров, так и на тейкеров, фактической ценой является отображаемая цена. Другими словами, отображаемая цена \(4000/BTC на самом деле соответствует покупке покупателем по \)4010/BTC и продаже продавцом по $3990/BTC, при этом средняя цена и есть отображаемая цена.
Таким образом, с точки зрения ценообразования цены записей о транзакциях не подлежат прямому сравнению между биржами, но должны быть стандартизированы с учетом вышеизложенного при построении индекса цен. Конечно, есть некоторые сложные факторы, которые приводят к разным комиссиям в зависимости от объема торговли. Например, некоторые биржи устанавливают и взимают комиссии тейкера и мейкера в зависимости от размера объема торговли. Это также предполагает два интересных следствия.
Во-первых, ценообразование в некотором смысле ограничено, а также усиливает асимметрию между комиссиями мейкера и тейкера, которая разделяет биржи. Если предположить, что большинство счетов на GDAX находятся на уровне комиссий мейкера и тейкера 0/30 б.п., а GDAX обычно имеет спред в 1 цент по своей книге ордеров BTCUSD, то цена, отображаемая в биде/аске для каждой сделки, приблизительно соответствует «справедливой стоимости» в пределах 15 пунктов спота и каждая транзакция, максимальная или минимальная, отображаемая цена между ними приблизительно является «справедливой стоимостью». Таким образом, «справедливая цена» в спокойные времена быстро колеблется между этими двумя точками, при этом дальнейшего уточнения ценообразования между ними не происходит.
Книга заказов GDAX
Во-вторых, как и в налоговых отношениях между производителями и потребителями, существует определенная эквивалентность в ставках сборов, взимаемых между производителями и потребителями. Если вы взимаете с мейкеров относительно большую комиссию, они расширят книгу заказов и переложат часть комиссий на тейкеров. Если вы взимаете с тейкера относительно большую комиссию, то мейкер сузит книгу заявок и возьмет на себя часть комиссий тейкера.
Крайним случаем здесь является ситуация, когда вам настолько нравится производитель, что книга заявок сжимается до одного тика по спреду (как мы часто видим на GDAX), и книга заявок не может быть уже. Исходя из этого, любые дополнительные сборы теперь будут ложиться на саму биржу как упущенная выгода.
За исключением этого экстремального примера, мы видим, что не имеет значения, какая сторона взимает комиссию, а важна сумма комиссий тейкера и мейкера. В конечном итоге, как и в случае с налоговой политикой Laffer Curvein, биржи сталкиваются с проблемой оптимизации доходов в своей политике комиссий. Мы видим, что прибыльный доход совпадает с налоговой политикой. Если биржи не взимают комиссий, у них нет дохода. Если бы биржа взимала 100% комиссий, то не было бы торговли, а значит, и дохода. При дополнительном исследовании становится ясно, что доход биржи на уровне общей комиссии представляет собой вогнутую функцию с уникальным максимумом.
Глоссарий: Кривая Лаффера (https://en.wikipedia.org/wiki/Laffer_curve)
Продолжение следует