All posts
PublishedUpdatedByFibonacciretracementsupport and resistanceindicatorbacktestUSD/JPY

Does Fibonacci 61.8% Really Hold? 2 Years of USD/JPY Tested

Which Fibonacci retracement level actually holds? Every depth from 10% to 90%, measured across 6,266 USD/JPY swings: no canonical ratio beat the depth next door.

A Fibonacci retracement is a drawing tool. You anchor it to a swing low and a swing high, and it puts horizontal lines at 23.6%, 38.2%, 50%, 61.8% and 78.6% of that range. The premise is that pullbacks tend to stop at those lines.

So which of the five stops price most often? This article measures it.

Testing only those five would not answer the question because one of five levels must rank first even when none is special. Every depth from 10.0% to 90.0% was therefore measured in 0.2% steps, which is 401 levels, to test whether the canonical ratios had higher reaction rates than neighbouring depths. The data is USD/JPY over 2024 and 2025 on the 15-minute, hourly and four-hour charts: 6,266 automatically detected swings.

Past the 30% mark, the share of pullbacks that ended at a level is flat between 3.5% and 4.4%. The five Fibonacci ratios beat the depths within three points of them by an average of minus 0.037 points: no different from the six non-Fibonacci controls at plus 0.046. Depth mattered. The ratio did not.

0%1%2%3%4%5%23.638.25061.878.610%30%50%70%90%retracement depth (percent of the swing)
turn rate — the pullback ended here23.6 / 38.2 / 50 / 61.8 / 78.6%6,266 swings; M15, H1 and H4; 2024 and 2025
Past the 30% mark the line is flat between 3.5% and 4.4%, and not one of the five red markers stands on a bump.

What a Fibonacci retracement measures

The arithmetic is one subtraction and one multiplication. With a swing low L and a swing high H, the level at depth d sits at H − (H − L) × d/100. The 61.8% line is the price 61.8% of the range below the high.

So the tool measures how far price has given back a recent one-way move, as a fraction: never as a distance. The swings this test detected had a median range of 38.4 pips on the 15-minute chart, 85.8 pips on the hourly and 178.7 pips on the four-hour, all for 2025. The same "61.8%" is a 24-pip pullback in one case and a 110-pip one in another.

The two choices are which depth to read and which two points anchor the tool. This test repeated every depth with five swing definitions: a bar had to beat 3, 5, 8, 13, or 21 bars on each side to count as a swing point. Reach rate changed by more than ten percentage points across those definitions, so the swing-detection rule must be chosen before the retracement depth.

More than half of all retracements go all the way back

Before asking where pullbacks stop, it is worth counting how they end at all. Across the 6,266 swings:

EndingSwingsShare
Turned, and the swing extended in its original direction2,95547.2%
Retraced fully to the swing's origin, erasing it3,29552.6%
Still undecided after 200 bars160.3%

A slim majority of swings are completely unwound. Any statement about where a pullback stops sits on top of that: more often than not, it does not stop.

How to draw Fibonacci retracement levels

Every platform ships the tool.

PlatformSteps
MT4 / MT5Insert → Fibonacci → Retracement, then drag from the swing low to the swing high
TradingViewPick Fib Retracement from the drawing tool list
Browser (Formiq)In the drawing tools; on the backtest side the swing is detected automatically so a level can be used as a rule

The only difference between drawing by hand and detecting automatically is who picks the two anchors. This article uses automatic detection: a bar that beats the N bars on each side of it becomes a swing point, highs and lows are forced to alternate, and the most recent leg between them is the swing.

That method has a confirmation lag. A bar is only known to be a swing high once N later bars have failed to exceed it, so the line cannot be drawn until N bars after the top. How much that costs is measured further down.

How this was measured

The settings, at the resolution a reader needs to reproduce them.

ItemValue
PairUSD/JPY
Period2025-01-01 to 2025-12-31, with 2024 run identically for comparison
TimeframesM15 / H1 / H4
Swing detectionA bar beating the 5 bars on each side is a swing point; highs and lows alternate; the latest leg is used. Repeated with 3, 8, 13 and 21 as a sensitivity check
Swings6,266 (M15 4,752 / H1 1,176 / H4 338, both years)
Depth grid10.0% to 90.0% in 0.2% steps = 401 levels. 23.6, 38.2, 50, 61.8 and 78.6 land on the grid exactly
Turn rateOf the swings that reached a depth, the share whose pullback ended within 5 points of it. Also computed at 2.5 and 10 points
Trading test9 levels (5 Fibonacci, 4 controls) x 5 swing definitions x 2 triggers = 90 settings, per timeframe, per window
Stops and targetsNone, except in the section that measures them
Spread0.3 pips, zero slippage, 0.1 lot, charged on both fills
MeasurementRun through Formiq's backtest engine; pips recomputed from each individual fill

