ATMResearch
Join Overfit - free
Overfit cover card: a fine blueprint drawing of a two-lever mechanical interlock on a deep ink-blue ground, a tall primary lever thrown over and a shorter second lever raised into the permitting position, a jointed linkage running down to an open sectioned gate, with a ghosted outline showing the same lever dropped and the gate shut. Kicker 'Indicator study', headline 'Don't replace your MACD. Ask it for a second opinion.', subhead '9,216 backtests, and the popular answer loses to a coin flip.', corner badge '6 markets 1993 to 2026'.
  1. Overfit/
  2. Research/
  3. OBV MACD vs. Traditional MACD: 9,216 Backtests Say You Are Asking the Wrong Question

January 10, 2025

OBV MACD vs. Traditional MACD: 9,216 Backtests Say You Are Asking the Wrong Question

Share

11 min read

Written by Ali Casey, founder of StatOasis and AlgoChef, creator of the Algo Trading Masterclass (ATM), with over 10 years of experience building systematic trading tools - building algorithmic strategies, testing ideas with data, and teaching traders how to build structured, portfolio-based trading workflows.

Published January 10, 2025 · Updated September 17, 2026 · Method

← Back to Research
Table of contents▾
  • TL;DR: the answer box
  • How we tested
  • What stops a study like this from lying to me?
  • Does OBV MACD beat traditional MACD?
  • Why does the OBV MACD look good in some write-ups?
  • What happens at the default 12/26/9 settings?
  • What does the confirmation actually cost?
  • Does confirmation make more money, or just less trouble?
  • Which MACD settings hold up across all six markets?
  • Why does confirmation work, if OBV is a lagging indicator?
  • Where does this finding not hold?
  • Does any of this beat buying the index?
  • The verdict, and the honest limits
  • What are the limits of this result?
  • What this means for you
  • Where else have I tested this?
  • Methodology
  • FAQs

The short version

Swapping your MACD for an OBV MACD improved profit factor in 44.4% of 3,072 matched backtest pairs, worsened it in 53.1%, and left it unchanged in 2.5%. It lost more often than it won. Keeping the MACD and using OBV as permission improved it in 67.3%, cut the worst drawdown in 85.7% of pairs, and cost 42% of the trades. Replace is the wrong verb.

TL;DR: the answer box

  • Replacing MACD with OBV MACD loses. Better profit factor in 44.4% of 3,072 matched pairs, better net profit in 47.5%, better Sharpe in 40.5%. Every one of those is below the coin flip.
  • And it does not travel. The replacement beat plain MACD on profit factor in 65% of pairs on QQQ and 16% on IWM. Whatever that is, it is not one result that held across the six markets tested.
  • Adding OBV to the MACD you already have wins. Better profit factor in 67.3% of pairs, better Sharpe in 64.2%, and a smaller worst drawdown in 85.7%, with a median change across all pairs of 21.32 percentage points.
  • At the default 12/26/9, on the long side, with no time exit, confirmation beat plain MACD on profit factor in all six markets. The replacement beat it on three.
  • The bill is trades. Confirmation removed 42.0% of them at the median and cut time in the market from 38.1% to 22.6%. On the long side, net profit improved in only 30.4% of pairs.
  • None of the three beat owning the index. The best long-side SPY variant of any construction made $60,732 over 33 years. Buy and hold made $551,738, at a 56.5% worst drawdown instead of 20.9%.

How we tested

There is one rule here and it never changes. Enter long when a MACD line crosses above its own signal line. Exit when it crosses back below. Shorts are the mirror.

What changes is what the crossover is measured on.

ConstructionWhat the crossover is measured on
MACDEMA(fast) minus EMA(slow) of the close, against its own EMA(signal). Gerald Appel's original, published in 1979, and the control condition here.
OBV-MACDThe identical construction applied to On-Balance Volume, Joseph Granville's 1963 running total of signed volume. This is the ["OBV MACD" script that circulates on TradingView](https://www.tradingview.com/script/jXvqrU4q-OBV-MACD-Indicator/).
MACD+OBVThe traditional MACD's entry, allowed through only when the OBV MACD histogram already agrees. The exit is left untouched.

That third row is the one nobody tests, and it is the one people are actually searching for. There is good published work on the MACD by itself, including QuantifiedStrategies' statistics page, which reports an 81.41% success rate and a 1.51 profit factor, and a three-variant test across six markets at Quant Signals. Neither touches OBV. The closest anyone gets to the volume question is an MQL5 walkthrough of MACD and OBV patterns inside an expert advisor, which tests one symbol inside one framework, so the result cannot be separated from the framework.

