Alan Ross

Alan Ross Forex

Free Forex Indicators, MetaTrader Tools and Honest Trading Guides

Indicators

Support and Resistance vs Fibonacci: Eight Ways to Draw a Level, All Within Six Points

Key takeaways

  • I measured eight different ways of drawing a level — swing highs and lows, daily pivots, Fibonacci retracements, round numbers and Bollinger Bands — on the identical 16,926 EURUSD 5-minute bars, with the identical touch rule.
  • They all landed between 55.2% and 61.1% held. Eight methods, a spread of six points, and no separation worth trading.
  • Randomly invented levels held 59.8% — fourth place out of nine, ahead of swing highs and lows, daily pivots and 100-pip round numbers.
  • Fibonacci produced 32,561 touches, four times more than swing levels, because three ratios on every swing blanket the chart. More lines did not mean more information: 59.5% held, -0.08 pips a touch.
  • Bollinger Bands were the only level type with a positive average (+0.26 pips) — and it still lost 764 pips after the spread.
  • Resistance held better than support in every single method, by 1.9 to 10.9 points. It is the only consistent asymmetry in the whole study.

Every trader who draws levels believes their method of drawing them is the one that matters. Fibonacci people think swing highs are crude. Pivot people think Fibonacci is numerology. Round-number people think both are overthinking it. It is a settled argument in a hundred forums and it has never, as far as I can tell, been settled with a number.

So I settled it. One dataset — 16,926 EURUSD 5-minute bars, June 3 to August 26, 2026 — and one rule applied to every method without exception. A touch is a bar whose range covers the level within 2 pips, approached from one side, with a 12-bar cooldown. The level “held” if price was still on the approach side 24 bars later. Nothing is tuned per method. Whatever the levels are, they get judged the same way.

And to keep everyone honest, I added a ninth contestant: 2,778 levels at randomly chosen prices, generated by a seeded number sequence and placed inside the same price range. If a drawing method cannot beat that, it is not a method.

Which way of drawing a level held best?

EURUSD chart showing Fibonacci retracement levels alongside horizontal pivot lines
Level typeLevelsTouchesHeldAvg pipsNet after cost
Bollinger Bands 20/2dynamic1,04061.1%+0.26-764.5
Round numbers, 50-pip1023360.5%-0.01-234.3
Random invented levels2,77853,25459.8%+0.04
Fibonacci 38.2 / 50 / 61.81,92632,56159.5%-0.08-35,145.8
Daily pivots (PP, R1/R2, S1/S2)3607,32459.2%-0.11-8,117.4
Round numbers, 10-pip411,35458.6%-0.46-1,979.9
Swing highs and lows, 10 bars2,7788,09256.3%-0.11-9,000.8
Round numbers, 100-pip710756.1%+0.11-95.7
Swing highs and lows, 40 bars6994,54355.2%-0.25-5,675.3

Nine rows, six points from top to bottom, and the invented levels sitting in fourth place. Every method that traders argue about beat the random control by less than the random control beat the method most of them actually use.

The last column is the one that ends the debate. Every method loses money after a 1-pip spread — the cost I measured directly in my spread and swap costs test. There is no winner here to switch to.

Why does Fibonacci generate 32,561 touches?

Two EURUSD charts side by side comparing Fibonacci levels and swing high and low levels

Because three ratios drawn on every swing is not a level, it is a mesh. My Fibonacci set takes each consecutive pair of 20-bar swings and places the 38.2%, 50% and 61.8% retracements between them — the standard construction, and the one behind my earlier Fibonacci retracement test on EURUSD. That produced 1,926 levels and four times as many touch events as any other method.

MethodTouches per 1,000 barsHeld
Fibonacci retracements1,92459.5%
Swing highs and lows (10 bar)47856.3%
Daily pivots43359.2%
Round numbers, 10-pip8058.6%
Bollinger Bands6161.1%
Round numbers, 50-pip1460.5%

Read those two columns against each other and the pattern is that there is no pattern. The method that fires 1,924 times per thousand bars and the method that fires 14 times per thousand bars finished within one point of each other. Whether a chart is covered in lines or has six of them, price is on the same side two hours later about six times in ten.

That is not an argument for Fibonacci, by the way. It is an argument against reading anything into a Fibonacci touch: with 1,926 levels in a 386-pip range, price is never more than a fraction of a pip from one.

Do daily pivots behave differently line by line?

Pivots are the one method with named, individually meaningful lines, so they get their own table. This is also the fairest test in the study — 360 levels, each valid for exactly one day, each computed from the previous day’s high, low and close with no fitting whatsoever.

Pivot lineTouchesHeldAvg pips
R11,49260.3%0.00
R21,32359.9%+0.38
S21,25659.1%-0.07
PP (central pivot)1,76058.7%-0.31
S11,49358.0%-0.44

The famous one — the central pivot, the line most systems build around — finished fourth of five. The two resistance lines took the top two places. And the whole table is contained inside 2.3 points, which is less than the difference between a 2-pip and a 3-pip zone width on identical levels.

Why did resistance beat support everywhere?

This is the only finding in the study that survived every method, and it is worth stating carefully.

Level typeSupport heldResistance heldGap
Round numbers, 50-pip54.6%65.6%+10.9
Round numbers, 10-pip56.8%60.4%+3.6
Daily pivots57.4%60.8%+3.4
Fibonacci57.8%61.0%+3.2
Swing highs and lows55.1%57.5%+2.4
Round numbers, 100-pip55.2%57.1%+1.9