The four control depths (30%, 45%, 70% and 80%) are the point of the design. If a Fibonacci ratio has an edge that belongs to the number rather than to the depth, it has to show up as a gap against the ordinary depth next door.

How deep the pullbacks actually go

Start with reach: the share of pullbacks that got that deep at all.

DepthReachedSwings
23.6%95.9%6,012
30%92.5%5,798
38.2%87.2%5,462
45%82.3%5,157
50%78.8%4,936
55%75.4%4,725
61.8%71.4%4,474
70%66.8%4,184
78.6%62.3%3,902
80%61.5%3,855

Perfectly monotonic. Deeper is rarer, and nothing bends at a Fibonacci ratio. The 23.6% line is touched on 19 swings out of 20; the 78.6% line is missed on two out of three.

That table alone explains something. Shallow levels feel like they work because price visits them constantly. Draw a line at 23.6% and it will be touched almost every time, and a touch is what gets remembered.

Which level reacts most?

The highest was 45%, which is not a Fibonacci ratio. Dividing by the reach count asks a different question: for each depth, of the swings that got there, what share ended their pullback within five points of it? This number has no threshold to tune: it depends only on whether the level was reached and where the move stopped.

DepthTurn rate95% intervalTurned / reached
20%2.05%±0.36125 / 6,096
23.6%2.73%±0.41164 / 6,012
30%3.55%±0.48206 / 5,798
38.2%3.94%±0.52215 / 5,462
45%4.29%±0.55221 / 5,157
50%4.27%±0.56211 / 4,936
55%3.92%±0.55185 / 4,725
61.8%4.22%±0.59189 / 4,474
70%3.78%±0.58158 / 4,184
78.6%3.95%±0.61154 / 3,902
80%3.76%±0.60145 / 3,855

The highest is 45%, which is not a Fibonacci ratio. Then 50%, then 61.8%.

The ordering should not be trusted, though. Every depth from 38.2% down sits inside every other one's interval. The gap between 45% at 4.29% and 78.6% at 3.95% is 0.34 points, smaller than either interval. What this measurement supports is "past 38.2%, they are all about the same", and nothing finer.

The only real structure is at the shallow end. 20% and 23.6% are clearly lower, at 2.05% and 2.73%. A pullback that has given back a fifth of the move has rarely finished.

The figure at the top is the whole curve. Plotted across all 401 depths it climbs from 10% to about 30% and then runs flat in a band between 3.5% and 4.4% all the way to 90%. None of the five Fibonacci depths had a higher reaction rate than the neighbouring tested depths.

Widening the window that counts as "ended here" does not change it:

Window23.6%38.2%50%61.8%78.6%
±2.5 points1.1%2.3%2.0%2.1%1.9%
±5 points2.7%3.9%4.3%4.2%3.9%
±10 points6.0%8.4%8.0%8.0%7.8%

Is 61.8% a special level?

Against the depth next door, no ratio-specific effect showed up. If deeper levels turn more often, the depth effect has to be separated from the number. So each level's turn rate was compared against the mean of the depths within three points of it, excluding the 0.8 points either side: near-identical depth, different number.

Averaged over the twelve cells (three timeframes x two years x up and down legs):

LevelGap vs neighboursAhead in
20%−0.078 points6 / 12
23.6% (ratio)−0.196 points5 / 12
30%+0.160 points6 / 12
38.2% (ratio)−0.077 points6 / 12
45%+0.033 points5 / 12
50% (ratio)−0.105 points7 / 12
55%−0.071 points4 / 12
61.8% (ratio)−0.040 points6 / 12
70%+0.091 points8 / 12
78.6% (ratio)+0.234 points7 / 12
80%+0.144 points7 / 12

Pooled: the five Fibonacci ratios average minus 0.037 points and beat their neighbours in 31 of 60 cells. The six controls average plus 0.046 points and 36 of 72. Both are coin flips.

