Фильтры котировок как способ получить максимум выгоды от поставщиков ликвидности
- Концепция
- Необработанные цены и первый набор фильтров
- Фильтр глубины стакана (Market depth filter)
- Фильтр срока действия (Expiration filter)
- Фильтр отключения поставщика ликвидности (LP disabling filter)
- Фильтр уровня маржи (Margin level filter)
- Фильтр наценки спреда (Spread markup filter)
- Фильтр устранения арбитража (Arbitrage resolving filter)
- Биржевой стакан брокера и второй набор фильтров
- Заключение
Подключение нескольких поставщиков ликвидности к брокеру или криптобирже — это первый шаг к обеспечению привлекательных цен на вашей торговой платформе. Однако следующим, не менее важным шагом, является обработка потока котировок от поставщиков ликвидности. И именно здесь на первый план выходят программные инструменты, помогающие автоматизировать и усовершенствовать этот процесс. В качестве удачного примера можно привести подсистему фильтрации котировок, которая является частью агрегатора ликвидности TickTrader. Мы проанализируем, как она превращает необработанный поток котировок в агрегированный биржевой тикер, привлекательный для конечных клиентов и выгодный для вашего бизнеса.
Концепция
Основная задача этого компонента — обработка потока котировок, который вы получаете от поставщиков ликвидности. Сама обработка тесно взаимосвязана с задачами, которые вы хотите решить, и с вашим видением конечной глубины рынка на платформе.
У системы фильтров есть две основные цели. Первая заключается в создании глубины рынка для брокера, с ценами, которые будут доступны только брокеру до того, как они будут отправлены непосредственно на исполнение. Вторая цель — отображать котировки, по которым будут исполняться ордера в терминалах для клиентов.
Теперь мы рассмотрим, как это работает.
Необработанные цены и первый набор фильтров
Необработанная цена или поток котировок — это те котировки, которые первоначально предлагают поставщики ликвидности, однако по тем или иным причинам они не могут полностью удовлетворить запросы брокера. Первый набор фильтров обрабатывает цены от поставщиков ликвидности и создает биржевой стакан. Чтобы лучше понять, как функционирует этот набор, давайте рассмотрим содержащиеся в нем фильтры.
Фильтр глубины стакана (Market depth filter)
Этот тип фильтра является своего рода "переключателем" для подключения поставщика ликвидности или торгового символа или полного отключения их от платформы по какой-либо причине.
По сути, этот фильтр устанавливает значение глубины стакана для конкретного поставщика или конкретного символа. Если значение фильтра равно нулю, то весь поток котировок для данного поставщика или символа не будет передаваться дальше.
Значение
Зачем брокеру нужны такие кардинальные корректировки? В случае технических проблем на стороне поставщика или неспокойной ситуации на рынке из-за важных новостей может быть целесообразным обнулить котировки на некоторое время.
Фильтр срока действия (Expiration filter)
Данный фильтр определяет актуальность котировок от поставщиков ликвидности. Это достигается с помощью специального параметра, который устанавливается и измеряется в секундах и определяет, в течение какого времени котировки считаются релевантными. Если время ожидания котировки от поставщика превышает значение, установленное брокером, цены удаляются до тех пор, пока время ожидания не станет меньше или равно установленному параметру.
Значение
Этот тип корректировки может быть полезен, когда необходимо удалить устаревшие котировки из стакана цен, которые не обновляются с необходимой брокеру частотой.
Фильтр отключения поставщика ликвидности (LP disabling filter)
С помощью этого фильтра можно удалить котировки от конкретного поставщика ликвидности, если он не исполняет ордера в течение определенного времени. Решение об отключении поставщика принимается автоматически в соответствии с заданным количеством попыток исполнения.
Значение
С помощью данной настройки можно избежать возможных недоразумений с конечными клиентами, чьи заказы будут отклонены по вине поставщика ликвидности.
Фильтр уровня маржи (Margin level filter)
Этот фильтр специально разработан для брокеров, работающих с маржинальной торговлей. Фильтр уровня маржи рассчитывает уровень маржи для поставщиков ликвидности по отношению к пороговому уровню маржи. Для каждого поставщика брокер может настроить четыре состояния фильтра: нет действия (фильтр бездействует), удаление bid, удаление ask и удаление bid и ask.
Значение
Часто возникает ситуация, когда при наличии нескольких поставщиков ликвидности и открытых клиринговых счетов по тому или иному инструменту у одного поставщика может возникнуть дефицит предложения, а у другого, наоборот, переизбыток. Такой дисбаланс может привести к дополнительным расходам со стороны брокера, в том числе к невозвратным комиссиям и расходам на мониторинг. Фильтр уровня маржи помогает избежать подобных сценариев благодаря автоматической работе.
Фильтр наценки спреда (Spread markup filter)
Этот фильтр имеет прямое влияние на отображаемую клиенту глубину стакана, поскольку позволяет добавить надбавку к ценам поставщиков по любому символу. Величина наценки может быть установлена как в пунктах, так и в процентах, но остается скрытой для конечных клиентов.
Значение
Этот фильтр может стать удобным инструментом для балансировки комиссий от поставщиков ликвидности. При условии, что брокер подключил несколько поставщиков, можно устанавливать выгодные наценки и при этом поддерживать конкурентоспособный спред.
Фильтр устранения арбитража (Arbitrage resolving filter)
Этот фильтр гарантирует, что у поставщиков ликвидности нет арбитражных цен. Как только предложение BID одного поставщика превышает ASK любого другого поставщика, фильтр определяет эту ситуацию как арбитраж и может автоматически применить собственную наценку к ценам, чтобы исполнить ордер клиента с выгодным для брокера спредом.
Значение
Арбитражные цены негативно влияют на доходы брокера, и данный фильтр является средством противодействия таким ситуациям.
Биржевой стакан брокера и второй набор фильтров
Данный набор фильтров формирует стакан цен, который брокер готов отправить на исполнение конечным клиентам. Второй набор фильтров, по сути, формирует следующую итерацию стакана, поставляемую в торговые терминалы и передаваемую через API.
Фильтр проверки спреда (Spread validator filter)
Этот фильтр, получая лучшие цены BID и ASK для каждого поставщика ликвидности, сравнивает их со значениями, установленными в фильтре, и полностью исключает котировки, если значения превышены.
Значение
Этот фильтр предотвращает появление широких спредов в глубине стакана клиента.
Фильтр агрегации биржевого стакана (Order book aggregating filter)
Задача этого фильтра — собрать все цены из стакана брокера и отобразить их для клиента таким образом, чтобы все провайдеры были обезличены. Брокер может установить глубину, минимальные объемы лота и другие параметры котировок, которые он готов предоставлять в терминалах.
Значение
Это основной фильтр в наборе, который формирует стакан цен, привлекательный для клиентов.
Если вам нужна дополнительная информация о том, как работает подсистема фильтра котировок в агрегаторе ликвидности TickTrader, мы будем рады ответить на ваши вопросы.
Заключение
Несмотря на то, что описанные выше наборы фильтров в основном работают в автоматическом режиме, всегда помните, что перед подключением и настройкой любого программного инструмента для вашего брокера, необходимо проанализировать информацию и подумать, какую глубину стакана вы хотели бы получить. Мы готовы предоставить вам всестороннюю консультацию по данной функции агрегатора ликвидности TickTrader, а также по другим ее компонентам, и рассказать, как именно она может помочь вашему бизнесу.