I should have added here that to take advantage of this you'd have to look at dollar profits instead of %s during testing, which is uncomfortable, but it does have the added benefit of embedding a logical position sizing methodology in the development process and focuses on Income vs. Drawdown - legitimate considerations for consistency. Anyhow, not really advocating this (though it probably sounds like it), just thinking out loud.
Makes perfect sense to me, especially with all thats going on in this country right now. Who knows whats to come. Attached is a sheet that shows the detrended log returns on a daily basis from 1 - 120 days after each entry signal, broken down by long and short. There is no filtering of signals like there normally would be if we were currently in a trade - please let me know if thats an incorrect assumption. The longs still outperform the shorts but the pattern of returns across periods mirrors eachother almost perfectly. One thing I found interesting is that the mean return is consistently larger than the median indicating positive skew...which is perplexing since its exactly the opposite of what we saw in the backtest results.
Had some trouble with the file size, so I had to cut it down to bare essentials. Sorry. Chart is in there though which shows average daily returns vs. days.
I think I understand your question and I see where you are going with this. It seems you want to normalize trade size to recent volatility, correct? I've done some research on this and I don't remember what I concluded, but, suffice to say I don't use this approach in live trading so I may have either missed something or found it to be marginal. Let me think about this for a bit and try to remember why I stopped looking at this idea. Are you saying that mean reversion is about the absolute amount we are outside of a "normal" range regardless of the recent volatility regime? Yes, I think so, but, the recent volatility regime matters in that its easier to overcome costs on a volatile instrument versus a "flat" one. Personally, my MR win rate is slightly over 50% but my win ratio is around 3:2. That ratio is what I'd worry about because its going to be your gross profit. The more movement in the stock, the more your gross profit compared to your costs. IMO, mean reversion systems are about the Law of Large Numbers. The profit margin is what matters, your profit margins are going to be better during high vola. Another thing to think about is that vola. is often higher in a falling market and lower in a rising one. Also volatility clusters as well. Using these two "stylized facts" of volatility, one can make a decent model that filters out low expectancy trades. That's the general idea anyway. Some general reference: Look up GARCH and any papers written by this guy: http://en.wikipedia.org/wiki/Robert_F._Engle The "facts": http://www.newton.ac.uk/preprints/NI05015.pdf Mike
Sorry guys, hope Im not too late to the party with this one, But Ive been playing catchup and just got to the current assignment. The use of percentile was made clear in the first system a bit earlier on, in regarsd to the closes, but Im not sure how ranking that relates to the 10 day 'range' as in this example.... Is this just refering to a period of 10 days, or the actual range of each day over the past 10?
Use something like this: = (today's close - lowest low of past 10 days) / (highest high of past 10 days - lowest low of past 10 days)
First of all, thank you to everyone who has contributed to this thread. I think we really have something of value here, and I hope those who are lurking are also finding some interesting ideas. If you have questions, don't be afraid to speak up. Well, since Mike let the cat out of the bag lol, let's talk a bit about volatility. There are many ways to measure and define volatility. Maybe the most common in publicly available systems is to look at average true range... you simply take the past 20 days' true range and average them to arrive at the number. This is an imperfect measure (all measures of volatility are imperfect in some way) because it does not look at the close to close change. Another way to measure volatility would be to average the absolute values of the closing changes, either differenced or percentages. You see right away that volatility measures usually either look at intraday range or close to close, so be aware that this is one limitation of the common practice. In the academic literature, standard deviation of returns is used as a stand in for volatility. This is probably better than the two measures I listed first, but it raises some interesting questions. Is uncertainty equivalent to risk? Should we account for asymmetrical risk? Lots of questions, no perfect answers. It might interest you to know that the additional filters I was going to apply to this were volatility based also. You can construct a reasonable proxy by taking one of the measures I listed above and calculating it over a 1-2 week timeframe, and then calculating it again over a 6-12 month timeframe. The ratio of those two measures will tell you if the market is trading at a premium to its long term vola or a discount. While not a standalone trading system can this be a useful addition to our system? let's see. Going back to the spreadsheet I posted, the average return was 45.14 bp (basis points) with a stdev of 463.6. I collected (but did not post in the original sheet) a volatility measure for each trade at the time of inception. Does this filter have predictive value for the returns? A quick way to answer this is to do a simple linear regression: Source | SS df MS Number of obs = 1075 -------------+------------------------------ F( 1, 1073) = 12.09 Model | 2571733.96 1 2571733.96 Prob > F = 0.0005 Residual | 228227966 1073 212700.807 R-squared = 0.0111 -------------+------------------------------ Adj R-squared = 0.0102 Total | 230799700 1074 214897.3 Root MSE = 461.19 ------------------------------------------------------------------------------ return | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- volaratio | 125.7746 36.17133 3.48 0.001 54.80004 196.7492 _cons | -67.19465 35.2366 -1.91 0.057 -136.3351 1.94581 ------------------------------------------------------------------------------ (Quick and dirty here, but an investigation like this is part of our process here so Im showing it.) The key elements here are the sign of the coefficient (+ which means higher vola = higher returns) and the t stat of 3.48, which is probably significant. (Don't get too caught up on R-squared, etc... this is not a complete model just a first foray into looking at the relationship.) What happens if we only take trades when the volatility is greater than the long term for that market? Adding this filter drops the number of trades to 357 from 1075, increases the average trade to 102.27 bp(!) with a standard dev of 525.3. The median trade also raises to 143 from 106. Biggest and smallest trades are no affected. Question: does this look like a worthwhile addition to the system? Thoughts?? And yes, I know BoWo will steal... but we're using some big words so I think we're safe (like spelling words in front of the kids so they don't understand lol.)
Wow... I think I finally caught up on all the posts here! On this position sizing idea. I think this basically comes from the Turtle methodology and understand the idea there was to equalize the impact of various positions on the daily p&l. Be clear on that goal... you have a number of markets (futures, but let's use stocks here)... one has an average daily change of $1 and one has $10. If you have the same number of shares on in each, the $10 stock will swamp the changes from the $1 stock. So... the obvious solution is to buy 10 times more of the $1 stock. Now, I'm not always sure that is an outcome you want... but if that is what you want that's how you get it. The problem with sizing like this lies in the fundamental characteristics of volatility. Without getting too technical, these things are more or less true: -In the long term, most markets exhibit mean reverting volatility. In other words, there is a more or less average vola level that most markets trade at. When it gets far above or below it tends to come back. -In the short term, volatility tends to trend a bit more than price. Low volatility begets low vola and high begets high. Volatility has a "memory"... persistence of volatility shocks. This is what Garch models are all about. (In my experience they describe volatility well but have limited forecasting ability.) -Volatility tends to cluster. You will have extremely high or low volatility events clustered close together on a timeline. -The behavior of volatility is complex... extremely low volatility conditions can actually lead to explosions in volatility. (this is probably a result of mean reversion.) So... think about this... when volatility is lowest it may be ready to explode... at that time you are putting on your largest position because you size that way. I don't use any volatility sizing in my trading systems, but there may be opportunities I'm missing. For a system like this, traded without stops, position sizing is difficult at best. You could size to a certain risk at 2 standard devs of average loss, but that could be refined to be dependent on current volatility... which then leads you back to the same problem... Not an easy answer, but this is good background to keep in mind on volatility.