Quote filters as a way to get the most out of your liquidity providers

Connecting multiple liquidity providers to your broker or crypto exchange is the first step to ensuring attractive prices on your trading platform. However, the next step, which is as important, is handling the flow of quotes supplied by the providers. And this is where the software instruments that help to automate and improve this process come to the fore. To give you an example, the quote filter subsystem, which is part of the TickTrader Liquidity Aggregator, is a great one. We will analyze how it helps to turn a raw quote feed into an aggregated stock ticker that is attractive to end clients and profitable for your own tasks.

The concept

The main purpose of this component is to process the quotes flow that you receive from your liquidity providers. The processing itself is strictly tied to exactly what business challenges you want to solve and how you want to see the resulting market depth on your platform.

To achieve this, the filter system addresses two main objectives. The first one is to create a market depth for the broker, with prices that will only be available to the broker before they are sent directly to execution. The second objective is to display quotes for the clients, which they will send their trade orders to in the terminals.

Now we are going to look at how exactly they are achieved.

Raw price flow and the first set of filters

Raw price or quote flow refers to the original offering of liquidity providers, which, for one reason or another, may not fully satisfy a broker. It processes prices from liquidity providers and creates the broker's depth of the market. To get a better understanding of how this set functions, let's look at the filters it contains.

Market depth filter

Market depth filter

This type of filter is a kind of "switch" to connect the liquidity provider or trading symbol or completely disconnect them from the platform for any reason.

Essentially, this filter sets the market depth value for a particular provider or a particular symbol. If this value is equal to zero, then the entire flow of quotes for that vendor or symbol will not be transmitted any further.

The value.

Why would a broker need such radical adjustments? In case of technical problems on the provider's side, or market turmoil due to impactful news, it may be advisable to zero out the quotes for a while.

Expiration filter

Expiration filter

This filter determines the relevance of quotes from liquidity providers. This is achieved with a special parameter that is set and measured in seconds and defines for how long the quotes are considered relevant. If the waiting time for a quote from the provider exceeds the value set by the broker, the prices are deleted until the waiting time is less than or equal to the set parameter.

The value.

This type of adjustment can be useful when it is necessary to remove outdated quotes from the depths of the market, which are not updated with the frequency that satisfies the broker.

LP disabling filter

Liquidity provider latency disabling filter

With this filter, it is possible to remove quotes from a particular liquidity provider if they do not execute orders for a certain amount of time. The decision to disconnect a provider is made automatically using the set value of execution attempts.

The value.

With this adjustment, one can avoid possible misunderstandings with end customers whose orders will be rejected due to the provider's fault.

Margin level filter

Margin level filter

This filter is specially designed for brokers who work with margin trading. Margin level filter calculates the margin level for liquidity providers in relation to the margin level threshold. For each provider, a broker can configure four filter states: no action (the filter is idle), remove bid, remove ask, and remove bid and ask.

The value.

Often there is a situation where with several liquidity providers and open clearing accounts for a particular symbol, one provider may experience a shortage of supply, while the other, on the contrary, may have an oversupply. This imbalance can lead to additional expenses on the part of the broker, including unrecoverable commissions and monitoring costs. Margin level filter helps to avoid such scenarios, with automatic operation.

Spread markup filter

Spread markup filter

This filter has a direct effect on the depth of the market that is displayed to the client, as it allows you to assign a markup to providers' prices for any symbol. The value of the markup can be set either in points or as a percentage, and it is kept hidden for the end clients.

The value.

This filter may become a handy tool for balancing commissions from liquidity providers. Provided the broker has connected several providers, it is possible to set lucrative markups and still maintain a competitive spread.

Arbitrage resolving filter

Arbitrage resolving filter

This filter ensures that liquidity providers do not have arbitrage prices. As soon as the BID offer of one provider exceeds the ASK of any other provider, the filter defines this situation as arbitrage and can automatically apply its own markup to prices in order to execute the client's order with a favorable spread for a broker.

The value.

Arbitrage prices negatively affect the broker's revenue, and this filter is a means of counteracting such situations.

Broker market depth and the second set of filters

As a total of this set of filters, the market depth is formed, which the broker is ready to send to the execution for the end clients. After that, a second set of filters comes into play, which shapes the next iteration of market depth, delivered to trading terminals, and relayed through APIs.

Spread validator filter

Spread validator filter

This filter, getting the best BID and ASK for each liquidity provider, compares them with the values set in the filter, and eliminates quotes completely if the values are exceeded.

The value.

This filter prevents large spreads appearing in the client depth of the market.

Order book aggregating filter

Order book aggregating filter

The task of this filter is to collect all the prices from the broker's market depth and display them for the client in a way where all the providers are depersonalized. The broker can set the depth, the minimum lot volumes, and other parameters for quotes that they are willing to provide in the terminals.

The value.

This is the main filter in the set that forms the market depth that appeals to customers.

If you need more information on how the quotes filter subsystem in TickTrader Liquidity Aggregator works, we are happy to answer your questions.

Bottom line

Despite the fact that the filter sets described above mostly operate in automatic mode, always remember that before connecting and configuring any software tool for your brokerage, you need to analyze the data and think about where you want to end up with your market depth. We are ready to provide you with comprehensive consulting on this TickTrader Liquidity Aggregator feature as well as its other components, and tell you exactly where it can help your business.