- StreamBase LiveView
- StreamBase CEP
- StreamBase Adapters
- Use Cases
- News & Events
Smart Order Routing
Smart Order Routing (SOR) is a popular application of Complex Event Processing (CEP). Firms can use StreamBase CEP to build Smart Order Routing systems that automate the selection of execution venue and methodology in order to assure best execution, systematize the selection process, and reduce execution costs. Smart Order Routing systems are implemented with a variety of levels of automation, from complete automation of retail flow trading, to manual management and allocation of block trades.
Smart order routing systems can be deployed to augment an existing trade flow systems, or form the basis for next generation trading architectures. Market participants from asset management firms to boutique brokers to international dealing firms deploy SOR systems to optimize their executions.
Sell Side Smart Order Routing
Most SOR systems are deployed by traditional sell-side firms and broker-dealers to manage client order flow. The most common asset to be routed is equities, though SOR systems can improve quality and cost of execution in any asset classes.
The goal of a smart order routing system is to choose between execution options. On the sell side this means getting the best possible execution for the customer while minimizing fees. Best execution can depend on minimizing market impact, slippage, or implementation shortfall. Large firms have dozens of venues on which an order can be executed, and the best venue for a given trade will vary according to market conditions, business relationships, and parameters of the trade.
Buy Side Smart Order Routing
Asset managers and hedge funds can also benefit from smart order routing to minimize execution costs and manage relationships with brokerages. Buy Side smart order routing can more efficiently manage trade flow, especially high volume small ticket trade flow generated by quantitative trading. And smart order routing isn’t exclusively for equities trading, there is also value in using smart order routing to manage multiple execution venues for FX, derivatives, and fixed income trading.
Making a Smart Order Routing Decision
There are many inputs to an order routing decision. The goal of any systems is to make the best decision for the firm and the client. To be “smart”, an order routing system must take into account more than just the parameters of the trade. It must also analyze real time market conditions, and combine that with historical reference data about the security being traded, venue performance and the execution options.
Market Data Analysis
A good smart order routing system must be constantly monitoring the real time conditions of the market. By analyzing behavior of market participants, volume curves can be adjusted, volatility can be estimated, and risk metrics can be calculated. Without timely market data, a smart order routing system will be chasing the wrong market, operating on out of date information.
Market data also enables the calculation of benchmarks, so that execution quality can be measured after the fact. Combined with execution history, benchmarks can be used to estimate transaction cost, demonstrate best execution, and verify the correctness of routing decisions. The best smart order routing systems feed back their own executions and measure the accuracy of predicted transaction costs and price impact.
In addition to basic market data analysis, real time data from multiple venues can be used to detect and predict available liquidity. Smart order routing systems can also go beyond market data to predict liquidity, combining information from other asset classes or even unstructured news data to estimate market depth. Historical executions also enable prediction of the efficacy of execution methods.
Business rules can augment the process of smart order routing by explicitly specifying the destination of a given order, or by classifying orders for special treatment. For example, business rules might control which orders receive manual intervention. An order of more than 5% of average daily volume might be automatically routed to a professional trader, while orders in more liquid stocks are handled algorithmically.
Execution Algorithm Selection
A smart order routing system often includes logic to automatically select an execution algorithm, based on order parameters, business rules, historical performance, and expected transaction costs. Algorithms may be basic built in algos such as VWAP, TWAP, Implementation Shortfall, proprietary algos, or selected from available third party/broker algos. The selection and routing of execution algorithms can have a significant impact on quality and cost of execution.
Transaction Cost Estimation
Smart Order Routing systems can estimate transaction costs based on order characteristics, market conditions, historical executions, and known fees. These estimates can be presented to traders, or can be used to drive the selection of an execution algorithm or venue.
Buy side firms, and even some sell side firms, may route order flow to one or more external brokers. Choice of broker may be determined by execution algorithm, expected transaction costs, latency, market, or by required business relationship. Automatically routing low risk flow to the right broker can be an efficient way to manage broker relationships.
Similar to selecting brokers, a smart order routing system will select an execution venue, for example for a US equities order there are over 50 equities exchanges and several dark pools that could be used to execute an order. The selection is based on fee structures, available liquidity, and historical quality of execution.
For some firms, internalization may be another way to optimize the execution of client order flow. Smart Order Routing systems based on StreamBase may do their own internalization, or can integrate with existing internalization systems to minimize transaction.
A Smart Order Router generally fits into or replaces existing trade flow. The flow of an order runs from order acceptance, through routing decisions, to order delivery, order state management, and middle/back office integration.
In order acceptance, an order is received from a customer, from a trader workstation, from an OMS, or any other system to originate orders. Most frequently order acceptance is over FIX protocol, but many other protocols, from enterprise messaging middleware and hardware accelerated messaging to exchange protocols like ITCH and proprietary messaging formats are used. Orders are acknowledged, normalized into a common format, and generally persisted for reliability.
Routing decisions are made next, combining all the order parameters, business rules, real-time and historical market information. This decision process is the smart part of the Smart Order Router, and the sophistication is limited only by the quantitative skills and market knowledge a firm brings to it. The order may also be broken down into components, or executed over time, by an execution algorithm.
Once a routing decision has been made, the order can be delivered to downstream venues. Again, this delivery is most commonly done using FIX protocol, but many other protocols are supported for access to most major and minor execution venues.
Order State Management
An order that has been routed needs to be managed through various order state transition. During the lifetime of an order many child orders may be created, and those child orders can have a variety of outcomes. Order state management includes the parent child state tracking, reporting back to clients about order status, as well as managing client updates to order state, such as cancelations, resizes, or re-parameterization.
Middle and Back Office Integration
Throughout the process, information is logged for auditing purposes, and copies of orders and executions are dropped to middle and back office systems. Timely delivery of information to these systems enables straight through processing (STP), risk management, transaction cost analysis, and timely identification of any problems with order processing.
Using StreamBase EventFlow to Implement Smart Order Routing
StreamBase is a complete development platform, enabling the construction of applications from scratch or the assembly of components.
Off-the-shelf adapters are generally used to access market data, client order flow, and brokers or execution venues. StreamBase has built in FIX connectivity as well as integrations with several popular FIX engines. Enterprise messaging integration is usually involved in back office integration. Firms with proprietary ticker plant infrastructure, or proprietary order flow messaging, generally develop their own custom adapters or use consulting services.
Custom logic is generally required to implement a sophisticated smart order routing system. Routing rules and algorithms are only one aspect of custom logic. Integration logic is also used for reporting and back office integration, and generally has to be customized to match a firm’s data management and auditing requirements.
Choosing StreamBase Complex Event Processing for Smart Order Routing Systems
Organizations considering the development of Smart Order Routing capability generally have three broad options:
1. Off-the-shelf application software purpose-built for Smart order Routing
2. Development from scratch with systems programming languages like C++, Java, or C#
3. Custom development using a Complex Event Processing (CEP) platform with existing capital markets capabilities.
For firms supporting large volume trade flow, off-the-shelf applications often fail to provide the technological and business differentiation they require. Quants are constrained by the black box model, and often integration requires making tradeoffs between consistency and performance.
Major firms traditionally did their own development from scratch, but today the risks and costs associated with building trading systems this way can be prohibitive. Better for focus engineering talent on key business drivers, rather than re-implementing well-understood technology.
StreamBase CEP provides a compelling alternative to these traditional approaches. Combining productivity, performance, and flexibility, StreamBase helps firms deliver systems more quickly, with less risk, and that meet business and technology objectives. Developers leverage preexisting components and the StreamBase platform to focus on the key capabilities that allow their firm to differentiate technology, and to make sure that the new system integrates into a coherent whole.