В предыдущих материалах разбирали рынок со стороны того, кто ищет неэффективность: межрыночный арбитраж, funding в дельта-нейтральных конструкциях, сбор спреда и «ёршики» с «лесёнками».
Сегодня зайдём с другой стороны баррикад.
Не как забрать спред у маркетмейкера, а как он вообще решает, где поставить bid и ask.
И здесь начинается уже нормальная математика, а не история в духе «поставил две заявки и печатаю деньги» 🧮

Обычный направленный трейдер чаще всего отвечает на вопрос:
куда пойдёт цена?
Маркетмейкер решает другую задачу.
Он одновременно выставляет:
bid — цену покупки;
ask — цену продажи.
И пытается снова и снова зарабатывать на расстоянии между ними — спреде.
В идеальной конструкции ему не особенно важно, вырос рынок или упал.
Но есть один большой нюанс.
Главный враг — позиция на рукахМаркетмейкер хочет оставаться примерно нейтральным.
Не сидеть огромным лонгом.
Не превращать маркетмейкинг в обычную ставку на направление рынка.
Но каждая исполненная заявка автоматически создаёт позицию.
Представим:
выставили bid;
кто-то продал вам актив;
теперь вы в лонге.
Или:
выставили ask;
у вас купили;
теперь вы в шорте.
То есть рынок буквально насильно складывает вам актив на склад 🙂
В математике этот склад называется inventory, или инвентарь.
И одна из главных задач маркетмейкера — постоянно возвращать его к нулю.
Потому что можно сто раз заработать маленький спред, а потом один сильный рывок против накопленной позиции уничтожит весь предыдущий результат.
Авельянеда–СтоиковВ 2008 году Марко Авельянеда и Саша Стоиков формализовали эту задачу в ставшей классической модели маркетмейкинга.
Оригинальная работа:
Avellaneda M., Stoikov S. High-frequency trading in a limit order book
В упрощённом виде маркетмейкеру нужно ответить на два вопроса:
1. Где находится моя «правильная» цена с учётом позиции?
2. Насколько далеко от неё ставить bid и ask?
Формула №1. Резервная ценаРезервная цена:
r = s − q·γ·σ²·(T−t)
Где:
s — текущая mid-price, середина между лучшим bid и ask;
q — текущий inventory, то есть позиция;
γ — насколько сильно маркетмейкер не любит риск;
σ — волатильность;
T−t — оставшийся временной горизонт.
Смысл проще самой формулы.
Если позиции нет:
q = 0
тогда:
r ≈ s
Маркетмейкер считает текущую середину своей справедливой ценой.
Теперь предположим, что он набрал лонг.
q становится положительным.
Тогда резервная цена смещается ниже рынка.
Почему?
Потому что покупать ещё ему уже не особенно хочется.
Зато продавать накопленную позицию — хочется.
Если маркетмейкер оказался в шорте, происходит обратное: его внутренняя справедливая цена смещается выше.
То есть модель буквально говорит:
чем сильнее тебя перекосило в одну сторону, тем активнее котировками выталкивай себя обратно к нулю.
Формула №2. Оптимальный спредВ классической постановке полный оптимальный спред записывается как:
δ = γ·σ²·(T−t) + (2/γ)·ln(1 + γ/k)
Здесь появляется ещё один параметр:
k — условно, насколько быстро уменьшается вероятность исполнения заявки по мере удаления от рынка.
Но главный смысл опять довольно простой.
Если волатильность выросла, котировать нужно шире.
Потому что вероятность того, что рынок резко переедет вашу заявку, стала выше.
Если рынок спокойный, можно стоять ближе к середине.
Спред меньше, зато сделок больше.
Поэтому маркетмейкинг — это постоянный компромисс:
шире спред → больше прибыль с одной сделки, но меньше исполнений;
уже спред → больше исполнений, но выше риск adverse selection и меньше прибыль на одну операцию.