Six markets. SPY (8,398 bars, 1993 to 2026), QQQ (6,866, 1999 to 2026), IWM (6,537, 2000 to 2026) and DIA (7,153, 1998 to 2026) as cash ETFs, plus ES and NQ (5,026 each, 2007 to 2026) as difference-adjusted continuous futures. 39,006 daily bars in total. On-Balance Volume needs volume that means something, which is what rules out the back-adjusted energy and currency contracts in the rest of my universe: their volume is partly a measurement of the contract roll.

The sweep is fast EMA 5, 8, 12, 19 and 24 against slow EMA 13, 26, 35 and 52, sixteen surviving pairs, four signal lengths (5, 9, 14, 18), four protective time exits (0, 5, 10, 20 bars), both directions, all six markets, all three constructions. 9,216 variants. $35,000 starting account, no compounding, flat-only, signals read at the close and filled at the next open. No commission, no slippage, no exchange fees anywhere on this page. All 9,216 clear the 50-trade reliability floor; the median variant takes 221 trades.

What stops a study like this from lying to me?

Three design rules, and each one closes a way it could have.

  1. Every OBV row is paired with its own control. For each OBV variant there is a price MACD variant with the same market, the same fast, slow and signal periods, the same side and the same time exit. Nothing else differs. So the question is not "can I find an OBV setting that made money", because with 9,216 rows of course I can. The question is "of 3,072 matched pairs, how often did the volume actually help".
  2. The confirmation gates entries only. Gating the exit as well would change what the strategy does rather than how selective it is, and the confirmed row would stop being comparable with the row it is paired to. That is the same discipline I used on the RSI(2) filter study, and for the same reason.
  3. Both sides run on every configuration. Nobody recommends shorting a MACD crossover on an index with a thirty-year uptrend, and the short side is in the grid anyway. A volume indicator that only works long has not been shown to read volume. It has been shown to be long.

Two honesty baselines sit behind every number below, computed rather than typed: buying and holding each market over the same bars on the same sizing, and a seeded random entry that fires as often as this study's own median variant and holds as long. Both are in the methodology block at the foot of this page.

Does OBV MACD beat traditional MACD?

No. It loses on every measure that matters, and it loses to a coin flip.

MeasureOBV-MACD betterTiedWorseMedian change
Net profit47.5%0.0%52.5%-$1,224
Profit factor44.4%2.5%53.1%-0.02
R-expectancy43.7%4.1%52.2%-0.01
Sharpe ratio40.5%8.1%51.3%-0.01
Worst drawdown45.9%0.0%54.1%3.08 points deeper
Trade count59.2%3.5%37.3%4 more trades

Every OBV-MACD variant against the price-MACD variant with identical settings. 3,072 matched pairs.

Read the ties column before you read anything else. The results grid is rounded to two decimals, so a metric with a narrow numeric range produces genuine ties, and counting a tie as a loss is how a 50/50 result becomes a headline. Sharpe ties in 8.1% of pairs. Even handing OBV-MACD every one of those ties, it is still behind.

Replacing price with volume sits under the coin flip on all four measures. Confirming price with volume clears it on all four.

The one column OBV-MACD wins is trade count, and more trades is not a result. It is a bill.

Why does the OBV MACD look good in some write-ups?

Because it beats price MACD in a majority of matched pairs on three of the six markets on profit factor, and on only two of them on Sharpe. Pick the right two to test and you will publish a good article.

MarketPairsOBV-MACD: better profit factorMACD+OBV: better profit factor
SPY51234.2%45.7%
QQQ51265.4%71.3%
IWM51216.2%69.3%
DIA51257.8%57.0%
ES51234.2%71.9%
NQ51258.6%88.3%

Share of 512 matched pairs per market in which the OBV version had the better profit factor.

One of these two constructions travels between markets. The other one swings 49 points between two US equity indices.

Sixteen percent on IWM. Sixty-five on QQQ. These are both US equity index ETFs, quoted on the same exchanges, driven by the same macro, and the replacement's verdict flips almost completely between them. That means the replacement's verdict is decided by which of these six markets you test it on, not by the indicator alone, and it is exactly what running six markets is for. I have made the same point from the other direction before, in the breakout study that ran one rule across the Nasdaq, the S&P and the Dow.