Put at its plainest: 61.8% turns 4.22% of the pullbacks that reach it, and 62.0% turns 4.30%. So does 61.0%, at 4.22%. The 38.2% level turns 3.94%, against 3.92% at 37.0%, 3.97% at 39.0% and 4.07% at 40.0%. Moving the line one notch sideways changes nothing.

Within this test, there is no evidence that a Fibonacci ratio stops price better than the depth beside it.

Is price past the level before you can draw?

For the shallow levels, yes. One more number, and it may be the one that matters most in practice.

A swing high is confirmed five bars after the top, using this test's default. The line cannot be drawn before that. In those five bars, price has usually already gone through the shallow levels.

0%25%50%75%100%23.6%94.130%88.838.2%81.345%73.450%67.961.8%52.570%43.478.6%35.080%34.0share of swings that had already passed the level
Fibonacci rationot a Fibonacci ratiomean of 12 cells: 3 timeframes x 2 years x both directions
By the time the swing is confirmed, price has already traded through the 23.6% level on 94 swings in 100.

Share of swings whose level had already been traded through by the time the swing was confirmed, averaged over the twelve cells:

DepthAlready passed
23.6%94.1%
30%88.8%
38.2%81.3%
45%73.4%
50%67.9%
61.8%52.5%
70%43.4%
78.6%35.0%
80%34.0%

On 94 swings in 100, the 23.6% level had already been passed by the time the swing could be drawn. At 38.2% it is 81.3%. Only at 61.8% does it fall to about half.

Drawing by hand does not escape this. A top is only recognisable as a top after price has left it. Planning to buy a shallow retracement assumes you can place the order before you know it is a retracement, and that is true whether a person or an algorithm picks the swing.

Does trading a level make money

Everything so far describes price. This section trades it. Two readings are commonly taught:

  • Touch the level and take the original direction: buy the dip inside a rally
  • Close through the level and take the break: sell when a rally's 61.8% gives way

The touch rule trades in the original swing direction, while the break rule trades through the level in the retracement direction. Nine depths x five swing definitions x two triggers were run across three timeframes and four windows.

−4k−2k0+2k+4k20%35%50%65%80%win ratenet pips per year
buy the level (256 settings)trade the break (217 settings)settings with 20+ trades; 2024 and 2025; 0.1 lot
Red sits to the right and mostly below the line: 251 of its 256 settings win more than half their trades, and 177 of those still finish the year down.

Settings profitable in both 2024 and 2025, out of 45 per cell:

TimeframeBuy the levelTrade the break
M152 / 4520 / 45
H16 / 4514 / 45
H44 / 453 / 45

Buying the level barely survives. On the 15-minute chart only 2 of 45 did: 78.6% and 80%, both with the 21-bar swing definition. The medians were minus 1,095.7 pips in 2025 and minus 2,153.6 pips in 2024.

Trading the break kept 20 of 45 on the 15-minute chart, with medians of plus 631.8 pips in 2025 and plus 512.2 in 2024. That is the most stable cell in the study.

The ratios have no edge here either. For buying the level, the five Fibonacci depths returned a median of minus 742.4 pips over 150 settings against minus 668.5 for the four controls over 120. For the break, Fibonacci returned plus 118.4 against plus 222.4. The controls are slightly ahead in both.

Matched one against one (same timeframe, year, trigger and swing definition) the Fibonacci level beat the ordinary depth next to it in 143 comparisons out of 300.

Buy the pullback or trade the break?

The touch rule won 18 points more often and still finished 835 pips behind. For settings with at least 20 trades, mean win rate and median annual net were:

Trading ruleMean win rateMedian net pips per yearSettings
Buy the level61.17%−629.1256
Trade the break43.23%+206.1217

Buying the level won 17.94 percentage points more often but its median annual net was 835.2 pips lower.

The hourly default at 61.8% on the 5-bar swing shows the difference in trade size. In 2025 buying the level took 292 trades at a 65.75% win rate for plus 921.1 pips. Its average loss of 74.68 pips was about 1.7 times its average win of 43.69. The break trigger took 112 trades at 35.71%, but its average win of 110.23 pips was about 1.8 times its average loss of 60.07.

