Recently, a user had trouble replicating the backtest results I published in last-month's blog about what I referred to as an ETF Pause Trading strategy. As it turned out, he was assuming 0.50% slippage and getting results that showed the strategy was, essentially, a big pile of nothing. I had assumed zero slippage and showed great results.
Was I sloppy?
It would seem to many that I was. But in fact, I've been trading that strategy in real life and getting results that nicely match what I see on Portfolio123 when I extend my testing date to cover the real-money period. More importantly, in real life, this has lately been my best-performing strategy. Clearly, then, the backtest results I published were, in fact, the ones I needed to be seeing.
Perhaps we should take a fresh look at slippage.
The Basis For Assuming Slippage
You're not going to hear about slippage if you're reading books about Warren Buffett, Peter Lynch, John Neff, Ben Graham, etc. Slippage is not part of the lexicon of fundamental investing. If you study books on trading, you will hear a lot about slippage. It will be presented as one of the cornerstone assumptions you need to address in order to properly test a strategy. This dichotomy should already give you a sense of when you need to think about slippage.
Simply put, slippage is there to allow your testing to account for the fact that stock prices are expressed in terms of bid-ask spreads. If I buy a stock for, say, 22.00 at 11:15 AM and decide to sell it at noon, it will be very difficult for me to make a profit. It's not impossible. But it would be a challenge. Just before I paid 22.00, the stock might have been quoted at, say, 21.96-22.01, meaning that there were people willing to sell for 22.01 and others willing to purchase at 21.96. When I came in with an offer of 22.00, a penny under the price sellers were expecting, somebody budged and came down from 22.01 to get rid of his stock.
Now, suppose I want to sell. The spread may be 21.96-22.00, or if the ask price came down a penny, the bid may also drop by that amount, to say 21.95. Maybe if I try to get 21.97, one of the bidders will come up and meet me there, or maybe not.
This is the sort of dynamic we try to address with a slippage assumption. When testing a strategy, we can't possibly know all the factors that cause trades to occur somewhere within the bounds of a bid and ask spread. Adding to the complexity is the fact that markets shift all the time. Going back to example above, suppose that at 11:30, the Fed chairman says something about interest rates that the market doesn't like. By noon, the bid-ask spread for the stock may be 21.83-21.88. Rather than just throw up our hands and say it's all too complicated, slippage was invented to serve as an automated assumption that would force traders, one way or another, to allow the slippage dynamic into their testing. If testing is done using daily opening prices, it will be assumed that all purchases are made at the open plus a certain percent and that all sales are made at the open minus that same percent. The total discrepancy is what slippage is. It's up to you to decide what that percent should be.
When Slippage Is Useful
Clearly, if you are a trader, slippage is something you need to think about. You do this to replicate the real-life hurdle that comes from having a paper loss as soon as you purchase a stock. Absent slippage, you'd be assuming that you'd start from break-even, which is not the case.
Traders tend to hold for very short periods of time, often less than a day. A large part of their success will come from recognizing when bid-ask levels are in the process of rising (for long trades) or falling (for snort trades). Going back again to the above example, if a trader sees an order pattern developing in such a way as to make it likely that the bid-ask spread will inch up, perhaps he can pay 21.97 at 11:15 and book a profit by noon by, say, selling for 22.01 in the context of what then becomes a 21.99-22.03 bid-ask spread. By adding a slippage assumption to one's testing, traders can see how effective their strategies are at identifying bid-ask spreads that are poised to move enough in the right direction to enable them to actually book their profits.
The example presented here involves an intra-day trade. It seems reasonable to assume, however, that the logic of using slippage holds even if we trade once per day, the shortest Portfolio123 holding period.
Many Portfolio123 users work with holding periods longer than a day. How relevant are the above dynamics to them?
I selected, almost at random, a micro-cap stock appearing as of this writing in one of the pre-defined screens: American Physicians Service Group (AMPH). Let's assume it was "bought" by a model on 8/13/10 and sold on 8/20/10. Here are the possible prices that could be produced by the Portfolio123 database (as licensed by us from Thomson Reuters).
|Avg. of Hi-Low
Clearly, the stock moved. Most observers would express the amount of movement by referring to the change in the daily closing prices, and say the stock gained 1.45% over the course of the week.
The real question is how we should characterize the week's performance if the stock appears in a Portfolio123 model.
Speaking for myself, I don't usually trade at the open or the close. If I'm using my FolioInvesting account, I'll trade at 11 AM or 2 PM (usually 11 AM), and if I'm trading through a different account, who knows when I'll make my trades. I understand that Portfolio123 cannot replicate my exact behavior, but it seems to me that using the average of the day's high and low gives me the best chance of coming up with something reasonably representative of what I'm likely to do.
If I test without slippage, the 1-week performance of AMPH will be logged as +1.23%. If I assume 0.50% slippage, the performance will be logged as +0.73%.
There are many ways to assume a real-life one-week trade would produce a gain near, or even less than 0.73%. There are also many ways to assume such a trade would produce a gain near or above 1.23%.
In deciding which result would be more reasonable, i.e. whether or not we should assume slippage, we've hit a wall. There is no objective, definitive answer that is good for all trades in all stocks at all times.
But here is one thing I do know with absolute certainty. Whatever price I might have gotten had I actually sold on 8/20, the spread that prevailed back on 8/13 when I would have bought is of no relevance whatsoever. Regardless of spreads, I know my purchase price would have had to be somewhere within the 8/13 range of 25.27-25.99. Also regardless of spreads, my sale price would have had to be somewhere within the 8/20 range of 25.69-26.22.
I'm still stuck. It would have been possible for me to get a nice profit buying at the 8/13 low of 25.27 (Spread aside, somebody was able to buy at that price: Why not me?) and selling at the 8/20 high of 26.22 (again, spread aside, somebody sold at that price,and perhaps it could have been me). Conversely, I could have been a sad sack who bought at the 8/13 top or 25.99 and sold at the 8/20 low of 25.69 thereby winding up with a loss.
Answering The Unanswerable Questions
We can't go on forever asking questions that cannot be answered. Sooner or later, we have to make some reasonable assumptions and move on.
In my opinion, when confronted with such a wide range of possibilities and no real way to zero in on any one of them, I think it makes most sense to move away from extreme outcomes and toward something "typical," or in other words, average. Doing so does not mean we're dismissing the impact of extreme results here and there. It means we are assuming that there will be some favorable extremes and some unfavorable ones and that over enough observations over enough time, they'll balance out near the average. That's why I prefer to run my tests using the averages of the daily highs and lows. I can't be sure this would occur in real life, but I am comfortable that such an approach takes a prudent course in addressing the unknowns we face when we make price execution assumptions; move away from extreme scenarios and toward something that is typical.
Notice that over this assumed one-week holding period, there is no special reason to consider or discuss the bid-ask spreads that prevailed on each of the two trading days.
Putting in a slippage assumption here that knocks the return from 1.23% to 0.73% is not necessarily wrong, but it does represent movement away from the typical and in the direction of an extreme. Doing it once may be perfectly fine, and perhaps even give us a better, more prudent, test. The problem I have is with doing it again and again and again for each security for each rebalancing and only moving toward one extreme, rather than back and forth between both extremes. As we develop our tests these movements away from the typical and toward the negative extreme add up, often in very big ways and give us results that can be much worse than what we'd get without slippage.
Can Conservatism Become Reckless?
When debating any investment-related topic, the easiest way to take yourself off the hot seat is to come out in favor of an approach that can be characterized, in the content of the discussion, as more conservative. If you want to justify a stock by suggesting it will trade a 20 times earnings a year hence, how much more satisfied will your listener be if you demonstrate that the investment makes sense even if the year-ahead P/E is 17. If you justify an idea using an assumed 25% EPS growth rate, imagine how much more substantial you'll sound if you can make your argument work with an assumed 15% growth rate. I could go on and on, but you get the point. Taking the conservative position is like debating good versus evil and coming out in favor of the former: you can't go wrong in the eyes of the world.
Actually, conservatism does have a downside.
Imagine you're a high-school basketball coach conducting tryouts and you're going to measure free-throw ability. But in the interest of conservatism, you decide to simulate adverse conditions, You require candidates to come in having slept no more than three out of the last thirty six hours and that insist they all wear wrist weights each weighing five pounds. Not surprisingly, the candidates perform horribly. Then, imagine yourself consoling the parents as you send their kids away. "I'm sorry Mrs. James, your son LeBron does not have much talent for basketball. Mrs. Bryant, I appreciate your having brought Kobe in, but it looks to me like he should consider another sport."
Conservatism is not a good thing when carried to such extremes that we wind up turning away from things we really ought to embrace.
Moreover, it can get worse.
Imagine a baseball tryout that also uses wrist weights and sleep deprivation in the interest of conservatism, to measure a candidate's ability to handle adverse conditions. Suppose we have a wannabe slugger who is absolutely determined to succeed anyway. The answer: amphetamines and steroids!
There is a Portfolio123 equivalent to swinging a bat while doped. Sometimes we refer to it as optimization. Other times, we refer to it as data mining. All too often, when we go overboard with conservatism and impose so may obstacles that legitimate strategies can't work, the temptation to engage in strategic doping becomes hard to resist.
Conservatism is a good thing only if used reasonably, or . . . conservatively.
Fine Tuning Our Assumptions
I have one more metaphor, one that comes from having just come off a rainy Sunday catching up on some Food Network shows.
When preparing a dish, you can always find lots of advice on how much seasoning to add. Sooner or later, though, you'll have to put the recipes down, grab a spoon, and taste the stuff.
It's the same way here. Backtesting and simulating can bring you a long way. But as seen above, the trading price questions are, ultimately, unanswerable. Sooner or later you'll need to put some real money to work and see how closely your live performance matches that which Portfolio123 suggests you ought to be experiencing (assuming you refrain from plugging in actual execution prices in the Portfolio module). This is the only sure-fire way to evaluate a slippage assumption, whether zero or otherwise. Ultimately, the reason I'm so confident in my approach (test prices based on the average of daily high and low prices and zero slippage) is because I've done just that; I've seen real-money portfolios that move incredibly close to the way Portfolio123 tells me they ought to be moving.
Don't just copy what I do. It works for me given the types of stocks or ETFs I wind up getting into for the holding periods I use and trading habits I have. Find testing assumptions that work under the approaches you use. The key, here, is that you are not aiming for the most conservative set of assumptions. You're aiming for the most realistic assumptions and the best way to measure that is to compare some real-world outcomes with Portfolio123 tests covering the same points in time (i.e. set your testing dates to match the period of your real-world tests). If the two approaches show similar results, that would mean your testing assumptions are sound. You don't have to commit all your capital for such a test. You can use just a small amount, and make your own adjustments for the lesser impact commissions would have on what for you is a full-size portfolio. Your main goal with a test like this is to fine-tune your slippage assumption.
Coming up with good strategies is challenging enough, especially nowadays with so much volatility and uncertainty all around us. You won't help yourself by piling on with the financial equivalent of sleep deprivation and wrist weights.