Program Trading
Email to a friend
Strategies and Technology Infrastructure
by Ayesha Khanna
Program trading is increasingly becoming the business on Wall Street. Banks have been using computer programs to execute trades to get to the market and its arbitrage opportunities quicker for years. However, now with the advent of algorithmic trading, an algorithm applied to the program to break up the trade and submit it gradually to maximize profits, the Street is fighting in a jungle where man and machine are working together to conquer the market.
Just what is program trading? This article explores the strategies and technology infrastructure that make a financial institution a major player in the world of program trading.
INTRODUCTION
Program trading, the use of computers and algorithms when trading in stock markets, has become the spécialité du jour on Wall Street. Specifically, the New York Stock Exchange defines a program trade as as a basket of stocks having either a total value of $1MM (or more) or where the total number of stocks in the basket is 15 or greater. Program trading is used primarily by institutional investors typically for large-volume trades. Orders from the trader's computer are entered directly into the market's computer system and executed automatically.
Many factors have driven the rising prominence of program trading, including, the desire to lower transaction costs, the shrinking arbitrage opportunities in the market and the proliferation and advancement of technology and connectivity between systems. Program trades now account for over 50% of the trades executed on NYSE.
HISTORY
Program trading became popular in the late eighties and the nineties as computer technology and connectivity became easier. At that time, few technologically savvy players in the market used computers to execute large blocks of trades in order to make money off the arbitrage opportunities that exist in the market. Index arbitrage, or making money off the discrepancy between futures on the S&P 500 index and its underlying stocks, was at one time synonymous with program trading.
Some of the most successful firms to do this early on were DE Shaw and Susquehanna Investment Group. In 1987, the 508-point drop in the Dow-Jones industrial average was initially blamed by many on program trading, which observers felt had contributed to the precipitous decline in stock prices. In fact, the NYSE put restrictions on program trading after the crash.
More recently, the focus in program trading has become part of a mainstream response to buy-side traders’ need to move large blocks of shares with minimum market impact in today’s complex institutional trading environment. Hedge funds, pension funds and mutual funds, all come to sell-side institutions like JP Morgan to offload and buy large numbers of shares, and rely on sell-side algorithms to ensure the best price for these trades.
THE BUSINESS CASE
Say I am a fund manager who wants to sell $100 million shares of MSFT. I come to a large investment bank and tell the Sales & Trading desk that I would like to offload these stocks that day. The manager comes to the bank because he knows that if he went directly to the market, selling such a large number of shares will drastically affect the market price and adversely affect him. This is because when the shares are put on the market, people will buy it in chunks, with such a surge in supply, the price will automatically go down with each successive block sold. There has to be a way to sell the stocks in the market without affecting the price drastically. For executing the sale of the shares intelligently, the bank in turn gets a commission, say a penny or less, on each dollar of stock traded.
The bank has in front of it several strategies for executing the trade.
(i) It can sell all the shares immediately
(ii) It can sell the shares uniformly from 8-4pm throughout the day
(iii) It can apply an algorithm that matches the volume of trades executed for that share so that it follows the surge and lows in trading, thereby hiding the fact that the supply of shares is increasing in the market.
Option (i) would obviously not work; it will result in a sharp drop in price, especially if the market share of the fund in that stock is large. Option (ii) would not be advisable since the market will immediately notice that the shares are being sold even during hours that traditionally have been quiet for this stock. This leaves option (iii) which is known as algorithmic trading, i.e. applying a specific algorithm to a program trade so that transaction costs are low, the best price is achieved and market impact is minimal.
There are three main steps involved in the process of deciding and executing an algorithmic trade:
Pre-trade modeling: This includes trading cost estimation, risk analysis and optimal horizon.
Portfolio Optimization: This includes risk analysis, optimization and fair value pricing.
Post-trade analysis and feedback: This includes performance vs. benchmarks analysis.
Note that there are two main requirements for a program trading platform: the quantitative models and the technology infrastructure necessary to execute the trades. The next two sections discuss these two aspects in detail.
TRADING STRATEGIES
Originally, program trading referred to equity transactions consisting of at least 15 different financial instruments with a total order size over $1M. Over time, the term has evolved to be used to describe any transaction that involves multiple securities at once and with a significant dollar order size. Also known as basket trading or portfolio trading, it may also be applied to other asset classes besides equity, including derivative securities of any underlying asset class. Program trading by its very nature has a high degree of automation and the term was inspired by the fact that this type of trading is almost always performed electronically and therefore involves computers.
Algorithmic trading refers to trading strategies that involve a number of simultaneous transactions often combined according to a specific algorithm or a set of rules. An example of such an algorithm would be a pairs trading algorithm where two comparable securities are mispriced but expected to converge to a same price target because of their fundamental similarity. In such a case, the algorithm would instruct the trader buy the relatively undervalued security and sell short the relatively overvalued security. Trading algorithms may or may not be used alongside with a large basket of orders, but more often than not they are since they go hand in hand in today’s trading environment.
SLICERS
Slicing the block of trade into smaller pieces is the basis of the algorithms commonly referred to as ‘slicers’. Slicers are used to slice up a large block order so as to have minimum market impact. There are three ways to slice up a large order:
(i) Sell everything within the first hour. This would be unwise as it would immediately collapse the price.
(ii) Uniform slicer: Sell x% of the stock throughout the trading day (8am – 4pm). This would be unwise since the volume of trades in the market varies over the day, and it could be obvious when someone is selling stocks at a time when the volume is low, thereby depressing the price. The reason that the volume of trades varies over the day is that information accumulates over the course of the day, and therefore one sees higher volumes early in the morning and later in the day.
a. Go to http://www.marketvolume.com. They provide real-time intraday volume data for indices.
b. Sign up for a 30 day free trial version
c. Pull up the IV (intraday volume chart) and you’ll see something like the chart below. It is obvious that the volume traded is varying across the day.
d. Therefore a uniform slicer would not be a good idea.
(iii) Ideally, the bank will be able to mirror the volume profile traded daily so that the sale of the shares is done with minimum impact. Note that if the client wanted to buy 1 million shares, the exact same logic would hold. You wouldn’t want to raise the price of the stock drastically by surging the demand.
There are several metrics that can be used to measure the effectiveness of a strategy or slicer, including benchmarks such as VWAP (Volume Weighted Average Price), TWAP (Time Weighted Average Price), and AP (Arrival Price).
VWAP:
VWAP is a benchmark used to measure that a fair price was delivered to the client for the day. In fact, many clients insist that the bank meet at least the VWAP for the day. The VWAP of a stock over a specified market period is simply the average price paid per share during that period, so the price of each transaction in the market is weighted by its volume. In VWAP trading, an attempt is made to buy or sell a fixed number of shares at a price that closely tracks the VWAP. The computational simplicity of this benchmark has made it very popular amongst traders.
So to understand how share volume moves over the day, one has to forecast the volume. One method is to study historic intra-day volume patterns and use the information to capture more closely VWAP executions. At its simplest, an average VWAP per period over the last three months can be used to predict the VWAP over the day for a particular stock. Think of finding the optimal slice as an optimization problem guided by the VWAP and constrained by the fact that the total volume of shares given by the client have to be sold within a certain time period. An advanced algorithm will try to enhance the performance by timing executions and estimating market direction.
The diagram below shows an example of a VWAP ticket order.
TWAP:
TWAP [Time-Weighted Average Price] is an algorithm designed for trades that must be completed by a certain point and trades in illiquid stocks. It allows traders to slice a trade over time, so it’s a time slicer as opposed to a volume slicer, which is what VWAP does. While VWAP will typically trade less stock when the market volume dips, TWAP will trade the same amount of stock over the a time slot throughout the day. This is particularly reassuring for traders when they are confronted with a particularly illiquid stock and can’t predict the volume distribution at all.
The diagram on the left shows how in every time interval, TWAP trades the same number of shares. The diagram below shows an example of a ticket order using a TWAP.
ARRIVAL PRICE
The order arrival price is the price of a stock at the time the order is raised and is used a pre-trade benchmark to measure execution quality. The difference between the order arrival price and the execution price can be used to determine the implementation shortfall. For orders submitted prior to the market opening, the previous day’s closing price is used as a proxy.
Implementation shortfall relies on the concept of transaction costs, which are becoming increasingly prominent in program trading literature.
THE TECHNOLOGY INFRASTRUCTURE
Banks spend millions of dollars creating a state of the art technology infrastructure for program and algorithmic trading. This includes both building their own systems in-house and acquiring a company that has shown excellence in their required technologies. There are four key components of the infrastructure that comprises a program trading system.
• Trading Software: Scalable trading software to book trades.
• Order Routing: Complete direct market access to international exchanges & ECNs for immediate trade executions.
• Data Feeds for Analytics: Fully customized real-time and historical data feeds to keep track of and forecast market trends and movements.
• Risk and Position Management: Integrated front, middle and back-office systems to monitor positions and risk.
Trading Software: A trading interface, such as the GUI shown in the diagram below, provides a point and click interface for traders to order trades. The diagram shows a screen which allows traders to execute batch orders, buy or sell, on a wide number of securities over a number of exchanges.
An order entry window like the one shown in the diagram below is for one order. With a click of the mouse, the trader can control every aspect of an order, including how much to buy, order type, price and the location of the ECN.
Order Routing Systems: Order management systems (OMS) allow banks to route trades to the exchanges and ECNs. Since speed is one of the keys of program trading, the order management and routing systems are integral to a system that can fully support such trading. Orders are entered from the software's point and click order entry interface which can be added to any window in the system. Orders are sent to the exchanges in messages, which are often of the format FIX (Financial Information Exchange), and message buses such as TIBCO RV are used to carry buy-sell type order messages to the exchange, and receive confirmations back.
Transactions using an electronic system are subject to the rules and regulations of the exchange(s) offering the system and/or listing the contract. Note also that speed of execution is only one important factor in determining in order routers. Price improvement and enhanced liquidity is also a key factor in determining the efficacy of an order routing and management system.
The automated routing a security order directly to an execution venue, such as an exchange, is also known as Direct Market Access (DMA). DMA is a way of accessing liquidity across markets and time zones. Recently, Citigroup acquired Lava Trading, which specializes in DMA, to provide this facility to its institutional clients.
Data Feeds for Analytics: Real-time and historical data feeds are crucial for program trading. They are used to monitor and model market movements real-time, which gives program trading its cutting-edge reputation. Algorithms can, with this information, constantly learn about the best step to take next in terms of where, when and how much to trade. Traders and risk managers can tweak algorithms or intervene if they feel that the environment is getting dangerously close to a loss making situation.
Charts are valuable tools that provide real time stock prices and provide customizable views on the data. They are used extensively by traders to identify market trends. The diagram below shows one view of how a chart can look. In order to be able to provide this kind of real-time charting, the system needs to get live data feeds from the exchanges.
Risk and Portfolio Management: Risk and position management is necessary to watch how the profit and loss potential from any trade as the market moves. Banks build analytic engines that take in the market and trade position data, and aggregate the risk by book and desk. This allows traders to buy, sell, and cancel trades according the risk profile of a position. Analytics engines are usually built in C++ and historical data is stored in in-memory databases such as KDb for fast access to information.
One company that is a vendor of such high performance relational databases is Kx Systems. One of the company's products, kdb+, can capture, manage and analyze millions of streaming ticks as well as terabytes of historical tick data -- with real-time analysis results.
The diagram below shows a screen which displays profit and loss at the portfolio level.
CONCLUSION
In conclusion, a standard program trading program requires an architecture that meets four important business requirements: trading software, direct market access, real-time data feeds, and integration of risk and position management.
Images under Trading Stategies from Instinet
Images under Technology Infrastructure from the product page of Direct Access Financial Corp