Bollinger Bands and RSI produced the same split. Choosing levels by win rate alone misidentifies which ones made more pips.

Does last year's best carry forward?

Three of six stayed profitable. For each timeframe and trigger, the setting with the largest 2024 net result was applied unchanged to 2025:

TimeframeTriggerSetting selected in 20242024 trades2024 annual net2025 annual net
15-minuteTouch50%, 3-bar swing2,491+445.8 pips−846.4 pips
15-minuteBreak80%, 3-bar swing491+3,922.6 pips−1,410.7 pips
1-hourTouch30%, 21-bar swing150+1,909.5 pips+320.2 pips
1-hourBreak80%, 13-bar swing35+3,335.4 pips−251.4 pips
4-hourTouch23.6%, 8-bar swing94+2,891.4 pips+692.2 pips
4-hourBreak23.6%, 21-bar swing7+3,775.7 pips+148.7 pips

Three of the six settings remained profitable in 2025. The 15-minute break setting moved from plus 3,922.6 pips to minus 1,410.7 pips. The four-hour break setting had only seven trades in 2024, so its plus 3,775.7-pip result is not evidence of stable performance.

Filters and stops

Applied to the hourly 61.8% level on the 5-bar swing.

ConditionTriggerYearTradesAnnual net
NoneTouch2025292+921.1 pips
NoneTouch2024255−1,846.5 pips
NoneBreak2025112+84.6 pips
NoneBreak2024101−622.8 pips
ADX ≥ 20Touch202576+149.9 pips
ADX ≥ 20Touch202464+642.8 pips
ADX ≥ 20Break202529−887.4 pips
ADX ≥ 20Break202425+218.8 pips
ADX ≥ 25Touch202574+3.1 pips
ADX ≥ 25Touch202469−713.9 pips
ADX ≥ 25Break202528−536.8 pips
ADX ≥ 25Break202425+282.6 pips
ADX ≥ 30Touch202566−308.9 pips
ADX ≥ 30Touch202453−785.0 pips
ADX ≥ 30Break202525−1,018.2 pips
ADX ≥ 30Break202416+1,068.7 pips
London and New YorkTouch2025250−58.4 pips
London and New YorkTouch2024223−2,132.8 pips
London and New YorkBreak202582−515.6 pips
London and New YorkBreak202479−1,194.6 pips
TokyoTouch2025185−611.2 pips
TokyoTouch2024178−811.2 pips
TokyoBreak202558−108.4 pips
TokyoBreak202449+176.8 pips

The ADX filter reduced the touch rule from +921.1 to +3.1 pips in 2025 at ADX 25, but changed it from −1,846.5 to +642.8 in 2024 at ADX 20. One year shows deterioration and the other shows improvement, so the filter did not produce a consistent result.

The session filter was worse than no filter in three of the four columns, and London/New York was worse in all four.

Stops and targets:

Exit ruleTriggerYearTradesAnnual net
Opposite signalTouch2025292+921.1 pips
Opposite signalTouch2024255−1,846.5 pips
Opposite signalBreak2025112+84.6 pips
Opposite signalBreak2024101−622.8 pips
Stop 30 / target 60Touch2025743−1,145.5 pips
Stop 30 / target 60Touch2024650−568.6 pips
Stop 30 / target 60Break2025182+170.7 pips
Stop 30 / target 60Break2024163+164.7 pips
Stop 50 / target 100Touch2025525+436.7 pips
Stop 50 / target 100Touch2024492−1,968.8 pips
Stop 50 / target 100Break2025154+303.6 pips
Stop 50 / target 100Break2024141−64.5 pips
Stop 100 / target 200Touch2025381+1,269.4 pips
Stop 100 / target 200Touch2024351−2,208.7 pips
Stop 100 / target 200Break2025130+29.8 pips
Stop 100 / target 200Break2024119+441.9 pips
24-bar time exitTouch2025382+923.2 pips
24-bar time exitTouch2024338−1,865.9 pips
24-bar time exitBreak2025162+303.3 pips
24-bar time exitBreak2024145−28.6 pips

A 30-pip stop with a 60-pip target was the only exit that was profitable in both years (+170.7 and +164.7), and only on the break trigger. Nothing rescued the touch trigger's 2024.

What it pays in spread

Re-running 2025 on the hourly chart with only the spread changed:

