Indicators · Original research · June 1, 2025 – June 1, 2026 (12 months)

MACD cross: 12-month backtest results (zero-line vs signal-line)

Search "MACD strategy" and you will find two different trades wearing the same name. The MACD line is just EMA(12) minus EMA(26) — so the moment it crosses the zero line is, mathematically, the exact moment the 12-period EMA crosses the 26-period EMA. The other trigger — the MACD line crossing its own 9-period signal line — fires earlier and far more often, and it is a genuinely different system. Most articles quoting a "MACD win rate" never say which of the two they tested.

We tested the one that can be pinned down honestly today: the zero-line cross, run as EMA(12)/EMA(26) crosses on 1-hour BTC and ETH candles across 12 months of real Binance data — long when the fast EMA closes above the slow, short on the inverse, 1×ATR(14) stop, 2R target, 1% risk, costs on. The signal-line cross is not yet a primitive in our engine, so its results are queued rather than borrowed or estimated. The exact rules, the numbers and the distinction most articles skip are below.

Secuora Verification

Verified Result

25/ 100
Weak / Unverified

Weak: the mechanical version barely cleared, or failed to clear, the fee hurdle.

Markets tested
2
Markets profitable
0 / 2
Total trades
559
Win rate
30.9%
Profit factor
0.70
Avg net P&L
-48.3%
Avg max drawdown
52.0%
Best market
ETH -35.2%
MarketTFTradesWinPFMax DDNet
ETH1h26632.3%0.7942.3%-35.2%
BTC1h29329.7%0.6261.6%-61.3%
How the SVS 25 breaks down ▾
Edge (profit factor)
4 / 35
Robustness (markets)
0 / 20
Sample size
18.3 / 20
Drawdown control
2 / 15
Consistency
0.8 / 10

12 months of real 1-minute data, fees on (0.05%/side), $10k start, 1% risk. How the score works →

The exact rules we tested

  1. Compute EMA(12) and EMA(26) on 1-hour candles; the MACD line is their difference — EMA(12) minus EMA(26).
  2. Enter long when the MACD line crosses above zero — by construction, the exact candle on which EMA(12) closes above EMA(26).
  3. Enter short when the MACD line crosses below zero (EMA(12) closes below EMA(26)); both directions, no session filter (crypto trades 24/7).
  4. Stop 1×ATR(14) from entry; target 2R.
  5. Risk 1% of equity per trade; 0.05% commission per side; 10× max notional leverage.
  6. Not tested here: the signal-line cross (the MACD line crossing its 9-EMA) — a different, faster trigger that is not yet a supported primitive in the engine.

Results

Binance spot 1-minute klines (data-api.binance.vision), aggregated per strategy timeframe · starting balance $10,000 · risk 1%/trade · Commission 0.05% per side; no spread/slippage modeled (BTC/ETH spot spreads are sub-basis-point); position size capped at 10× notional leverage. Generated 2026-06-12 by the Secuora ai-strategy deterministic runner (same engine as the in-app AI backtester).

BTCUSDT
1h candles · 8,760 bars
Trades
293
Win rate
29.7%
Profit factor
0.62
Net P&L
-61.3%
Expectancy / trade
−$21
Avg R multiple
-0.31
Max drawdown
-61.6%
Fees paid
$4,034
MonthTradesWin rateNet P&L
2025-062433%−$614
2025-072631%−$729
2025-082536%−$468
2025-092330%−$728
2025-101822%−$675
2025-112722%−$835
2025-123027%−$661
2026-011932%−$267
2026-021724%−$356
2026-033426%−$532
2026-043043%$135
2026-052025%−$401
ETHUSDT
1h candles · 8,760 bars
Trades
266
Win rate
32.3%
Profit factor
0.79
Net P&L
-35.2%
Expectancy / trade
−$13
Avg R multiple
-0.15
Max drawdown
-42.3%
Fees paid
$2,631
MonthTradesWin rateNet P&L
2025-062429%−$621
2025-072730%−$583
2025-082143%$327
2025-092429%−$615
2025-101937%−$20
2025-112733%−$254
2025-122119%−$911
2026-011338%−$2
2026-022227%−$446
2026-032236%−$33
2026-042532%−$319
2026-052138%−$45

Assumptions (how loose terms were pinned down)

  • The MACD line is EMA(12)−EMA(26), so the MACD ZERO-LINE cross is mathematically identical to the EMA 12/26 cross — that is what this run tests
  • The signal-line (9-EMA of MACD) cross is a different trigger and is not yet a supported primitive
  • Stop 1×ATR(14); 2R target; 24/7

One indicator, two strategies — and why published results never agree

The MACD zero-line cross and the EMA 12/26 cross are not similar — they are the same trade, entry for entry, because the MACD line is positive exactly when EMA(12) sits above EMA(26). That equivalence is worth internalizing: anyone selling "MACD" as something deeper than a moving-average cross at the zero line is selling packaging. The signal-line cross is the genuinely distinct variant — a 9-EMA smoothing of the MACD line that flags momentum turning before the regime actually flips, so it trades more often, earlier, and with more noise.

Now count the degrees of freedom in a typical "MACD strategy" article: which cross (zero or signal line), which settings (12/26/9 or something "optimized"), which timeframe, which exits, costs on or off. Five unstated choices produce wildly different stats from the same indicator — which is why quoted MACD win rates range from coin-flip to implausible. Ours are reproducible because every choice is pinned above; when you compare them to another article, the first question is always: which cross did they test?