The confirmed version swings too, from 45.7% on SPY to 88.3% on NQ. The difference is not the width of the range, it is where the range sits: five of the confirmed version's six markets are above the coin flip, and the replacement's six straddle it.

What happens at the default 12/26/9 settings?

This is the row almost everybody actually trades, so it deserves its own table. Long side, crossover in and crossover out, no time exit.

MarketConstructionTradesNet profitWorst drawdownProfit factorR-expectancyExposure
SPYMACD362$53,47321.4%1.490.2750.3%
SPYOBV-MACD352$30,90955.3%1.240.1350.5%
SPYMACD+OBV198$30,20318.3%1.550.3027.2%
QQQMACD278$27,49293.9%1.160.0951.1%
QQQOBV-MACD289$33,46780.0%1.200.1249.9%
QQQMACD+OBV149$14,04877.1%1.180.0927.9%
IWMMACD260$54,38438.5%1.450.2649.9%
IWMOBV-MACD251$33,77347.8%1.270.1649.4%
IWMMACD+OBV138$55,48422.1%1.910.5328.7%
DIAMACD291$42,33121.2%1.440.2450.0%
DIAOBV-MACD296$38,94729.3%1.380.2050.2%
DIAMACD+OBV167$24,91816.6%1.460.2628.4%
ESMACD206$101,31231.7%1.370.2150.5%
ESOBV-MACD209$111,61233.5%1.410.2050.9%
ESMACD+OBV118$99,50033.6%1.630.3530.5%
NQMACD195$199,09046.4%1.480.2551.5%
NQOBV-MACD214$258,49034.2%1.600.3149.6%
NQMACD+OBV106$156,27060.8%1.560.2928.6%

Bold marks the best of the three on that measure in that market.

At 12/26/9, on the long side, with no time exit, the confirmed version beat plain MACD on profit factor in all six markets. The replacement beat it in three.

Six markets, one setting, three constructions. The trade count under each bar is the part nobody quotes.

IWM is the row to sit with. Plain MACD: 260 trades, $54,384, a 38.5% worst drawdown. Confirmed: 138 trades, $55,484, a 22.1% worst drawdown. Slightly more money, on 138 trades against 260, through a drawdown 16 percentage points shallower. That is not a better indicator. That is the same indicator, asked to shut up more often.

What does the confirmation actually cost?

Trades. Fewer of them, everywhere, without exception.

MeasureMACD+OBV betterTiedWorseMedian change
Net profit62.8%0.0%37.2%$7,914
Profit factor67.3%3.5%29.3%0.06
R-expectancy66.3%5.2%28.5%0.03
Sharpe ratio64.2%8.7%27.1%0.02
Worst drawdown85.7%0.0%14.3%21.32 points shallower
Trade count0.0%0.0%100.0%107 fewer trades

The same 3,072 matched pairs, for the confirmed construction.

That trade-count row is not a typo. In every one of 3,072 pairs, the confirmed version took fewer trades than its control. A filter that never removes anything is not a filter, so this is what it should look like, and it is still worth staring at: the median pair gave up 107 trades. Time in the market falls from 38.1% to 22.6%.

ConstructionMedian exposureMedian trades per yearMedian bars per trade
MACD38.1%10.288.36
OBV-MACD37.5%10.438.15
MACD+OBV22.6%6.008.43

Note the last column. Median hold time is about the same across all three, 8.15 to 8.43 bars. The confirmed version's lower exposure comes from taking fewer trades, not from holding them longer: six a year instead of ten.

Every configuration, not the median of them. The confirmed cloud sits left and above the other two, at 42% fewer trades and a 1.38 median profit factor against 1.28 for plain MACD, which is what an effect looks like when it is not one lucky setting.

Does confirmation make more money, or just less trouble?

Less trouble, mostly. On the long side, net profit improved in only 30.4% of pairs. Confirmation removes trades in a thirty-year uptrend, and the trades it removes include winners. What improves on the long side is the strategy you're left with: profit factor better in 71.9% of pairs, Sharpe in 65.0%, worst drawdown in 75.5%.

That split is the entire trade, stated in one line: you get a strategy with better risk-adjusted quality, and a smaller one. If net profit is your only number, this filter looks like a downgrade. It is the reason I stopped reading net profit on its own years ago, after building an equity curve I was proud of that turned out to spend eleven months underwater in the middle.

Which MACD settings hold up across all six markets?

The slow ones, on the confirmed long-side MACD+OBV build, and the gap is wide.

A single best row is a lottery ticket, so this is scored the other way: for each of the 256 parameter configurations, was it profitable on all six markets at once, and what was its median profit factor across them.

ConstructionConfigurationsProfitable on all six marketsMedian profit factorMedian R-expectancy
MACD25691.8%1.2770.140
OBV-MACD25680.9%1.1950.095
MACD+OBV25680.9%1.3820.203

Long side. Every signal length and time exit pooled into each configuration.

Plain MACD is the most reliably positive of the three, on 91.8% of configurations. It is also the flattest: its best cell in the parameter map reads 1.35 and its worst reads 1.17. The confirmed version trades some of that reliability for a much higher ceiling.

Same axes, same colour scale, three constructions. The third panel is the only one with a corner in it.

That corner is the tradable region, and it is worth naming precisely.

RegionConfigurationsProfitable on all sixMedian profit factorMedian trades
Slow corner: fast 12 or more, slow 35 or more, signal 14 or more4891.7%1.6490
Fast corner: fast 8 or less, slow 26 or less6453.1%1.26221

Forty-eight configurations, not one. That is what makes it a region rather than a lucky cell: move the fast leg from 12 to 24, the slow leg from 35 to 52 and the signal from 14 to 18, and 91.7% of those configurations are still profitable on all six markets, with a median profit factor of 1.64 across them. A result that only survives at one setting is a result about that setting.

The fast corner does the familiar thing. More signals, worse signals, and half the configurations cannot stay positive across six markets. If you want the same lesson on a different indicator, it is the whole argument of the ADX write-up.

Why does confirmation work, if OBV is a lagging indicator?

Because the crossings OBV agreed with earned about twice as much.

Take every bullish 12/26/9 crossing in each market's history and split it by whether the OBV MACD histogram was already above zero at that moment. Then measure each one the way the strategy exits it: in at the open after the crossing, out at the open after the next opposite crossing.

MarketCrossingsOBV agreed: per tradewin rateOBV disagreed: per tradewin rate
SPY362+0.44%45.5%+0.41%43.9%
QQQ278+0.27%46.3%+0.30%41.9%
IWM260+1.15%42.0%-0.03%39.3%
DIA291+0.43%43.1%+0.40%43.5%
ES206+0.48%44.9%+0.05%39.8%
NQ195+0.56%48.1%+0.32%48.3%
All six1,592+0.54%44.9%+0.26%42.7%

Pooled, a crossing OBV agreed with earned 2.1 times what one it disagreed with earned. The confirmed group led in five of the six markets taken singly.

The trigger is the price MACD crossing its signal line. The permission is the OBV MACD sitting above zero. The window was picked mechanically as the stretch with the most balanced mix of both.

The mechanism is unglamorous, and I think that is why nobody writes about it. Nothing here asks OBV to call the turn earlier, and nothing here tests whether it can. What the filter asks is duller and much narrower: had volume's own moving averages already crossed the same way price's had. When they had not, the crossover still fires, and the trades that followed earned less than half as much. You pay a trade to find out which kind you had.

Where does this finding not hold?

One measurement answers the opposite way, and I am reporting it because it is true. Score the same crossings on a fixed twenty-day window instead of the strategy's own exit, and on SPY the vetoed crossings come out ahead. Both numbers are real. Only one of them is about this strategy, because only one of them exits where the strategy exits. If you go looking for this effect with a different exit rule, you may not find it.

Does any of this beat buying the index?

No, and it is not close.

MarketBest variant, any constructionBuy and holdCrossover worst drawdownBuy-and-hold worst drawdown
SPY$60,732$551,73820.9%56.5%
NQ$303,980$494,89028.5%58.3%

The best variant is selected on its own history and is the number least likely to repeat. Both columns are the same $35,000 sizing basis through the same metric engine.

The left panel exists so the right one cannot lie. Every curve on the right is a real result and none of them beat holding the thing.

Thirty-three years of MACD crossovers on SPY, at the best setting I can find after the fact, produced about 11% of what doing nothing produced. What they bought was a 20.9% worst drawdown instead of 56.5%, on a variant that held a position 51.9% of the time. Across the whole MACD sweep the median is 38.1%, so the median setting sat out more than it held.

That is a real trade and it is not the trade most people think they are making. If the appeal of a MACD system is that it will beat the index, this data says no. If the appeal is that you would like to own less of a 56% drawdown, this data says yes, and the confirmed version says it loudest.

The random control makes a related point from underneath. On SPY, a control that asked for 302 random entries and filled 233, each held 8 bars and averaged over 10 seeds, made $26,337, with a spread of $17,243 across the seeds. On SPY alone, the median long MACD variant made $31,113. The gap between them is smaller than the control's own spread, and by the rule this study set itself, a result inside that spread has not beaten luck.

The verdict, and the honest limits

Where the hype is right: volume does add something to a MACD. Confirming a price crossover with an OBV crossover improved profit factor in 67.3% of 3,072 matched pairs, improved risk-adjusted return in 64.2%, and shrank the worst drawdown in 85.7% of them, with a median change across all pairs of a 21.32-point reduction. That effect showed up on five of six markets and on both sides of the trade. Of the three measures tracked here, drawdown improved the most consistently: 85.7% of pairs, ahead of profit factor's 67.3% and Sharpe's 64.2%.

Where the hype is wrong: in this test, the OBV MACD is not a better MACD. As a replacement it lost to the coin flip on profit factor, on net profit, on R-expectancy and on Sharpe, and its verdict swung 49 points between two US equity ETFs. The popular framing, "which one wins", has an answer and the answer is "neither, use one to check the other".

And the claim everyone repeats. The OBV MACD is said to signal up to five bars earlier, a figure that circulates widely and is quoted back by AI assistants. It has never been published with a test attached, and it is not tested here either. What is tested is whether the OBV construction converts its timing into a better trade. On four of the six markets it did not improve Sharpe, and at 12/26/9 it beat plain MACD on profit factor in three of the six. Lead time is not the claim to argue about. The trade is.

What are the limits of this result?

There are several, and two of them are load-bearing.

  • Frictionless. No commission, no slippage, no exchange fees. The confirmed version takes 42% fewer trades, so per-trade costs land on it more lightly than on plain MACD, and the plain MACD's numbers are the flattered ones. I have not rerun the sweep with a cost model, so the size of that is untested here.
  • Six markets, one asset class. All six are US equity indices. This says nothing about currencies, energy, crypto or single stocks, and the back-adjusted contracts I excluded were excluded because OBV on a rolling futures series is partly measuring the roll.
  • Daily bars only. Nothing here transfers automatically to an intraday chart, where volume has a session shape that a daily bar hides completely.
  • The long side carries the profit. Short crossover variants were profitable in 0.6% of plain MACD configurations and 4.9% of confirmed ones. The confirmation makes the short side less bad. It does not make it good.
  • The mechanism is exit-dependent. As above, the per-crossing edge reverses on SPY under a fixed twenty-day window. The finding is about this rule with this exit.
  • Two of the six markets overlap heavily. SPY and ES track the same index, as do QQQ and NQ. Six markets is not six independent samples, and the agreement between each pair is a consistency check rather than out-of-sample proof. If you want the version of that argument with the receipts, it is in the robustness testing piece.
  • The slow corner is scored on the same six histories that found it. Forty-eight configurations profitable at once is evidence against a single lucky setting, not evidence that the region would hold on data the sweep never saw. No holdout period tests that.

What this means for you

  1. Do not replace your MACD. The evidence for the OBV MACD as a standalone indicator is a coin flip: it fails to beat plain MACD on Sharpe in four of the six markets, and on profit factor in three. If you installed the TradingView script and swapped it in on a daily chart of SPY, IWM or ES, swap back: on those three the replacement lost a majority of matched pairs on profit factor. On QQQ, DIA and NQ it won a majority on that measure. That frictionless daily grid is the ground this was tested on.
  2. Add the OBV MACD as a second panel and use it as a veto. Take the price crossover only when the OBV MACD histogram is already above zero for longs, below zero for shorts. Leave your exit alone. That is the whole change.
  3. Expect to trade about 42% less. Six trades a year instead of ten, at the median across every setting tested. If you cannot sit through that, this filter will not survive contact with you, and knowing that in advance is worth more than the backtest.
  4. Judge it on drawdown, not on profit. Net profit improved in 30.4% of long pairs and the worst drawdown improved in 75.5%. If you check whether it "made more money", you will conclude it failed. It did not fail. It changed what you are buying.
  5. Use slow settings, on the confirmed long-side MACD+OBV build. Fast 12 or more, slow 35 or more, signal 14 or more. That corner was profitable on all six markets in 91.7% of its 48 configurations, at a 1.64 median profit factor. The fast corner managed 53.1%.
  6. Do not expect to beat the index with it. Nothing in this test's long-side variants did: not one of the three constructions, on any of the six markets, at the best setting found after the fact. What it bought here, across both sides of the trade, was a smaller worst drawdown in 85.7% of the 3,072 matched pairs, with a median change across all pairs of a 21.32-point reduction. That is a legitimate thing to want, as long as you are honest with yourself that it is the thing you are buying.

Where else have I tested this?

I covered the "add this to your MACD" idea on the channel in MACD Isn't Enough! Add This to Boost Your Trades (OBV MACD). The video is still a decent walkthrough of the setup. The number attached to it is now this page's, not that one's. If you want the neighbouring tests, The Secret Volume Indicator Traders Ignore covers the volume oscillator, which I wrote up in full in the volume oscillator study, and Volume Confirms Pullbacks? I Tested It 33,000 Times is the closest prior version of the confirm-with-volume question.

One more piece of context worth having before you run this on your own chart: a crossover system's results depend enormously on whether the market is trending or ranging, which is the subject of the market regimes article. Every test on this page pools both, on purpose, because I would rather report the average of a real history than the good half of it. Every test I run gets written up this way and goes out first through Overfit.

This is research, not investment advice. Everything above is a backtest on historical data with no trading costs in it, and a backtest is a description of the past, not a promise about the next trade.

Every test I run gets written up like this one, numbers and all, before anyone else sees it. StatOasis.com/Overfit

Methodology

Data source
Daily OHLCV for six markets from the StatOasis research dataset: SPY, QQQ, IWM and DIA as cash ETFs, and E-mini S&P 500 (ES) and E-mini Nasdaq 100 (NQ) as difference-adjusted continuous futures. Difference adjustment rather than ratio adjustment because futures here are sized at one contract and scored in dollars, and only additive back-adjustment preserves point moves across a contract roll. Volume is required by the study and is read from each source file's own volume column.
Date range
SPY 1993-02-02 to 2026-06-12 (8,398 bars). QQQ 1999-03-10 to 2026-06-26 (6,866). IWM 2000-06-28 to 2026-06-26 (6,537). DIA 1998-01-20 to 2026-06-26 (7,153). ES 2007-01-03 to 2026-07-01 (5,026). NQ 2007-01-03 to 2026-07-01 (5,026). 39,006 daily bars and 9,216 variants in total, 1,536 per market.
Entry / exit rules
One rule, three constructions. Enter long when a MACD line crosses above its own signal line; exit when it crosses back below; shorts are the mirror. MACD is EMA(fast) minus EMA(slow) of the close against EMA(signal) of that difference. OBV-MACD is the identical construction on Granville's On-Balance Volume instead of price. MACD+OBV takes the price MACD's entry only when the OBV MACD histogram is already on the same side of zero, and leaves the exit untouched, so a confirmed variant and its control differ in exactly one thing. An optional protective time exit of 0, 5, 10 or 20 bars sits behind the crossover exit. Signals are read at the close and filled at the next open.
Sizing
$35,000 starting capital, no compounding. ETFs: whole-share, full-account sizing, the floor of capital divided by entry price. Futures: one contract via BigPointValue, which at recent index levels is several times the account in notional and is why the futures drawdowns run to multiples of the ETF ones. Flat-only, one position at a time. No commission, no slippage and no exchange fees anywhere on this page.
Overlap mode
Flat-only. A signal that fires while a position is open is skipped. The confirmation rate is measured on the raw crossing series rather than on traded signals, so the filter's selectivity is not confounded with the base strategy's occupancy.
Look-ahead
Structurally impossible on this path. A crossover is read from the histogram at bars t and t-1, both already closed, and the fill happens at the open of bar t+1. No variant can trade before both its price and OBV averages have completed their warm-up, because the eligibility mask for the confirmed construction is the price histogram blanked wherever the OBV histogram does not yet exist.
Minimum sample
50 trades, the engine default. All 9,216 variants clear it; the thinnest has exactly 50 trades and the median has 221.
Buy-and-hold benchmark
Each market over its own window on the study's $35,000 sizing basis, through the same metric engine. SPY: $551,738.32 net, 8.82% CAGR, a 56.47% worst drawdown, 0.156 of annual return per unit of drawdown. QQQ: $457,482.92, 10.17%, 83.34%, 0.122. IWM: $170,987.43, 7.06%, 59.51%, 0.119. DIA: $199,069.84, 6.91%, 53.83%, 0.128. ES: $273,725.00, 11.82%, 114.35%, 0.103. NQ: $494,890.00, 14.96%, 58.34%, 0.256.
Random control
Frequency-matched seeded random entries, firing as often as this study's own median reliable variant in that market and holding as long, averaged over 10 seeds from base seed 20260803. SPY at 302 requested entries and an 8-bar hold: $26,337.18 net (sd $17,243.31), 32.04% worst drawdown, 60.09% win rate. QQQ: $28,096.07 (sd $15,119.99). IWM: $10,699.37 (sd $11,406.96). DIA: $21,208.48 (sd $12,889.86). ES: $67,552.50 (sd $46,158.78). NQ: $122,966.00 (sd $90,543.57). Computed by the StatOasis control harness, never typed.
Parameter scopeParameters swept

