The Gateway to Algorithmic and Automated Trading

Welcome to the Dry Side

Published in Automated Trader Magazine Issue 20 Q1 2011

Paul Bentley, vice-president in EMEA Algorithmic Products at Citigroup Global Markets, describes the use of an intelligent algorithm that accesses all available liquidity to execute an order that is a high percentage of average daily volume, in an illiquid small cap stock, without impact.

Paul Bentley

Paul Bentley

The Scenario: It is late November 2010 and a German fund manager is in the process of rebalancing several funds that she manages. One of these funds specialises in European small cap names. As part of the rebalancing process, the manager needs to increase the funds exposure to a particular Austrian small cap name. Accomplishing this efficiently will not be straightforward, as the stock is both illiquid and the order required to rebalance the fund's position in the stock represents 20% of its average daily volume. Furthermore, partly because of the ease with which the thin lit market in the stock can be moved with relatively small orders, the stock is actively followed by local manual traders looking to exploit opportunities arising from the activities of execution algorithms used by institutional investors - so there is a significant gaming risk attached to this trade.

However, the stock's recent trading activity is rather more helpful. While there has been the odd patch of volatility over the past month (during which it has risen about 1% - in line with the market overall - see Figure 1) its overall price action during the previous week has basically been sideways in nature. The forthcoming MSCI rebalance due November 30th is also acting as something of a damper on any major trends emerging.

Since the manager is only rebalancing (and not acting on a strong alpha capture signal) she instructs the fund's specialist small cap trader to adopt a passive stance and attempt to maximise price improvement opportunities. Find liquidity at fair prices, be patient, control impact. The benchmark is the strike (arrival) price.

The Asset: An Austrian small cap (less than bn market cap) stock of moderate volatility, with quotes tending to move without any trading on average every minute or so. Little fragmentation evident, with only three multilateral trading facilities (MTF) listings, but very little goes through the tape - at most one or two prints per day.

The Challenge: To buy 6,000 shares (representing 20% of ADV) of an illiquid small cap Austrian stock.

The Algo: The algorithm (an intelligent liquidity seeking strategy) attempts to capture available liquidity at or inside the touch in lit and dark venues. It has five aggression levels that can be adjusted by the user, with the level 1 setting being the most passive and level 5 the most aggressive. In the case of this particular Austrian stock, it interacts with the primary market, three public MTFs and the algorithm provider's own dark pool.

Its interaction with the provider's own dark pool has the potential to add significant execution improvement from the user's perspective. All child orders rest passively in the provider's dark pool, while any aggressive child orders pass through the pool before going to the provider's smart order router (SOR) for further action. However, the crossing mechanism used differs from that used by public MTFs. Resting orders are incentivised by providing price improvement versus pass-through flow. Even if a resting order is pegged at midpoint, the execution of a buy resting order will take place at the bid and enjoy full spread capture against any pass-through flow. For the counterparty, any aggressive SOR-bound pass-through orders obviously benefit from reduced market impact, in that they never reach lit markets.

As outlined above, the provider's SOR receives any aggressive orders that pass through the provider's dark pool without being matched. The SOR is connected to feeds from all the multilateral trading facilities and the primary markets and it searches these first on a best price basis and secondly on probability of fill.

The algorithm is not volume or schedule driven; a particularly important point in illiquid markets where local market experts are able to detect and trade against predictable execution strategies. Instead the algorithm seeks to understand the stock in terms of quantitative parameters, such as volatility and trading rate. With these characteristics in mind, it operates in three dimensions - initiating (stimulating activity when the market has been inactive for longer than its statistical norm and then interacting with any liquidity stimulated in reaction), lit posting and dark posting.

The algorithm includes a variety of anti-gaming measures. This includes checking the market for any sudden movements outside the likely cone of probability for the particular time of day. Another anti-gaming measure is to check if a dark order is being nibbled at sequentially worsening prices as a means of discovering whether the order is still present at a particular price level.

The Trader: The trader, who is based in Frankfurt, handles mostly European small cap stock trades for the fund and uses a variety of proprietary tools to assist in market timing. However, in view of the limited and intermittent nature of the price prints in this stock (typically only 80 per day), the traders takes the view that this is likely to adversely impact the information value of these tools and so decides not to use them for this particular trade.

By the same token, the trader appreciates that the thin market means that a participation algorithm (such as VWAP) would be unsuitable and vulnerable to being picked off. He therefore instead opts for this particular algorithm that is capable of finding liquidity in illiquid conditions without being detected and sets it to run with an aggression setting of 2 (passive) and with no price limit.

Figure 1

Figure 1

9:04am: (Note - all times are in CET). The order arrives just after the open. The opening price was 22.15 and nothing has traded since then (see Figure 2). The stock is up fractionally overnight; volume is very thin on the primary bid and offer and the MTFs are showing absolutely nothing. It is far from clear in which direction the stock or the wider market will go, so much will depend on how events unfold throughout the trading session.

The primary touch volume is 200x327 - very thin, with a slight downward pressure. The algorithm wants to get a piece of the order posted on the book, but adding too much will only add upward pressure. However, the algorithm strikes the balance between getting involved and signalling the market or holding up the stock price by adding just 120 shares to the bid.

Figure 2

Figure 2

