The Moving Average Crossover strategy uses two moving averages of different periods to generate buy and sell signals. It appoximates the idea of a trending market by using 2 SMAs, one short fast SMA(50) and another slow longer SMA(200). It buys whenever a short SMA(50) crosses up a long SMA(200), thereby implying that the direction of the market has changed. It sells once a short SMA(50) crosses down a long SMA(200). These are fairly long MAs, which means that this strategy is naturalyl meant to capture bigger moves, and thereby might not be a good fit for short time frames. But assumptions like that do not mean anything, because we've backested it! See youself.
Backtest covers 32.5 years of SPY β’ Daily (SPDR S&P 500) data, from January 29, 1993 to July 11, 2025.
Equity curve is the strategy's performance over time. You should compare it to the asset's Buy & Hold performance. In general, you want the blue area to be well above the gray area.
Drawdown is how much losses (realized or unrealized) the strategy has had if compared to the highest equity peak. Compare this to the asset's drawdown to see whether your strategy does a decent job of isolating you from downside volatility. In general, the red area must be well within the gray area.
So, we have backtested 50/200 SMA cross on 32.5 years of SPY β’ Daily candles.Β This backtest resulted in 15 positions, with the average win rate of 87% and reward-risk ratio of 3.82.Β If you assume that 3.82 reward-to-risk ratio holds, you need a minimum win rate of 20.8 to be profitable. So you're looking good so far.Β However, 15 positions is a small sample size, so take the results with a huge grain of salt.Β The key metrics are as follows:
With that exposure in mind, you can tell that for 72% time-in-market, you get 85.64% of the asset upside potential, and 57.32% of the asset downside potential.
All of the following: # "Papa" D Simple Moving Average (50, 0, close) Crosses β D Simple Moving Average (200, 0, close)
All of the following: # "India" D Simple Moving Average (50, 0, close) Crosses β D Simple Moving Average (200, 0, close)
Yo fam, this 50/200 SMA cross strategy is actually pretty lit! π₯ Looking at those 32.5 years of data, we're seeing some seriously juicy numbers that got me hyped.
The win rate is absolutely bonkers at 87% with a 3.82 risk/reward ratio - that's the kind of setup that makes my Wendy's paycheck look like pocket change! πͺ The average winner brings in 25.45% while the average L is only -6.66%. Plus, with only 15 total trades over this period, you're not getting killed by commission fees or having to watch charts 24/7.
One thing that's keeping me from going full YOLO though is that the strategy slightly underperformed buy & hold (1127% vs 1316%). But here's the big brain play - it only had 71.6% market exposure, meaning you're carrying way less risk during rough patches. That -32.5% max drawdown compared to the market's -56.7% is the kind of protection that helps you sleep at night while holding those diamond hands! ππ The recent performance has been a bit choppy, but looking at those 2-5 year returns got me ready to bet the farm! π
Dios mΓo, this strategy is terrible! 15 trades in 32 years? Are you planning to trade once every two years or what? This is ridiculous!
The win rate looks impressive at first - 87% sounds amazing, no? But with only 15 trades, it's meaningless estadΓstica! You could flip a coin 15 times and get 13 heads - it doesn't make it a reliable system. And look at the market exposure - 71.6% means you're basically following the market like a lost puppy, but doing worse than simple buy and hold! You're underperforming by almost 200 percentage points!
The drawdown of -32.5% is atrocious for such a slow strategy. With this kind of performance, you might as well put your money under the mattres! And look at those recent numbers - -91.6% over 6 months? Β‘Madre mΓa! This is the kind of performance that makes people jump from buildings!
If you're seriously considering trading this estrategia, I suggest you find a new hobby - maybe collecting stamps or feeding pigeons. At least you won't lose money that way. This is not a trading strategy, it's a retirement plan for snails!
Total Trades | 15 | Net Profit | 1127.3% | Buy & Hold Profit | 1316.3% |
Win Rate | 87% | Reward/Risk Ratio | 3.82 | Max Drawdown | -32.5% |
Asset Max Drawdown | -56.7% | Exposure | 71.6% | Avg Candles in Position | 388.7 |
Sharpe Ratio | 0.63 | Sortino Ratio | 1.13 | Realized Volatility | 11.15% |
Max Winning Streak | 9 | Avg Winning Streak | 4.3 | Max Losing Streak | 1 |
Avg Losing Streak | 1.0 | Avg Trades per Month | 0.1 | Avg Trades per Day | 0.0 |
Return Std Dev | 31.5 | Loss Std Dev | 3.2 | Win Std Dev | 31.7 |
Expectancy | 3.2 | Beta | 0.5 |
backtest | exposure | peformance vs asset | drawdown vs asset | win% | reward/risk |
---|---|---|---|---|---|
BTCUSDT β’ 1 Minute | 57% | (5.4%/8.9%) 0.61x | (-2.0%/-1.9%) 1.05x | 39 | 5.4 |
EURUSD β’ 1 Minute | 61% | (-1.1%/-1.0%) 1.10x | (-1.2%/-1.2%) 1.00x | 20 | 1.1 |
GLD β’ 1 Minute | 52% | (1.7%/0.0%) Infinityx | (-2.5%/-5.5%) 0.45x | 36 | 2.5 |
NVDA β’ 1 Minute | 61% | (1.2%/16.7%) 0.07x | (-7.9%/-4.4%) 1.80x | 28 | 2.9 |
SPY β’ 1 Minute | 60% | (0.5%/4.6%) 0.11x | (-2.5%/-2.1%) 1.19x | 33 | 2.3 |
TSLA β’ 1 Minute | 47% | (6.6%/-10.3%) -0.64x | (-11.2%/-21.4%) 0.52x | 39 | 2.1 |
WMT β’ 1 Minute | 41% | (-0.5%/-5.4%) 0.09x | (-3.9%/-6.4%) 0.61x | 29 | 2.4 |
BTCUSDT β’ 10 Minutes | 57% | (18.2%/22.4%) 0.81x | (-8.6%/-12.1%) 0.71x | 41 | 3.1 |
EURUSD β’ 10 Minutes | 55% | (2.5%/5.8%) 0.43x | (-2.2%/-4.3%) 0.51x | 38 | 2.4 |
GLD β’ 10 Minutes | 58% | (26.1%/43.7%) 0.60x | (-5.9%/-8.3%) 0.71x | 54 | 3.1 |
NVDA β’ 10 Minutes | 57% | (5.0%/32.9%) 0.15x | (-33.4%/-42.8%) 0.78x | 44 | 1.4 |
SPY β’ 10 Minutes | 60% | (6.6%/14.3%) 0.46x | (-13.4%/-20.7%) 0.65x | 41 | 1.9 |
TSLA β’ 10 Minutes | 47% | (18.4%/59.0%) 0.31x | (-34.8%/-55.3%) 0.63x | 41 | 1.9 |
WMT β’ 10 Minutes | 60% | (37.4%/40.1%) 0.93x | (-10.3%/-23.8%) 0.43x | 62 | 1.8 |
BTCUSDT β’ 1 Hour | 56% | (36.4%/68.2%) 0.53x | (-31.3%/-30.6%) 1.02x | 43 | 2.2 |
EURUSD β’ 1 Hour | 50% | (6.9%/6.8%) 1.01x | (-5.7%/-9.0%) 0.63x | 42 | 2.4 |
GLD β’ 1 Hour | 60% | (35.8%/117.6%) 0.30x | (-26.6%/-22.2%) 1.20x | 36 | 3.0 |
NVDA β’ 1 Hour | 61% | (783.4%/3126.3%) 0.25x | (-51.4%/-68.0%) 0.76x | 52 | 3.5 |
SPY β’ 1 Hour | 64% | (85.7%/106.7%) 0.80x | (-19.0%/-35.1%) 0.54x | 61 | 2.3 |
TSLA β’ 1 Hour | 55% | (2930.2%/1395.5%) 2.10x | (-38.7%/-75.1%) 0.52x | 56 | 6.0 |
WMT β’ 1 Hour | 60% | (33.6%/138.2%) 0.24x | (-28.4%/-26.9%) 1.06x | 50 | 1.6 |
BTCUSDT β’ Daily | 59% | (638.7%/1337.5%) 0.48x | (-61.1%/-76.6%) 0.80x | 83 | 7.3 |
EURUSD β’ Daily | 35% | (4.8%/10.8%) 0.44x | (-12.2%/-23.3%) 0.52x | 71 | 0.7 |
GLD β’ Daily | 61% | (242.9%/595.1%) 0.41x | (-36.4%/-45.3%) 0.80x | 46 | 6.4 |
NVDA β’ Daily | 65% | (83183.3%/373678.5%) 0.22x | (-57.1%/-90.0%) 0.63x | 77 | 16.0 |
SPY β’ Daily | 72% | (1127.3%/1316.3%) 0.86x | (-32.5%/-56.7%) 0.57x | 87 | 3.8 |
TSLA β’ Daily | 57% | (3139.0%/24185.2%) 0.13x | (-65.4%/-75.0%) 0.87x | 38 | 25.3 |
WMT β’ Daily | 64% | (1143.9%/13022.2%) 0.09x | (-57.1%/-50.6%) 1.13x | 39 | 8.1 |