← All graded classics

MACD Histogram Momentum

Ride the sign of the most famous momentum indicator ever built.

F

The claim

When the MACD histogram is positive, short-term momentum is up — stay long; when negative, stay short. The simplest systematic reading of the indicator on every chart.

Where it comes from

Gerald Appel created MACD in the late 1970s; Thomas Aspray added the histogram in 1986. The 12/26/9 parameters are the universal default.

The exact rule we graded

Long while the MACD(12,26,9) histogram > 0, short while < 0, on 1-hour candles. Exits: 3-ATR trailing stop, 200-bar time exit.

The honest verdict

FAILS the gate
Net expectancy
+3.5bp
OOS trades
8,345
Win rate
37%
Reward:risk
1.75
  • OOS net expectancy > 0
  • Clears the cost hurdle
  • Robust, not lucky
  • Survivable drawdown
  • Not overfit
Per-asset OOS expectancy
XRP
+12.4bp
DOGE
+10.7bp
ETH
+4.6bp
LINK
+4.3bp
BTC
+1.9bp
BNB
+0.7bp
AVAX
-2.1bp
SOL
-5.0bp
Permanent verification record →Verified — run on our engine + data

Live forward test

since 2026-07-11 — win or lose

The backtest above is history. Since publication, this exact spec also runs in our nightly forward-test harness (the same one behind /forward-tests): only trades entered after publication count, open positions are never force-closed, and the record publishes either way.

No closed forward trades recorded yet — the record accrues nightly as trades complete their full exit windows.

Honest port notes

  • This is the histogram-sign version — the cleanest expressible form of 'trade MACD'. Signal-line crossover timing differs slightly but flips at the same zero crossings.
The exact spec, as graded (JSON)
{
  "name": "MACD Histogram Momentum",
  "universe": [
    "BTC/USDT:USDT",
    "ETH/USDT:USDT",
    "SOL/USDT:USDT",
    "BNB/USDT:USDT",
    "XRP/USDT:USDT",
    "DOGE/USDT:USDT",
    "LINK/USDT:USDT",
    "AVAX/USDT:USDT"
  ],
  "risk": {
    "risk_per_trade_pct": 1,
    "leverage_cap": 3,
    "max_daily_loss_pct": 5,
    "max_dd_halt_pct": 25
  },
  "sleeves": [
    {
      "name": "main",
      "timeframe": "1h",
      "entry": {
        "type": "rule",
        "logic": "all",
        "long": [
          {
            "indicator": "macd_hist",
            "period": 9,
            "op": ">",
            "value": 0
          }
        ],
        "short": [
          {
            "indicator": "macd_hist",
            "period": 9,
            "op": "<",
            "value": 0
          }
        ]
      },
      "exit": {
        "trail_atr": 3,
        "time_exit_bars": 200
      }
    }
  ]
}

Every strategy graded on identical terms: 1-hour candles, 8 liquid USDT perpetuals (BTC, ETH, SOL, BNB, XRP, DOGE, LINK, AVAX), ~6 years of data with a chronological train/test split, real cost hurdle, 1% risk-per-trade sizing, 3x leverage cap. All numbers are out-of-sample (test window only).

Run YOUR version of this strategy
Different thresholds, timeframe, or filter? Paste your exact rules or code and see if your variant survives the same gates.
Grade it free →

A Grade is a historical, out-of-sample statistical measurement — not investment advice, a prediction, or a guarantee. Most strategies fail; a passing grade can stop working as markets change. Risk disclosure