As the trading session continues, the price stabilises with reasonable support on both sides. A decent dark print at these levels would reduce any slippage risk against benchmark, locking in some volume close to the arrival price. On the other hand, filling too much at this price cuts a potential winner - if there is a large seller in the market with more urgency execution can be improved by letting some of that trade hit the visible markets. Again, the algorithm finds a suitable balance, by placing mid-point dark peg orders for 750 shares in the algorithm provider's pool and the same amount across the three external MTF dark pools.

With these orders posted, the algorithm also has shares in reserve, available for immediate allocation should a suitable opportunity arise. Now it waits…

9:57am: After nearly an hour, there is minimal activity and no further trades have been filled. As the algorithm has access to volume and activity profiles for individual stocks, it is aware that this is a protracted period of inactivity, even for this illiquid stock. It therefore automatically attempts to initiate some activity;

without touching either the visible posted order, or the dark pegs, it lifts the whole offer, thereby impacting and pushing the stock up one tick. 327 completed at 22.2. Total volume completed: 327

The initiation of activity has an immediate effect, as another party immediately aggresses at the bid and the last price bounces back - possibly a volume sensitive algorithm being run by another market participant has been triggered. The algorithm was posted at the bid but unfortunately did not trade; however the queue position has been improved.

10:26am: Volume has been accruing gradually on both sides of the book behind the algorithm's orders on the bid but also on the offer. This is fairly typical behaviour for small cap stocks where volume is often very thin at the opening but as the session progresses and participants become more comfortable as trades go through, then volume starts to build and the price stabilises. In this case, the multi-venue quote now stands at 1300x1589. The algorithm identifies the 1589 on the offer as a major opportunity - chances to take 1000+ shares without impact and without leaving a significantly imbalanced book seldom arise in this particular stock. It therefore immediately takes 1139 shares. 1139 completed at 22.2. Total volume completed: 1466

10:29am: Taking a relatively large block of shares can often provoke a reaction from other volume-sensitive algorithms. This proves to be the case here, because the passive side has also just filled as well suggesting that just such an algorithm is working the other side. 120 completed at 22.15. The passive order is reloaded and the algorithm continues to wait. Total volume completed: 1586

10:35-10:44: The algorithm provider's dark pool receives a stream of sell orders in the stock via DMA, which may be another participant executing some kind of scheduling strategy. As explained earlier (see "The Algo" above) the provider's pool operates in a different manner from public MTF pools in that exchange bound orders are sent via the pool so they have the opportunity of interacting dark resting orders, which would reduce their potential market impact, while the resting orders (such as those placed by the algorithm) have the opportunity to enjoy full spread capture. In this case the resting order is at the mid and even though the order coming the other way is aggressive, the cross still happens at the bid. 600 completed at 22.15. Total volume completed: 2186

10:44am: Sudden market shock; it is unclear whether it is a fat finger error or someone indifferent to execution quality, but the immediately visible consequence is that a sudden burst of buying in the market causes the stock to gap up rapidly.

From its historic time/price curves, the algorithm knows that this is an unusual price move and a gaming strategy may be underway. Especially in illiquid names such as this stock, it is relatively inexpensive to move visible market prices. A potential gaming trade is therefore to buy lit, moving the stock price up (and the mid-price peg with it), and then sell dark, picking off the dark order at an unfavourable and atypical price.

To counter this possibility, as soon as the stock moves outside its normal trading bounds, the algorithm's anti-gaming routine kicks in and all dark orders are immediately withdrawn from the market.

10:49am: The new highs in the stock prompt many sellers to join the market and the price quickly reverts. Any dark orders in the market at this time would have served only to hold up the price and would have performed very poorly on a reversion basis. However, because the algorithm had already withdrawn its dark orders from the market it therefore did not incur any disadvantageous fills.

11:00am- 1:15pm: The stock settles to more usual patterns of price and volume. The stock is once again at a level where dark fills would help the trade, and the risk of adverse fills is reduced; the algorithm therefore reinstates the dark orders. At 11:20am the algorithm provider's SOR finds a price improvement opportunity on an MTF and picks up 60 shares at 22.04 while the primary market was showing 22.065 (a price improvement of 11bps). 3426 further shares are done at various prices between 21.75 and 22.235. Total volume completed: 5612

2:04pm: Nothing has happened for 50 minutes and the algorithm is about to initiate some activity, when the current mid-point dark order in the provider's pool is suddenly fully filled at the midpoint. (This is a fully dark, resting versus resting fill for both participants so the spread is shared and there is no market impact.) 130 completed at 21.83. Total volume completed: 5742

2:09pm: Although the dark order has been filled, it is not immediately replaced. This is because the algorithm has calculated that there is a reasonable likelihood that another party is potentially available for a block cross. In view of the manager's instruction to be patient, there is an opportunity to wait and see if the other party is more urgent. If that is the case, then there is an opportunity for further price improvement.

Therefore, rather than immediately reload the midpoint dark order, the algorithm waits for five minutes to see what the other party does. This proves to be the right course of action, as the price moves down in the trader's favour; at this point, the dark order is reloaded and fills immediately. Patience and passivity are rewarded with a 22bp price improvement on the second midpoint dark fill. 258 completed 21.78. Total volume completed: 6000

This completes the order.

Summary Stats:

20% ADV traded in 5 hours

Arrival price (mid) 22.17

Average execution price: 22.17614 (2.8bps off arrival)

Overall participation rate: 17%