Studies - Posted on Wednesday, December 30, 2009, 8:12 PM GMT +1


Dec Wednesday 30

Update: How To Make A Million (%) Trading The SPYDER

This is an update to my previous posting How To Make A Million (%) Trading The SPYDER – Part I.

By streamlining a couple of conditions and the respective set of parameters as well as utilizing Bollinger Bands for identifying areas of short-term mean reversion tendencies, I was able to increase cumulative returns 10-fold (22,’3 mio. % since 01/01/1990) and to achieve a compounded annual growth rate of 85.13%, while maximum drawdown and the respective maximum number of sessions in a drawdown were cut in half (with respect to the long side of the strategy, now 8.86% only during a 20-year time frame).

But although the model is not ‘adaptive‘ (no additions/changes/cancellations/modifications to conditions, parameters and/or dependencies based on the then current market environment), and although with respect to out-of-sample or walk-forward testing the odds of selecting something which was all by chance (and purely random) decreases exponentially as one uses a larger test set (in this case more than 5,000 data points/trading days), and although the model shows a t-score in excess of 1.645 in almost all of the last 20 years (means there is a low probability that the model’s out-performance in comparison to the general market occured by chance only), there is still the risk of overfitting which will be my major concern and challenge for the next couple of weeks (taking some complexity out of the model).

Table I below shows the (updated) SPY‘s (S&P 500 ETF) performance (cumulative returns) since 01/01/1990. Setup 2 represents the long side (long trades only) of the strategy, setup 3 represents the short side (short trades only) of the strategy, and setup 1 the overall stratgey as a combination of long and short trades.

All initial basic parameters are still in place (leaving room for improvement and optimization at a later stage), and the model is still not optimized on the short side, which means a short trade is always triggered if no buy setup is triggered although it might be wise to take no position at all (instead of going short) if no edge is provided on any side of the market:

  • For backtesting the SPY (SPDR S&P 500 ETF) will be utilized (adjusted for dividend and cash payments in order to track the S&P 500 as close as possible) which corresponds generally to the price and yield performance, before fees and expenses, of the S&P 500 Index.
  • Positions will be entered into or an open position closed at the market’s regular close only (market-on-close orders).
  • No (intraday) stops (buy and/or sell stops) will be used even if the SPY (S&P 500 EFF) is being utilized.
  • No position sizing, the model is always ‘all in‘ (e.g. no Kelly, optimal f, fixed fraction, …).
  • No leverage taken (no double or triple-leveraged ETFs are used).
  • No abnormal market filter will be used (e.g. during phases of extremly high/low volatility, strong trending markets, the market’s lacking compliance to the model’s forecasts with a resultant number of consecutive losses and/or serious drawdown, and and and)
  • No adaptations (no changes and/or cancellations/additions of formulas, conditions, and model parameters over the course of the lifetime of the model/during backtesting).
  • The model (and respective performance figures) does not account for slippage, transactions costs (commissions, exchange and regulatory fees), and interest on idle balances.

Year by year performance stats can be found here (1990 – 1999) and here (2000 – 2009). Please click on ‘View full size‘ on the top right of the picture(s).

Figure I below shows the respective equity curve (setup 1 as the combination of long and short trades, setup 2 -longs only- and setup 3 -shorts only-) from 01/01/1990 to 12/31/1999.

Figure II below shows the respective equity curve (setup 2 -longs only- in blue, and setup 3 -shorts only- in red) from 01/01/2000 to 12/31/2007.

Figure III below shows the respective equity curve (setup 2 -longs only- in blue, and setup 3 -shorts only- in red) from 01/01/2008 to 12/28/2009.

For those interested in, the model’s signals will be posted from January 4, 2010 (next Monday) onward regularly shortly before the close (but even if posted shortly after the close, the SPY is still availabe for trading with good liquidity and narrow spreads of regularly $0.01) via Twitter Update by following a new Twitter account @Strategy_I . (making further improvements to the model – e.g. optimization of the short side and reducing the chance of overfitting – as well as introducing position sizing, leverage, abnormal market filters, implementing buy/sell stops and probably making the model ‘adaptive‘ will be an ongoing process in 2010)

