Another first in this issue's Automated Trader. While we've written about plenty of equity and FX algorithms, we've never featured one for the complex world of interest rates. Robert Almgren, President and Christian Hauff, CEO of Quantitative Brokers change all that by illustrating the use of an agency algorithm to take a long position in CME Eurodollar futures.
The Scenario: It is March 2nd 2011 and CME March 2012 Eurodollar futures have been rallying steadily since mid February. A US fund manager is anticipating that this rally is likely to persist over the coming weeks, but is looking for a pullback buying opportunity. The US ISM Non-Manufacturing Composite and Initial Jobless Claims are due for release the following day and both have been trending positively in recent months. Related indicators have also been relatively resilient; payroll company Automatic Data Processing has just reported that the US private sector added 217,000 jobs in February, considerably ahead of the 180,000 predicted by many analysts.
Against this backdrop, the manager takes the view that if the ISM and initial jobless stats are positive yet again then stocks are likely to rally and the Eurodollar to sell off, thereby providing a suitable opening to take a long position. He therefore instructs his trading desk to buy 1090 lots of the March 2012 Eurodollar on March 3rd.
Figure 1: Event Significance
The Asset: CME March 2012 Eurodollar futures
The Challenge: To buy 1090 GEH2 Eurodollar futures contracts at an average price of 9903.30 or better
The Algo: The algorithm, which targets either TWAP or VWAP, has three core components:
1. Volume Scheduling
2. Order Placement
3. Price Signals
The algorithm tracks and monitors 62 recurring market events relating to interest rates. These range from economic data releases, FOMC meetings, Economic Statements (e.g. Beige Book, Fed minutes, etc), to Treasury Auctions from 10-Year Notes to TIPS. The most significant of these events are listed in Figure 1.
The significance of these events is calculated using an exponentially weighted rolling average over the last two years (i.e. last 24 events for monthly announcements). (The two events that will affect this trade - Initial Jobless claims and ISM Non-Manufacturing Composite - are highlighted in yellow in Figure 1.) These values are then used to generate a volume forecast (see Figure 2) that adds the specific event effect to the 'base profile' around the announcement time. The base profile is a 30 day exponentially weighted rolling average of volume for that specific contract (in this case the March 2012 Eurodollars). As the order progresses, the 'realised' volume is monitored and used to update the remaining forecast for the order.
Figure 2: Actual Envelope - Eurodollar order
Upon receipt of the parent order, the agency algorithm creates a customised envelope unique to that order (see the dark blue outline in Figure 2). The ahead and behind boundaries annotated in Figure 2 contract during peak volume events in order to mitigate exposure to market volatility.
With the schedule in place, the algorithm then deploys a combination of generic and 'order book specific' placement rules.
The generic order placement characteristics of the algorithm are as follows:
• The executed plus pending quantities will always be within envelope depicted in dark blue in Figure 2
• The algo will continuously monitor its "lag" which is a measure of the current filled quantity versus the ideal TWAP schedule (linear line in Figure 2). Positive lag means behind schedule and negative lag means ahead of schedule
• It will reduce positive lag by using new order quantity (if available), otherwise it will take from the resting quantity deepest in the order book to cross
• Child order distribution is also influenced by price signals (see Price Signals below)
The algo also incorporates knowledge of the specific order book in which it is trading. The CME uses four different matching engines for its interest rate futures complex, with Eurodollar futures matching being conducted using engine algorithm A = Allocation. The matching rules for Eurodollar outrights, spreads and butterflies use the following fill allocation sequence:
• Hidden second generation price improvement (first aggressor)
• Top order until 100% exhausted
• Pro rata1- Direct order
volume: including CME icebergs
- Implied order volume: first and second generation volume
• First in/first out on any residual quantity
The algorithm addresses these matching rules with a specific set of order book logic for Eurodollar outrights, spreads and butterflies. Due to the pro-rata characteristics of the Eurodollar matching engine outlined above, the algorithm employs over sizing of the child orders (within the constraint of the ahead boundary shown in Figure 2), which increases the probability of getting filled on its target quantity. It also has a bias towards dynamically placing child orders close to the inside level to improve the probability of achieving passive fills.
In addition to smart order placement, the algorithm also uses various short-term (alpha) price signals to influence order placement and maximise execution quality. These signals allow the algorithm to take advantage of short-term alpha by posting passively (opportunistically) or crossing the spread and include:
• Cointegration2 signals - these signals track the midpoint price of all neighbouring Eurodollar contracts out to two years. The algorithm detects midpoint shifts in the neighbouring contracts to predict a midpoint shift in the contract being traded (see Figure 3).
Figure 3: Prediction power of mid-point cointegration
• Microprice signals - these signals examine the weighted midpoint of the contract being traded to predict a midpoint shift in favour of where the current bid-offer is weighted more heavily.
• Hidden liquidity - Hidden liquidity occurs when a 'first generation' implied outright contract combines with a calendar spread containing that implied outright contract, to isolate the traded contract at a price inside the current displayed market. (See the first bullet in description above of the CME algorithm A = Allocation matching engine.) This presents the opportunity for an aggressive fill inside the displayed bid-offer. Hidden liquidity signals detect when these opportunities occur and will attempt to realise them if favourable to performance. (See Figure 4 for an example of the relationships between CME listed Eurodollar outrights, spreads and butterflies, with the March 2012 contract highlighted.)
Figure 4: Implied Pricing Relationship of GEH2
• Average trade sizes - the algorithm tracks and analyses historical and real time average trade sizes and average posted liquidity at each level. This encapsulates the inherent characteristics of the pro-rata market; namely that aggressive orders are passively filled via a (pro rata) combination of passive orders, and that posted liquidity is significantly larger due to the over sizing employed in the market.
Figure 5: Mid-point Mean Reversion for GEM2
• Mean reversion - mean reversion tends to be at its strongest in a defined time window after a quote change (midpoint shift), but as time passes, the probability of this reversion weakens. Figure 5 shows the distribution of quote changes over time in an attempt to predict this as a short-term signal. As can be seen, this mean reversion is highly likely after around four milliseconds (possibly due to cancellations or activity from low latency traders) and again at around four seconds, but is less likely after approximately 16 seconds. Tracking this behaviour can prove valuable in assisting the algorithm to either capture or avoid chasing flickers in the actual midpoint.
Transcript of trade execution
(All times are in CME local time, which was Central Standard Time as of the trade date.)
7:00:00 - Order received to buy 1090 GEH2. Order begins.
7:30:00 - The Initial Jobless Claims data released and are significantly below many analysts' predictions at 368,000 for the week ending February 26th. This represents a further 5.2% decline over and above the previous week's reduction and according to the US Labor Department is the lowest level of new claims for unemployment insurance since late May 2008.
The Eurodollar market immediately responds by selling off and the algorithm achieves passive fills at various points on the way down.
8:20:35 - The market ticks lower and the algorithm achieves a passive fill for 39 lots at 9905.00. Figure 6 shows that just before this large passive fill, the algo had a short positive lag. Most of the target quantity was working quantity that had not yet been filled, so there was available spare quantity for this passive fill. There was also a sharp decrease in slippage after this passive fill. As the morning progresses, the envelope widens, and the algo oversizes working orders towards the ahead boundary.
Figure 6: Real-time Slippage + Envelope
11:56:05 - A passive fill for 45 lots is completed when the market dips lower at 9902.00. This was possibly due to the algorithm not being overly aggressive ahead of this move and leaving available quantity working below the bid. It had also been oversizing to nearly twice the amount it was filled.
12:40 - The algorithm is able to take advantage of hidden liquidity available in the book via a butterfly middle leg, as witnessed by aggressive child orders being filled on the bid at 9902.25 (see red framed blow up in Figure 7).
• GEU1 (outright) is offered at 9951.50
• GEU2 (outright) is offered at 9827.00
• U1-H2-U2 (butterfly) is bid at -26.00
Using formula H2 (butterfly middle leg) =
(1/2) ( [U1] + [U2] - [U1-H2-U2] )
...therefore H2 is offered at 9902.25, via fills on the H2 middle legs at 9902.00 and 9902.50.
Figure 7: Market Movement + Child Orders
13:53:46 - As the market ticks lower, the algorithm achieves several passive fills, two for 3 lots apiece, before a larger passive fill for 32 lots, all done at 9900.50.
14:50:00 - The algorithm's scheduling envelope begins to smooth back towards the TWAP line as market liquidity tapers near the close at 15:00:00 CT and the order completes.
1 For pro rata, there is a minimum pro-rata allocation parameter of two lots. All fills are rounded down to the nearest integer and if an allocated trade quantity is less than two lots, it is rounded down to zero.
2 If two or more series each have a unit root, that is I(1), but a linear combination of them is stationary, I(0), then the series are said to be cointegrated. The mean reverting properties of cointegrated time series are the basis of numerous statistical arbitrage trading models, with pairs trading being one commonplace application.