The study searched the parameter space and reports the spread, not one tuned setting.

9,216 variants: six markets, three constructions, sixteen fast-and-slow pairs drawn from fast 5/8/12/19/24 and slow 13/26/35/52, four signal lengths (5, 9, 14, 18), four protective time exits (0, 5, 10, 20 bars) and both directions. Pairs whose two legs sit closer than five bars apart are excluded, because a fast and a slow average that close are the same average twice and their difference is rounding noise that crosses zero constantly. Held fixed on purpose: the crossover rule itself, which is the thing being tested rather than a free parameter, and the exit on the confirmed construction, which is left ungated so that it stays comparable with its control.

Run to v1.1 of the StatOasis research standard - the rules every study here has to meet before it is published. The version is the study's own: a standard that gained a rule later never reaches back and claims this one met it.

Historical backtest results are not a guarantee of future returns. This content is for educational purposes only and is not investment advice. Hypothetical performance disclosure (CFTC Rule 4.41).

Frequently asked questions

What is the OBV MACD indicator?⌄

It is the ordinary MACD calculation run on On-Balance Volume instead of on price. You take Granville's running total of signed volume, subtract a slow exponential average of it from a fast one, and compare the result to its own signal line. The crossover rule is identical to the MACD you already know. Only the input changes, from closing price to accumulated volume.

Is OBV MACD better than the traditional MACD?⌄

No, not as a replacement. Across 3,072 matched pairs, where each OBV MACD variant is compared with a price MACD carrying identical fast, slow and signal periods on the same market and the same side, the OBV version had the better profit factor in 44.4% of pairs and the better net profit in 47.5%. Both are worse than a coin flip. It also did not travel: it beat plain MACD on profit factor in 65% of pairs on QQQ and in 16% on IWM.

Does OBV MACD really signal earlier than MACD?⌄

The earlier-signal claim is repeated everywhere, including by AI assistants, and it has never been published with a test attached. This study did not measure lead time directly, and it did not confirm that OBV's crossover arrives earlier at all. What it can say is whether trading the OBV-based signal produced a better trade than trading the price-based one. On three of the six markets the OBV construction produced a worse profit factor than the price MACD it was competing with, and on the other three it produced a better one. If it is arriving earlier, that is not showing up as a better trade.

Should you use OBV with MACD or instead of MACD?⌄

With. Requiring the OBV MACD histogram to already agree with the price MACD crossover, above zero for a bullish crossover and below zero for a bearish one, improved profit factor in 67.3% of 3,072 matched pairs, improved the Sharpe ratio in 64.2%, and reduced the worst drawdown in 85.7% of them, with a median change across all pairs of a 21.32-point reduction. At the default 12/26/9 setting, on the long side, with no time exit, it beat plain MACD on profit factor in all six markets tested.

What are the best MACD settings?⌄

For the confirmed version, the slow end of the grid. Configurations with a fast leg of 12 or more, a slow leg of 35 or more and a signal of 14 or more were profitable on all six markets in 91.7% of cases, with a median 1.64 profit factor over about 90 trades. The fast corner, a fast leg of 8 or less against a slow leg of 26 or less, managed 53.1% and a 1.26 profit factor over 221 trades. More signals, worse signals.

Does adding a volume filter to MACD reduce drawdown?⌄

Yes, and it is the strongest thing the filter does. The worst drawdown fell in 85.7% of the 3,072 matched pairs, and the median change across all of them was a 21.32-point reduction. On the long side alone it fell in 75.5% of pairs. That is a more consistent effect than anything the filter does to profit: worst drawdown improved in 85.7% of pairs against 67.3% for profit factor and 62.8% for net profit.

How many trades does OBV confirmation remove?⌄

42.0% at the median, and it removed trades in every single one of the 3,072 matched pairs without exception. Time in the market drops from 38.1% to 22.6%. On the long side that costs real money: net profit improved in only 30.4% of pairs, confirmation removes trades in a thirty-year uptrend, and the trades it removes include winners.