How to backtest the MACD cross on Secuora

Both versions of the trade are testable today — one automated, one by hand:

  • Open the free replay demo at /backtest/demo (no sign-up) and add MACD to the chart — it ships built in, alongside EMA, RSI, Bollinger, VWAP, ATR and Stochastic.
  • Set the timeframe to 1h to mirror this test (the demo replays real BTC data) and step through the chart bar by bar.
  • To trade every zero-line cross with simulated stop-loss and take-profit orders — 1×ATR stop, 2R target — sign up free and run the sessions in the replay terminal; a meaningful 30+ trade sample needs its longer history anyway.
  • To automate it, open the AI backtester at /backtest/ai and describe the rule in plain English: the EMA 12/26 cross is a supported primitive, and it IS the zero-line cross.
  • Re-run with one change at a time — timeframe, stop multiple, settings — and compare expectancy and drawdown, not just win rate, before believing any variant.

Methodology, in one paragraph

Data: Binance spot 1-minute klines (data-api.binance.vision), aggregated per strategy timeframe, June 1, 2025 – June 1, 2026 (12 months). Execution: Secuora’s deterministic strategy runner (the same engine behind the in-app AI backtester) — single position at a time, entries at the close of the signal candle, commission 0.05% per side; no spread/slippage modeled (btc/eth spot spreads are sub-basis-point); position size capped at 10× notional leverage, starting balance $10,000, 1% risk per trade. Swings are confirmed fractals with no look-ahead. These are mechanical results: no discretion, every signal taken. Past performance does not predict future results; this is research, not financial advice.

Frequently asked questions

Is the MACD cross the same as an EMA cross?

The zero-line cross is — exactly, not approximately. The MACD line is EMA(12) minus EMA(26), so it is positive precisely when EMA(12) is above EMA(26), and the zero-line cross produces an identical trade list to the EMA 12/26 cross. The signal-line cross (the MACD line crossing its 9-EMA) is a genuinely different, faster trigger.

What are the best MACD settings?

12/26/9 is the default, and it is the setting almost every published result actually uses. Changing the numbers changes regime sensitivity — faster settings give more signals and more chop losses, slower settings enter later in bigger trends — so there is no universally "best" combination. Test a change against the default on the same data rather than optimizing blindly; settings that win one regime routinely lose the next.

What win rate does the MACD cross strategy have?

It depends on which cross, the timeframe and the exits — which is why quoted numbers disagree so much. For the version pinned on this page (zero-line cross on 1-hour BTC/ETH, 1×ATR stop, 2R target, costs on), the measured win rate is published in the results table above. Crossover entries with 2R targets typically run low win rates and live off occasional large trends — and in this 12-month run the hard 2R cap kept the winners from paying for the losers, so expectancy finished negative on both symbols. Judge expectancy and drawdown, not the win rate alone.

Why don’t you publish signal-line cross results?

Because our engine does not ship a signal-line-cross primitive yet, and we only publish numbers our own deterministic engine produced on real data. The zero-line results can be published because that cross is mathematically the EMA 12/26 cross, which is a supported primitive. The signal-line variant lands here the moment its primitive ships.

Run your own version of this test

Change the window, the stop, the target, the instrument — describe it in plain English and Secuora’s AI backtester runs it through the same engine that produced these numbers. Or replay the chart bar by bar and trade it yourself.

More strategy research

ICT / Smart Money
ICT Silver Bullet: backtest results on 12 months of real data
ICT / Smart Money
Fair Value Gap strategy: 12-month backtest stats
Breakout
Opening Range Breakout: 12-month backtest, win rate and stats
ICT / Smart Money
Liquidity sweep reversal: 12-month backtest results
Trend / Momentum
EMA 50/200 golden cross: what it does intraday (real results)
Sessions
London session breakout: 12-month backtest results
Sessions
Trading the New York open: two mechanical readings, 12 months of data
Sessions
NY opening drive: 12-month backtest results
Sessions
Power hour (15:00–16:00 NY): 12-month backtest results
ICT / Smart Money
Turtle Soup: backtest results for the intraday failed-breakout fade
ICT / Smart Money
Golden pocket: the 0.618–0.65 zone, pinned to testable rules
Price Action
Supply and demand zones: exact rules and the backtest plan
Price Action
Break and retest: exact rules and the backtest plan
Indicators
RSI divergence strategy: exact rules and the backtest plan
Candlestick Patterns
Inside bar breakout: exact rules and the backtest plan
Candlestick Patterns
Engulfing candle strategy: exact rules and the backtest plan
Mean Reversion
Mean reversion with RSI: 12-month backtest results on real data
Scalping
Momentum scalping on 1-minute charts: what fees actually do
Indicators
VWAP bounce: the rules, the anchor problem, and the backtest plan
Breakout
Donchian 20-bar channel breakout: 12-month backtest on real data
Indicators
Stochastic %K/%D cross in oversold/overbought zones: 12-month backtest
Trend / Momentum
VWAP cross trend on 5-minute charts: what 24/7 markets do to it
Breakout
Previous-day high/low break: the closest-to-breakeven result in our research
Mean Reversion
Fading the stretch: 3% from the 50 SMA, mean reversion backtest
Trend / Momentum
Rate-of-change momentum: trading the 24-bar surge, 12-month backtest
Breakout
Bollinger squeeze breakout: trading the volatility expansion, 12-month test
Trend / Momentum
HTF trend filter + 20 EMA pullback: 12-month backtest on real data