Wednesday, July 1, 2009

Algorithmic Trading Softwares & Strategies!!

In this section, i shall try to explain more about Algorithmic Trading and what it is..... Most of the content here shall come from various internet resources and will include some analysis/comments from me!! Although i shall try and give as many references as possible, but if i do miss any, i apologise in advance!!


What is Algorithmic Trading

Simply said, it is a computerised system of securities trading, working in a environment of interconnected electronic trading platforms.

At its core, a trading algorithm takes an order, or trade list, and structures a sequence of trades that aim to achieve the objectives of the user, e.g., minimizing cost (vis-à-vis a specific benchmark), maximizing fill rate, or minimizing execution risk.

How does it work??

The matching between buying and selling orders on any exchange (such as NASDAQ/NSE/BSE) is entirely electronic and is performed through several large independent electronic crossing networks (ECNs). The Algorithmic Trading Software merely integrates itself with the electronic trading platforms provided by the brokers and executes the trades through it.


Main Advantages of using an Algorithm
  • gives the trader a systematic, disciplined way to trade an order that is consistent with the trading objective
  • generates an optimal trading trajectory that can maximize the chance of achieving the trading objective
Spectrum of Algorithmic Strategies
  • less structured end - opportunistic - these strategies have no pre-defined execution schedules; instead utilizing real-time information to actively search for optimal time for trade execution. These strategies create execution schedules as they go along. At the beginning of an order, a trader does not know what the execution schedule will look like.
  • more structured end - schedule-driven - strategies based on historical data, pre-programmed into the strategy’s logic and, save for small updates which incorporate real-time information, are followed precisely in optimizing trade entries. The realized trade schedule will be similar to the pre-defined one, absent significant, unusual changes in li-quidity over the order horizon.
  • between these two ends - evaluative - these strategies combine approaches of both opportunistic and schedule-driven algorithms. At the macro level, these algorithms suggest how to optimally slice a large order in different time intervals, for example, half-hour bins. At the micro level, intelligent rules – often quantitative in nature – are employed to execute each part of the original order while balancing the tradeoff be-tween cost and risk. Oftentimes these micro rules require the input of substantial real-time in-formation, which makes them similar to opportunistic strategies. The trader will have a good idea of what the execution trajectory may look like, but the ex post trajectory may differ little or greatly from the ex ante prediction.

Some popular Algorithmic Trading Strategies
  • Static Order Book Imbalance (SOBI) - This strategy aims to make full use of available order book information. It works by rst computing two volume-weighed averages of the prices contained in the buy and sell order books. Two di erences are then computed from each average and the last price of the exchange. If the "sell-side" diff erence is larger than the "buy-side" diff erence by more than a threshold amount (say, x dollars), this is an indication that prices are going to rise and a buy order is placed. Correspondingly, if the "buy side" diff erence is larger than the "sell side" by this threshold, a sell order is placed.
  • Volume Average Weighed Prices (VWAP) - This strategy too uses order book information. It fi rst computes a weighed price average for the whole market (a weighed averages of prices weighed by volumes, from both the buy and sell order books). This value is interpreted as a "true" equilibrium price for the market. Next, if the average price for the fi rst orders in the "buy" book is higher than the market average (by a certain threshold), then it places a sell order. If the market average is higher than the price of the first order in the sell book, then it places a buy order.
  • Trend Following (TF) - It is a "classical" strategy, which uses only information from price movements. It computes (through linear regression with respect to time) two trend lines from the last "ticker" prices from two di erent time windows. The fi rst of these is for a larger time window (say, a 4 hour window) up to the current time, while the second is for a smaller window (say, of 1 hour). If the slope (or gradient) of the two trend line matches, for example if it's positive for both, then it places a buy order. Once the nearer term trend reverses sign compared to the longer term trend, it starts liquidating its position.
  • Reverse Strategy - Consider the following straightforward, trend following strategy: buy when the price is rising and sell when it is falling. The reverse strategy does exactly the opposite: it sells when the price is rising and buys when it is falling. Although this strategy appears counter-intuitive, it works by exploiting the price micro-movements (small price spikes in both direction), which make up the evolution of the price of a stock during each trading day.

References
  1. "Algorithm Selection: A Quantitative Approach", JIAN YANG AND BRETT JIU, April 25, 2006
  2. " An Agent Strategy for Automated Stock Market Trading Combining Price and Order Book Information", Gheorghe Cosmin Silaghi & Valentin Robu, 2004.

No comments: