Systematic Trading research and development, with a flavour of Trend Following
Au.Tra.Sy blog – Automated trading System header image 2

Follow-up on Slippage

May 17th, 2010 · 7 Comments · Backtest

banana-slippage-Coal-Miki-2

The previous post on slippage generated very good comments and I decided to address some of the points discussed in a follow-up post.

Slippage and Long-Term Systems

Last post concluded with a question:

How can you reduce slippage as a small trader?

You might not be able to reduce slippage in absolute terms, but you can still reduce the impact of slippage on your system performance.

By going “long-term”, a system will be less subject to the impact of slippage. Longer-term systems usually generate trades with larger average profits and the slippage costs consequently represent a smaller percentage of the overall trade P&L.

Let’s look at a longer timeframe of the Donchian Channel system studied in the initial post:

  • Entry breakout: 100 days (vs. 20 days)
  • Exit breakout: 50 days (vs. 10 days)
  • Entry Stop: 5 x 199-day exponential ATR, risking 2% of Total Equity

And its stepped simulation results:

Stepped Parameter Summary Performance
  Slippage (%) Ending Balance CAGR% MAR Modified Sharpe Annual Sharpe Max Total Equity DD Longest DD # Trades
0% 1,144,374,575.19 39.19% 0.66 0.87 0.45 59.7% 22.1 1,276
5% 786,815,664.15 35.60% 0.57 0.82 0.41 62.0% 22.3 1,276
10% 631,156,919.59 33.53% 0.53 0.79 0.39 63.7% 23.6 1,276
15% 503,215,137.40 31.44% 0.49 0.76 0.37 64.8% 24.0 1,276
20% 369,037,673.74 28.63% 0.43 0.72 0.33 66.8% 24.2 1,276
25% 286,924,641.30 26.39% 0.39 0.68 0.31 67.7% 24.2 1,275
30% 222,789,279.06 24.18% 0.35 0.65 0.29 69.3% 24.4 1,274
35% 182,038,244.01 22.44% 0.32 0.62 0.27 70.0% 24.8 1,272

The number of trades drastically decreases (compared to the 20-day breakout system) while trade length increases: average trade duration is 119 days, while the average winning trade lasts 203 days.

Slippage obviously still has a detrimental impact on the performance – however its effect is much less felt than with the 20-day breakout system. The system keeps producing positive results across the whole slippage-stepped simulation. The MAR is “only” halved between the 0% slippage and 35% slippage cases.

Note that longer trades also occur rollover slippage, when having to move from one contract to the next. A “trade” lasting one year, could potentially involve buying and selling 12 times (if changing contract every month). However, rollover slippage is usually lower then entry/exit slippage, as it is less subject to price momentum and rollover can sometimes be traded as a calendar spread trade.

More granular Slippage test

The range of slippage over which the system above is tested is fairly wide and it might make sense to look at a smaller and more granular range – although if you re-read Bill Eckhardt’s interview in New Market Wizards, you will find that he advocates testing systems by trying to break them, to check their robustness (exaggerating slippage is one such way). If they still do not break, you might be onto something

By testing the 20-day breakout system over a range of slippage from 0% to 2% with 0.25% increments, I realised the impact of another Trading Blox system parameter: “Trade Always on Tick”. The performance drops much more between 0% and 0.25% slippage than for any other .25% increment.

The reason is that Trading Blox rounds up or down to the nearest tick (when the parameter is set to TRUE). Even if 0.25% represents much less than one tick, the slippage will be rounded up to one tick (this is of course more realistic).

Below are 2 stepped simulations with slippage ranging from 0% to 2%, with the “Trade Always on Tick” parameter swicthed from TRUE to FALSE

Stepped Parameter Summary Performance
  Slippage (%)   Trade on Tick Ending Balance CAGR% MAR Modified Sharpe Annual Sharpe Max Total Equity DD Longest DD # Trades
0.00% TRUE 6,789,890,225.97 57.61% 1.11 1.04 0.50 52.1% 27.4 6,492
0.25% TRUE 1,484,956,089.05 41.75% 0.73 0.85 0.38 57.5% 45.5 6,492
0.50% TRUE 1,477,535,701.49 41.70% 0.72 0.85 0.38 57.5% 45.5 6,492
0.75% TRUE 1,457,202,527.89 41.56% 0.72 0.85 0.38 57.5% 45.5 6,492
1.00% TRUE 1,420,350,415.02 41.31% 0.71 0.85 0.38 58.0% 48.7 6,492
1.25% TRUE 1,379,743,833.58 41.02% 0.71 0.84 0.38 58.1% 48.7 6,492
1.50% TRUE 1,325,317,365.01 40.63% 0.70 0.84 0.38 58.2% 48.7 6,492
1.75% TRUE 1,280,512,583.08 40.29% 0.69 0.83 0.37 58.3% 48.8 6,492
2.00% TRUE 1,221,069,354.39 39.82% 0.67 0.83 0.37 59.0% 50.4 6,492
0.00% FALSE 7,513,719,582.25 58.72% 1.12 1.05 0.51 52.2% 27.2 6,495
0.25% FALSE 7,038,867,195.91 58.00% 1.11 1.04 0.50 52.3% 27.4 6,495
0.50% FALSE 6,484,318,587.24 57.10% 1.09 1.03 0.50 52.4% 27.6 6,495
0.75% FALSE 5,819,481,881.44 55.92% 1.06 1.01 0.49 52.5% 27.6 6,495
1.00% FALSE 5,401,924,091.29 55.11% 1.05 1.01 0.49 52.6% 27.6 6,495
1.25% FALSE 5,073,017,402.01 54.43% 1.04 1.00 0.48 52.6% 27.7 6,495
1.50% FALSE 4,700,521,306.73 53.61% 1.01 0.99 0.48 52.9% 27.7 6,495
1.75% FALSE 4,389,089,937.85 52.88% 1.00 0.98 0.47 52.8% 27.7 6,495
2.00% FALSE 4,152,589,943.43 52.29% 0.99 0.97 0.47 52.9% 27.7 6,495

The combined impact of slippage and Always Trade on Tick show that backtesting results can be greatly affected by assumptions made about trading. Once again, bear in mind that this is a fairly short-term trading system.

“Slippage is pathological”

Finally, it was highlighted in the previous post comments that real-life slippage is a complicated “beast”, hard to model accurately.

This interesting article about CTAs highlights how large CTAs focus their R&D on reducing their market impact and the resulting slippage.
 
 
For the small trader, taking the long-term system route seems to be the easiest way to reduce the impact of slippage on the system performance
 
 
PS: thanks to Pumpernickel, Motomoto and Erik for their comments and thoughts on the initial post.

Picture credits: Coal Miki@flickr

Related Posts with Thumbnails

Tags:

7 Comments so far ↓

  • Eventhorizon

    Just curious as to the trade-offs of using stop limit orders to enter on a channel break-out system: missed trades vs slippage.

    It might be instructive to see how frequently, post break-out, the market re-visits the break-out price.

    I believe there was a system around at one time called “Turtle Soup” premised on the idea of shorting the break-out (i.e. selling to the Turtles) and closing out the position a few sessions later.

    The existence of such a system suggests it is quite common for the break-out price to be re-visited within a few sessions. If so, maybe the majority of stop limits would actually trade and the only slippage would be commissons. The trade-off might be worth it.

  • Jez

    That would be an interesting test but practically difficult to implement accurately with daily data, because you never know the order of events during a daily bar (ie the price might revisit the stop level and trigger your stop/limit order, or it might never pull back – leaving your order unfilled).
    An alternative could be to test a limit order placed the day after the stop price has been breached (to enter on a pullback a few days later)..

  • Eventhorizon

    Hi Jez,

    I ran the analysis and put it on my blog .. excluding the day of the signal the entry limit order should fill about 85% of the time.

    I list a number of caveats to the analysis.

  • Jez

    Hey Eventhorizon,
    Thanks for following up on that idea.
    Unfortunately, and despite 85% sounding like a good “hit” ratio, I am not sure if this is a good indication of how well such system would do.
    The reason is that most of the losers would probably get filled after pulling back from the breakout, so all or most of the trades that would “get away” without pulling back are most likely winners.
    I checked the winning/losing trades ratio for the system at 0% slippage and, as a typical trend following system, it exhibits more losers (62%) vs. winners (38%). Working on the assumption that you would catch all losers but let some winners get away, your stats would become:
    losers: 62%
    winners: 23% (85-62)
    missed: 15%
    Of course, that new system would benefit from better slippage…
    I might run a test to compare the profitability of both systems with different levels of slippage.

  • Drew

    Jez, great article on the link to the hedge fund journal, keep up the good work.

  • lozen

    so theoretically, if you increase your position size by roughly 17.65% (1/.85-1)across all trades in your system over an extended period of time, nearly 100% of your trades would get filled using stop-limit?

  • Jez Liberty

    Not quite Iozen, the 85% relates to the number of times the price retraces after the initial entry point, which is independent of position size…

Leave a Comment