SpreadTouch 61.8% (292 trades)Break 61.8% (112 trades)
0.0 pips+1,008.7+118.2
0.3 pips+921.1+84.6
0.6 pips+833.5+51.0
1.0 pips+716.7+6.2
1.5 pips+570.7−49.8
2.0 pips+424.7−105.8

Going from 0 to 2.0 pips costs the touch rule 584.0 pips (292 × 2.0) and the break rule 224.0 (112 × 2.0). Both match trade count times spread exactly: a relationship that has held in all sixteen articles in this series.

The break rule goes underwater somewhere past 1.0 pips. 112 trades a year is not many, but 118.2 pips of gross profit is not much either.

"61.8% works because it is special" is not supported here. But deeper levels do turn more often than shallow ones, so this is not a result against using the tool as a depth scale.

Bollinger Bands and RSI also produced high win rates alongside negative annual net because average losses exceeded average wins. Moving average crosses ask the same question of an event rather than a level, and GMMA also uses non-standard controls to test whether adding more lines improves results. Fair value gaps similarly converts a drawing pattern into a testable condition and compares it with ordinary-bar controls, which were filled just as often as the gaps. If you would rather check this on your own pair and period, building the conditions without writing code is the route.

The Alligator uses 13, 8 and 5 for the same reason. Matched by trigger, timeframe, displacement and year against four sets containing no Fibonacci number, 13/8/5 produced more annual net pips in 136 of 288 comparisons.

Notes

  • One pair, USD/JPY, and two years. Nothing here guarantees the same behaviour on another pair or another period
  • Swings are detected, not drawn. A person choosing anchors by hand may pick different waves, and this test cannot measure that choice. Five detection widths were run and the ordering of the turn rates held across all of them
  • The 5-point window that counts as "ended here" is arbitrary. It was also computed at 2.5 and 10 points, and the relationship between levels did not change
  • The turn rate asks whether the pullback finished at the level. A pause that resumed lower is not counted as a turn
  • The 401 depths overlap, so neighbouring figures are not independent. The maximum cannot be read as the result of 401 independent trials
  • Entries and exits use bar closes. Real fills differ
  • The spread is held at 0.3 pips throughout. Real spreads move with the session and with releases

Questions people ask

Which Fibonacci retracement level is the strongest?
Measuring strength as the share of pullbacks that ended at the level, 45% came first at 4.29%, then 50% at 4.27%, 61.8% at 4.22%, 78.6% at 3.95% and 38.2% at 3.94%, over 6,266 USD/JPY swings. The top level is not a Fibonacci ratio. Every one of those figures carries a 95% interval of roughly plus or minus 0.55 points, so the ordering exists but the differences do not clear the measurement error.
Is the 61.8% retracement level special?
Not in this test. The 61.8% level turned 4.22% of the pullbacks that reached it; 62.0% turned 4.30% and 61.0% turned 4.22%. Compared against the depths within three points either side, the five Fibonacci ratios averaged minus 0.037 points and came out ahead in 31 of 60 cells. The six non-Fibonacci controls averaged plus 0.046 points and 36 of 72. Both are indistinguishable from zero.
Does buying a Fibonacci retracement work?
It won often and lost money. Across 256 settings with at least 20 trades, buying the level won 61.17% of trades and returned a median of minus 629.1 pips a year. Trading the break of the level instead won 43.23% and returned plus 206.1 pips. On the 15-minute chart, 2 of 45 pullback settings were profitable in both 2024 and 2025 against 20 of 45 for the break.
How deep do retracements usually go?
Of 6,266 swings, 52.6% were fully retraced back to their origin and 47.2% turned and extended the original move. The 23.6% level was reached on 95.9% of swings, 38.2% on 87.2%, 50% on 78.8%, 61.8% on 71.4% and 78.6% on 62.3%. Deeper levels are reached less often, but once reached they turn at almost the same rate.
How do I add Fibonacci retracement in MT4?
It ships with the platform. In MT4 and MT5 choose Insert, then Fibonacci, then Retracement, and drag from the swing low to the swing high. TradingView carries it in the drawing tool list. Formiq has it as a drawing tool and, on the backtest side, detects the swing automatically so a level can be used as a rule, which is how the numbers in this article were produced.

Formiq is a free browser-based FX terminal with replay practice and no-code backtesting. Open the chart or see what the free plan includes.