But please be reminded that past performance is never an indication (leave alone a guarantee) for future performance, and for good reason the CFTA and NFA (COMPLIANCE RULE 2-29: USE OF PROMOTIONAL MATERIAL CONTAINING HYPOTHETICAL PERFORMANCE RESULTS) requires all members (which I’m not) to explicitely reference to limitations, risks, lack of liquidity, among others, and publish a respective disclaimer.

Successful trading,


If you might want to be instantly notified about what’s happening in the markets and at TRADING THE ODDS, I encourage you to subscribe to my RSS Feed or Email Feed, and (or) follow me on Twitter.


Disclaimer: No position in the securities mentioned in this post at time of writing.

The information on this site is provided for statistical and informational purposes only. Nothing herein should be interpreted or regarded as personalized investment advice or to state or imply that past results are an indication of future performance. The author of this website is not a licensed financial advisor and will not accept liability for any loss or damage, including without limitation to, any loss of profit, which may arise directly or indirectly from use of or reliance on the content of this website(s). Under no circumstances does this information represent an advice or recommendation to buy, sell or hold any security.

Add to Technorati Favorites

Comments (10)


  1. Bill B says:

    Really looking forward to watching this in real time. Thank you for posting!

  2. BigBill says:

    Sorry for all the questions, this is absolutely fascinating though…. One general question – Not sure if this is my ignorance or you purposely omitted this info but what dictates when a long is triggered? Is it just if a certain condition is met e.g. 1.1 or 2.2 etc, etc.

    Also just curious but how much of an effect does your proprietary indicators maximize results?

    • BigBill,

      the model is currently checking for a potentially long setup first, means if conditons x,y,z …are triggered, and is going short in the event NO buy setup is triggered. The latter is not optimal, because I’m going for the right end of the distribution (means the odds favor a greater move on the upside, see percentage-wise participation in the Top 10% Moves), while filtering out those occurrences where there is only a small (or no) edge on the upside.

      It would be better to filter those occurrences as well where no buy setup is triggered if there is any edge on the short side, and if not, then simply take no position at all and stay in cash on the respective session (it doesn’t make sense to go long or short if no edge is provided). But currently the model is NOT optimized for the short side, means it will take a short position (no questions asked) if no buy setup is triggered.

      The proprietary indicator is very similar to the RSI(2), but quantifying intermedium-term overbought/oversold conditions based on high/low/close data (similar to the ATR Average True Range). At the moment it’s difficult to quantify is’t impact on the model’s performance percentage-wise (but I’ll go into more detail over the course of the next couple of weeks).


  3. CarlosR says:


    Does this mean you will no longer be making your traditional “trading the odds” type posts?

    I would really miss those….

    • CarlosR,

      no, it doesn’t. But until the end of February I’ll be busy moving into a new home and always short of time during the regular session, so respective twiter updates unfortunately will be light. Sorry for any inconvenience caused.


      • CarlosR says:


        No problem — obviously your first priorities should be elsewhere, as they are. I will happily take “light” twitter updates over none!

        Thanks for all your posts this year. Best wishes for a great 2010. I hope it will be a prosperous year for all of us, and that your efforts with the new model will be very successful!

  4. Slinky says:

    Hello, and thank you for an interesting article!

    Could you please make a chart which includes the massive market crunch at early 2000, when the IT bubble burst? I.e. 1990-2008 straight, without splitting it in two 10-year pieces. It would be interesting to see the behaviour.

  5. sjev says:


    Great initial results! Personally I’m getting suspicious when a simple model produces very high sharpes for long periods of time. Performance statistics usually change when you eliminate all data snooping and implement transaction costs.
    From my experience the trading costs could be devastating for the model performance. I would suggest using an approximation in % per trade. Also, i am not sure what kind of backtesting procedure you use. Do you test the performance on the training set? In that case data snooping is introduced with risk of overfitting.

Leave a Reply

Your email address will not be published. Required fields are marked *