Data, Supporting Evidence, In-Depth Discussion

 The basics of the strategy are as follows:

  • The portfolio is divided into two "buckets" and trades are executed twice per month.
    • The screen/selection process is run for bucket 1 after the close on the final day of the month and trades are executed on the first of the month on the close (market-on-close orders).
    • The screen/selection process is run for bucket 2 after the close of the 9th trading day of the month and trades are executed on the 10th trading day of the month on the close (market-on-close orders).
  • Market trend filter -
    • For bucket 1...
      • The system evaluates the long term trend of the market
      • If the long term trend of the overall market is up, the top 10 stocks as ranked by a proprietary momentum score, evaluated on a long-term basis (discussed below) are purchased and held for bucket 1 - there are no stops or profit targets. At the end of the month, the algorithm is run again and the portfolio is adjusted accordingly.
    • For bucket 2...
      • The system evaluates the medium term trend of the market
      • If the medium term trend of the overall market is up, the top 10 stocks as ranked by a proprietary momentum score, evaluated on a medium-term basis are purchased and held for bucket 2 - there are no stops or profit targets. In the middle of the following month, the algorithm is run again and the portfolio is adjusted accordingly.
  • Selection of stocks – what to buy when the system is invested?
    • For each bucket 10 stocks are chosen each month with equal weighting across the 10 stocks at outset.
    • Stock level filter – stocks below their long term trend are disqualified and stocks exhibiting negative momentum are disqualified .
    • Overbought filter – while momentum has shown to be persistent over longer time periods, research shows that it is less persistent over shorter periods. As such, the strategy filters out stocks that have had aggressive short term moves. This doesn’t have much effect on long term risks/returns, but at a granular level, this makes the system more “comfortable” and easier to stick with.
    • Ranking – After filtering the universe with the above criteria, the index is ranked based on a proprietary momentum score. The top 10 stocks in each bucket according to the momentum score are bought/held when the portfolio is invested.
    • Rotation – Each month, the above process is run. If a stock is disqualified due to any of the above filters, or if it falls out of the top 10 ranking in each bucket, it is replaced (or the allocation is moved to cash if no new stocks pass the filters).
    • Positions are not rebalanced for growth/loss at the position level. E.g. If the system holds a stock for a few months and the position grows to encompass greater than a 1/20 allocation, the system does not reduce the position size to bring the allocation relative to the portfolio down. Similarly, if a held position losses value, it is not rebalanced higher back to a 1/20 allocation. Newer positions may have a larger or smaller allocation in the portfolio relative to older holdings because of this. The concept here is to stay true to the concept of letting winners run and not adding to losers.
  • Concentration:
    • If a stock is deemed a buy in both buckets 1 and 2, the model portfolio takes a "double position." E.g. At the beginning of the month, bucket 1 indicates that the model will buy AAPL and takes a 1/20 portfolio level position. Later in the month bucket 2 deems that AAPL is a buy as well, thus the model will buy a 1/20 portfolio level position in AAPL the next day. Since both bucket 1 and bucket 2 have purchased AAPL, the portfolio level position will be about a ~10% allocation at outset.

Backtest details:

  • The backtest begins with an initial investment of $100k
  • Standard commission rates for Interactive Brokers are used (.5 cents per share, minimum commission per trade 1.04, max commission per trade 50bps notional)
  • Trades are executed via market-on-close orders, so technically there is no slippage
  • All data is sourced from Dow Jones & Thompson Reuters – both industry leading data providers known for data integrity and reliability
  • Dividend adjustment – All prices are adjusted for capital reconstructions and special dividends. Prices are not adjusted for ordinary cash dividends. This means that actual results will likely be better than simulated results as a result of dividends collected when trading the system. Note that the system is benchmarked against the S&P 500 total return index, which DOES include dividends. This means that, for the sake of comparison, we are actually giving the Buy & Hold benchmark a “head start.” Despite that fact, the Alpha Momentum Strategy still substantially outperforms Buy & Hold.
  • Historical index constituents – All indices are adjusted for adds/deletes, meaning that simulations run on historic dates reflect exactly how the underlying index was made up on that date. The S&P 500 today looks nothing like it did in mid-1990, and that is something for which the testing accounts.


First off, what is Robusticity? The alpha momentum strategy is robust. I tested for robusticity across all indicators and parameters used, the number of positions held, when in time the rebalance occurs, and even across different stock universes (I tested the strategy on several US and Australian stock markets and the results were solid across the test sets).

So is this the holy grail?

NO! Since this is a systematic or rules-based strategy, the mental cost of decision making in the portfolio management process is significantly reduced relative to a discretionary trading strategy. That said, in order to achieve the results of the strategy, an investor has to faithfully commit to actually trading the strategy. There will be times when the strategy underperforms Buy & Hold, sometimes these times of underperformance will be extended in duration, and sometimes the underperformance will be significant (for example, there were three periods - early 1989, early 1991, early 2010 - when the system underperformed buy & hold on a trailing 12 month basis by 20% or more). An investor would need the fortitude to stick with the strategy throughout these periods of relative underperformance in order to reap the benefits of the strategy. There is no easy way around this. Any strategy that significantly outperforms passive investing will have times of underperformance - this is the way of the investment world, and anyone who tells you differently is likely trying to con you. Before starting to trade a system, it is important that an investor understands that there will be periods of underperformance and has committed to seeing the strategy through these difficult times.

Other commentary:

The simulations encompass several types of market cycles, including bull markets, bear markets, crashes, inflationary periods and deflationary periods. Ultimately, we will never know if a system that has performed well in the past will do so in the future until we trade it (the boilerplate language “past performance is not indicative of future results” comes to mind), but when thinking about investment options, it is important to think about your options in terms of alternatives. Given the data and the robusticity of the system, I think that this system gives an investor the best chance at outperforming buy & hold, perhaps significantly, on both an absolute and risk-adjusted basis. The rules are simple enough to remain flexible to changing market conditions, price momentum (the bedrock upon which the strategy is built) is a well-researched and historically persistent market phenomenon, and this strategy has shown that, at least historically it has significantly outperformed passive Buy & Hold investing. I invest a significant amount of my own capital using this strategy.