Возьмём максимально простой пример.
Акция стоит около:
100,00
Позиции у маркетмейкера нет.
Значит его резервная цена находится примерно там же:
r = 100,00
Допустим, модель говорит, что нормальный полный спред сейчас — 0,20.
Он ставит:
Bid: 99,90
Ask: 100,10
Пока всё симметрично.
Кто-то купил у маркетмейкера по 100,10.
Теперь маркетмейкер продал актив и оказался, условно, −1 в шорте.
Но направленную ставку он не хотел.
Ему нужно вернуть inventory к нулю.
Поэтому резервная цена сдвигается вверх.
И вместе с ней двигаются котировки.
Например:
Bid: 100,00
Ask: 100,20
Что произошло?
Маркетмейкер теперь предлагает более привлекательную цену покупки.
Вероятность, что кто-то продаст ему актив, стала выше.
Если это происходит, шорт закрывается.
Inventory снова около нуля.
А разница между продажей и обратной покупкой остаётся маркетмейкеру.
Вот, собственно, вся логика.
Не:
«я думаю, рынок пойдёт вниз».
А:
«рынок дал мне нежелательную позицию — я перестрою котировки так, чтобы вероятность закрыть её увеличилась».
Рынок начало трястиДопустим, волатильность резко выросла.
Старая конструкция:
99,90 / 100,10
становится слишком опасной.
Одно сильное движение легко переедет заявки.
Модель расширяет спред.
Например:
99,70 / 100,30
Сделок станет меньше.
Но за каждое исполнение маркетмейкер теперь требует большую компенсацию за риск.
И этот цикл повторяется постоянно:
получил market data → оценил середину → посмотрел inventory → оценил волатильность → пересчитал резервную цену → пересчитал spread → переставил заявки.
У высокочастотных систем — много раз в секунду.
Вот здесь и начинается настоящий market making.
Не нарисованный оборот.
Не wash trading.
А управление котировками, inventory и риском.
Почему низкая комиссия критичнаТеперь хорошо видно, почему в таких стратегиях комиссии имеют огромное значение.
Маркетмейкер может зарабатывать несколько базисных пунктов на одной операции.
Если значительная часть этого преимущества каждый раз уходит бирже, стратегия математически перестаёт жить.
Поэтому на развитых рынках маркетмейкерам часто дают отдельные тарифы, rebates или специальные условия.
А в крипте особенно интересны площадки и пары с очень низкой maker-комиссией.
Потому что здесь комиссия — не мелкая техническая деталь.
Она буквально входит в математическое ожидание стратегии.
Где классическая модель ломаетсяМодель Авельянеды–Стоикова очень красивая.
Но рынок не обязан соблюдать её предположения.
Например, волатильность в базовой версии модели ведёт себя значительно спокойнее, чем в реальной жизни.
А реальный рынок живёт режимами:
тихо → шок → снова тихо.
Именно на переходе между режимами классический маркетмейкер часто отдаёт то, что долго собирал маленькими спредами.
Резко выросла волатильность.
Котировки ещё не успели расшириться.
Рынок ударил по одной стороне.
Inventory накопился.
Цена продолжила движение.
И несколько часов аккуратного market making исчезают за минуту.
Поэтому современная задача становится сложнее:
не просто оценить σ, а заранее понять, что режим волатильности меняется.
Ещё один нюанс крипты — fundingНа perpetual futures появляется дополнительный денежный поток — funding.
Его механику я подробно разбирал в отдельном материале на Smart-Lab.
Если маркетмейкер держит inventory через бессрочный фьючерс, funding начинает влиять на стоимость этой позиции.
То есть к классической задаче добавляется ещё один элемент:
inventory + volatility + order flow + funding.
Поэтому механически перенести формулы 2008 года на современный crypto perpetual и ждать идеального результата не получится.
А дальше начинается Financial Engineering 🎓До этого места интуицию модели, на мой взгляд, реально понять самостоятельно.
Но дальше уже появляется полноценная математика.
Вывод оптимальной стратегии через уравнение Гамильтона–Якоби–Беллмана.
Моделирование потока заявок.
Калибровка параметров исполнения.
Динамическая оценка volatility.
Adverse selection.
Inventory constraints.
И затем — реальная инфраструктура исполнения.
Я сам выпускник магистратуры НИУ ВШЭ «Финансовый инжиниринг» и с выпускниками программы работаю с удовольствием.
Мне вообще нравится эта программа именно тем, что туда приходят люди с очень разным бэкграундом.
Финансисты.
Математики.
Программисты.
У меня даже староста по первому образованию был химиком 🙂
На выходе люди уже способны брать такую модель не как красивую формулу из статьи, а превращать её в рабочую систему.
Мы попробовали закрыть одну из дыр моделиВ одной из выпускных работ, которую я соруководил, научным руководителем был Александр Берзон.
Взяли классическую Avellaneda–Stoikov и задали простой вопрос:
а что, если σ не считать почти статичной, а прогнозировать?
То есть market-making модель начинает заранее адаптировать spread к ожидаемой волатильности.
Для прогноза использовали несколько подходов:
HAR;
GARCH;
LightGBM.
Дальше прогноз волатильности подавался непосредственно в market-making модель.
Логика простая:
ожидаем спокойный режим → котируем уже;
видим рост будущей волатильности → заранее расширяем spread.
В результате стратегия становится адаптивной к режимам рынка.
Работа тестировалась на данных криптовалютного, американского и российского рынков.
По результатам получилась более устойчивая конструкция по сравнению с базовой реализацией модели, в том числе по Sharpe и просадке.
Работа опубликована на сайте ВШЭ
Вот это мне уже особенно нравится.
Не просто:
«вот знаменитая формула».
А:
«вот её ограничение → вот гипотеза → вот модификация → вот проверка».
Именно так, на мой взгляд, и должна выглядеть нормальная количественная работа.
Для тех, кто хочет копнуть глубже 📚Оригинальная статья:
Avellaneda M., Stoikov S. High-frequency trading in a limit order book
Пример развития модели через ML на Bitcoin:
Исследование в открытом доступе
Разбор математического вывода модели:
Практический разбор реализации стратегии:
Hummingbot — Avellaneda–Stoikov strategy
Главная мысльМне нравится модель Авельянеды–Стоикова за одну вещь.
Она очень быстро разрушает представление о маркетмейкинге как о:
«купил чуть дешевле, продал чуть дороже».
На самом деле задача выглядит так:
где находится моя справедливая цена с учётом inventory?
какой spread компенсирует текущую волатильность?
как изменится вероятность исполнения, если отойти от mid-price?
как не накопить направленную позицию?
что произойдёт, если режим рынка резко изменится?
И только потом:
где ставить bid и ask.
Вот это уже серьёзная математика, а не wash trading.
Образование получаем, инфраструктуру развиваем. Всем добра 😄
P.S. Если кому интересна эта область профессионально — отдельно рекомендую посмотреть программу ВШЭ «Финансовый инжиниринг».
Собирает очень заряженных людей с совершенно разным базовым образованием — и именно на стыке математики, разработки и финансов обычно получаются самые интересные проекты.
Хорошо бы еще разобрать случаи, когда цены берутся с потолка и держатся продолжительное время не взирая на арбитражи.
«Кухни» делают еще проще, сразу прикарманивают 90% средств клиентов себе…