Does the MACD crossover beat buy and hold?⌄

Not on these six markets. The best long-side SPY variant of any of the three constructions made $60,732 over 33 years on a fixed $35,000 account. Buying and holding SPY over the same bars made $551,738. What the crossover bought was a 20.9% worst drawdown against buy-and-hold's 56.5%, and that variant holding a position 51.9% of the time instead of all of it.

Does OBV MACD work on futures as well as stocks?⌄

The confirmed version worked on both the tested index futures and the tested cash ETFs. The replacement helped on one and hurt on the other. On E-mini S&P 500 futures, confirming improved profit factor in 71.9% of matched pairs while replacing improved it in 34.2%. On E-mini Nasdaq futures the split was 88.3% against 58.6%. Both futures series are difference-adjusted continuous contracts, so their volume carries a contract roll that a cash ETF does not.

Is On-Balance Volume still useful?⌄

As a second opinion, yes. Pooled across 1,592 bullish MACD crossings on the six markets, a crossing that OBV agreed with earned +0.54% per trade against +0.26% for one it disagreed with, measured from the open after the crossing to the open after the next opposite crossing. That is 2.1 times as much, and the confirmed group led in five of the six markets taken one at a time.

Read the Strategies, Backtested hub
← Back to Research

Table of contents

  • TL;DR: the answer box
  • How we tested
  • What stops a study like this from lying to me?
  • Does OBV MACD beat traditional MACD?
  • Why does the OBV MACD look good in some write-ups?
  • What happens at the default 12/26/9 settings?
  • What does the confirmation actually cost?
  • Does confirmation make more money, or just less trouble?
  • Which MACD settings hold up across all six markets?
  • Why does confirmation work, if OBV is a lagging indicator?
  • Where does this finding not hold?
  • Does any of this beat buying the index?
  • The verdict, and the honest limits
  • What are the limits of this result?
  • What this means for you
  • Where else have I tested this?
  • Methodology
  • FAQs

Overfit - the newsletter

Skip the hype. Trust the data.One practical takeaway per issue.

Running a quick security check before this can be sent.

Delivered +2 times a month - when the work is ready, not on a calendar.I'll never sell your address.Unsubscribe in one click, any time.

Related Articles

Back to all research
#143

RSI vs Stochastic vs Williams %R: 33,792 Backtests

Sep 24, 2026 · 12 min read

33,792 backtests across RSI, Stochastic and Williams %R on four index ETFs: the setup matters more than the indicator. 89.7% of long-side variants made money against 8.8% of short-side, and buying dips beat chasing breakouts 55.7% to 42.9%.

Read more→
#142

The Better-RSI Showdown: We Tested 4 RSI Upgrades on SPY, QQQ, IWM, and DIA

Sep 10, 2026 · 10 min read

1,856 backtests across four RSI families on SPY, QQQ, IWM and DIA: Connors RSI and Z-Score RSI modestly beat plain RSI on median risk-adjusted return, Laguerre RSI was the worst of the four despite its lag-free marketing, and the simplified three-condition Triple RSI tested here does not reproduce the popular win-rate claim.

Read more→

Overfit - the newsletter

Skip the hype. Trust the data.

One practical, evidence-driven takeaway per issue - strategy testing, portfolio construction, market structure, trading psychology, tactical asset allocation.

Running a quick security check before this can be sent.

Delivered +2 times a month - when the work is ready, not on a calendar.I'll never sell your address.Unsubscribe in one click, any time.

StatOasis is calm, evidence-based algorithmic-trading education, founded by Ali Casey. Ali builds systematic trading strategies and teaches the workflow behind them: research, build, test, combine, deploy. He writes the Overfit newsletter, published since 2024, and runs the Algo Trading Masterclass.

Socials

  • X ↗
  • YouTube ↗
  • Instagram ↗
  • LinkedIn ↗
  • GitHub ↗
  • Muck Rack ↗
  • LinkedIn SO ↗
  • GitHub SO ↗

Products

  • Overfit - the newsletter
  • Algo Trading Masterclass
  • StatOasis Community
  • 36 Ways to Buy the Dip
  • AlgoChef ↗

Reading & tools

  • Research
  • Methodology
  • Survive the Decade
  • Wall of Love

StatOasis

  • About Ali Casey
  • Contact
© 2026 StatOasis. Calm, evidence-based.
PrivacyTermsHypothetical resultsCalifornia