Six methods, six times the same direction. Ceilings held better than floors on EURUSD across this window. The simplest explanation is not about psychology at all: EURUSD drifted lower over these three months, so any line above price had the general direction of the market helping it hold and any line below price had it working against. That is the same trend dominance that turned the whole result in my main support and resistance test — +0.45 pips with the EMA 200, -0.45 against it.

Which means the honest reading is: this is not a property of resistance, it is a property of a falling market. Do not carry it into a rising one.

Are Bollinger Bands a better level than a horizontal line?

Marginally, and for a reason that has nothing to do with support and resistance. The bands finished top of the table at 61.1% held and +0.26 pips — the only positive raw average among the dense methods.

But a Bollinger Band is not a fixed price, it is two standard deviations from a 20-bar mean, so touching it is by construction a statement that price has stretched away from its recent average. You are not measuring a level, you are measuring extension. That is why it behaves like the mean-reversion result in my Bollinger squeeze test rather than like a horizontal line, and why the details of band settings matter — I worked through those in my Bollinger Bands settings guide.

Even so: 1,040 touches, +0.26 pips each, and a 1-pip spread. 764 pips of net loss. The best level type in the study still cannot pay its own way.

What does the random control actually prove?

It proves the measurement is measuring the price series, not the levels. Five seeds produced 59.7%, 59.8%, 59.8%, 59.8% and 60.0% — a 0.3-point spread across roughly 53,000 touches each. That is an extraordinarily stable number for a set of lines with no meaning at all.

So when a real method scores 59.5% or 59.2%, it has scored the background rate. Six times out of ten, price on a five-minute chart is on the same side of an arbitrary line two hours after touching it, because five-minute EURUSD oscillates. Any drawing method inherits that number for free and then has to prove something on top of it. None of the eight did.

This is the same discipline that changed my reading of arrow indicators in why arrow indicators repaint: a signal has to be compared against what you would get for nothing, not against zero.

What I would actually do with this

  • Stop switching methods. Swing highs, pivots, Fibonacci and round numbers finished inside six points of each other and all lost money. Changing which lines you draw is not a fix.
  • Treat 59% as the floor, not the score. Random lines held 59.8%. Any method at or below that has demonstrated nothing.
  • Prefer fewer lines. 50-pip round numbers scored 60.5% off 233 touches. Fibonacci scored 59.5% off 32,561. The sparse method tells you where you are; the dense one tells you nothing and feels like more.
  • Do not export the resistance-beats-support gap. It appeared in all six methods, and it most likely just describes a falling EURUSD over these three months.
  • If you want the mean-reversion effect, use the band, not the line. Bollinger touches were the only positive raw average here — because they measure extension, not location.

Frequently asked questions

Is Fibonacci better than regular support and resistance?

Statistically yes, practically no. Fibonacci retracements held 59.5% of the time against 56.3% for 10-bar swing levels, but they generated 32,561 touches against 8,092 and lost 0.08 pips per touch. Randomly placed levels held 59.8% on the same bars, so Fibonacci’s advantage is inside the noise.

Do pivot points work on EURUSD?

They hold at the background rate. Across 7,324 touches of 360 daily pivot levels, 59.2% held, with R1 the best line at 60.3% and the central pivot fourth at 58.7%. All five lines fit inside 2.3 points of each other and the set lost 8,117 pips after costs.

Do round numbers act as support and resistance in forex?

Slightly better than most alternatives, and on a small sample. 50-pip levels held 60.5% across 233 touches and 100-pip levels 56.1% across 107. Their averages were the closest to break-even in the study (-0.01 and +0.11 pips), but neither cleared the spread.

Which support and resistance method is most accurate?

Bollinger Bands at 61.1%, followed by 50-pip round numbers at 60.5%. Both beat random levels at 59.8% by under two points, and neither was profitable after a 1-pip cost. The honest answer is that accuracy does not separate these methods.

Why does resistance hold better than support?

On this data it held better in all six methods tested, by 1.9 to 10.9 points — but EURUSD fell across the sample window, so lines above price had the trend helping them. It is a directional artefact, not a rule about ceilings. My best hours to trade EURUSD study shows how much this pair’s behaviour depends on the window you measure.

How were all these levels tested identically?

Same 16,926 EURUSD 5-minute bars, same 2-pip touch tolerance, same 12-bar cooldown, same 24-bar outcome window, entry at the touching bar’s close and a 1-pip cost. No parameter was tuned per method. The full method write-up is in my support and resistance test, and the settings grid in my MT4 settings guide.

Should I combine several level types for confluence?

Consider what confluence means at this density: 1,926 Fibonacci levels and 2,778 swing levels inside a 386-pip range means almost every price is a confluence of something. My candlesticks against MACD comparison found the same thing about confirmation generally — agreement between two dense signals is close to guaranteed and therefore close to meaningless.

Want a clean indicator to install right now?

It is my own enhanced DeMARK Trend Line indicator for MetaTrader 4 and 5. Non repaint, clean, and free.

Download the Free DeMARK Indicator

Written by Alan Ross

Forex trader and MetaTrader indicator developer. I build and test MT4 and MT5 tools, then write the honest version of how they actually work. More about me.

Last reviewed September 2026
Alan Ross
Alan Ross

Forex educator and indicator developer. I build and trade my own MetaTrader tools, and share the ones that genuinely help.

Leave a comment

Your email address will not be published. Comments are reviewed before they appear.