Momentum · daily rule · Indexes & ETFs
PMO Signal Cross on S&P 500 ETF
What the play says
Latest reading: PMO 0.63 · Signal 0.52
SPY with the play, last two years
Shading shows the play's call from the close that triggered it.
Price Momentum Oscillator and 10-day signal
Dashed line at 0.
Growth of $10,000 since 2005
Log scale. After trading costs, with T-bill interest while out.
The record
The play against buying and holding SPY over exactly the same dates, after costs.
| Play, since 2005 | Hold, since 2005 | Play, 5 yrs | Hold, 5 yrs | |
|---|---|---|---|---|
| Annual return | +4.1% | +11.0% | +7.7% | +13.9% |
| Total return | +139% | +861% | +44% | +91% |
| Worst drawdown | −32.1% | −55.2% | −16.3% | −24.5% |
| Volatility | 10.8% | 18.9% | 9.9% | 17.1% |
| Sharpe ratio | 0.26 | 0.55 | 0.41 | 0.62 |
| Time invested | 52% | 100% | ||
| Switches per year | 17.3 | 0 |
Every call, graded
Right on 123 of 380 closed calls (32%). In calls averaged +0.5%; out calls saw SPY move +0.8% on average.
| Called | Call | Price | Until | SPY moved | Result |
|---|---|---|---|---|---|
| Oct 5, 2026 | IN | $774.83 | now | +0.4% | open |
| Sep 29, 2026 | OUT | $764.20 | Oct 5, 2026 | +1.4% | ✕ wrong |
| Sep 25, 2026 | IN | $771.35 | Sep 29, 2026 | −0.9% | ✕ wrong |
| Aug 21, 2026 | OUT | $763.82 | Sep 25, 2026 | +1.0% | ✕ wrong |
| Aug 4, 2026 | IN | $769.42 | Aug 21, 2026 | −0.7% | ✕ wrong |
| Jul 16, 2026 | OUT | $748.86 | Aug 4, 2026 | +2.7% | ✕ wrong |
| Jul 15, 2026 | IN | $752.94 | Jul 16, 2026 | −0.5% | ✕ wrong |
| Jun 3, 2026 | OUT | $750.44 | Jul 15, 2026 | +0.3% | ✕ wrong |
| Apr 7, 2026 | IN | $655.90 | Jun 3, 2026 | +14.4% | ✓ right |
| Jan 20, 2026 | OUT | $672.33 | Apr 7, 2026 | −2.4% | ✓ right |
| Jan 5, 2026 | IN | $682.39 | Jan 20, 2026 | −1.5% | ✕ wrong |
| Jan 2, 2026 | OUT | $677.88 | Jan 5, 2026 | +0.7% | ✕ wrong |
An in call is right when the price rose before the next call; an out call is right when it fell. The latest 12 of 381 calls shown.
How the play works
- The PMO is a 20-day smoothing of 10 × a 35-day smoothing of the 1-day percent change. Each smoothing is an exponential average that weights the newest day by 2/n instead of the usual 2/(n+1).
- In when the PMO crosses above its 10-day EMA signal line.
- Out when it crosses below.
StockCharts warns that PMO crossovers can whipsaw a lot and are best used as alerts, not as a mechanical system.
How the smoothing is started is not documented. Here it starts from the first value.
Where the rules come from
The case against
Valeriy Zakamulin tested moving-average timing on up to 155 years of U.S. stock data and found no statistically significant edge in the second half of that record. The rules earned their keep in a few severe bear markets and lagged buy and hold for long stretches in between.