Pattern · 200-800/mo

Fibonacci Retracement Trading Signals - TradingView Guide

Fibonacci retracement trading signals for TradingView. Key level bounces, extensions, and confluence signals with Pine Script code and real ES and NQ examples.

Fibonacci Retracement Signal Interpretation

Quick-reference guide to 6 signal types you will see on the chart.

Signal TypeIndicator ConditionMarket MeaningReliability
38.2% Bounce → Buy/SellPrice retraces to the 38.2% level and forms a bullish or bearish candlestick pattern (hammer, engulfing)First Fibonacci support in a pullback. Strongest in fast trends where shallow retracements are common. Early entry with tight stop.3/5
50% Retracement ReversalPrice touches the 50% midpoint level and reverses with volume confirmationNot a pure Fibonacci level but respected by many traders as a key pivot zone. Combines harmonic retracement with psychological round-number behavior.4/5
61.8% Golden Zone Bounce → Trend ContinuationPrice hits the 61.8% level and produces a reversal candle with above-average volumeThe golden ratio level. Deep retracements that stop at 61.8% signal the trend is still intact. My highest-confidence setup on NQ intraday charts.4/5
161.8% Extension → Trend ExhaustionPrice reaches the 161.8% extension level of the prior swing with bearish divergence on RSIExtended move targets. Price often reverses or consolidates at this level. Best used as profit target, not a reversal entry.3/5
Level Cluster ConfluenceTwo or more Fibonacci levels from different swing swings align within a 5-point range on ES or 10-tick range on NQConfluence of multiple Fib levels creates a high-probability support or resistance zone. Multiple timeframe Fib levels reinforce each other.5/5
78.6% Deep Retracement BreakdownPrice breaks below the 78.6% level on increased volume after a measured moveDeep retracement that invalidates the original impulse. Signals potential trend change or at least a broader consolidation phase.4/5

Fibonacci Retracement Pine Script Signal Code

Ready-to-use Pine Script code for generating buy/sell signals. Copy and paste into your TradingView Pine Editor.

Pine Script v5
//@version=5
indicator("Fibonacci Retracement Signals", overlay=true)

// Inputs
swingHighLeft = input.int(20, "Swing High Left Bars", minval=5, maxval=100)
swingHighRight = input.int(10, "Swing High Right Bars", minval=1, maxval=50)
swingLowLeft = input.int(20, "Swing Low Left Bars", minval=5, maxval=100)
swingLowRight = input.int(10, "Swing Low Right Bars", minval=1, maxval=50)
showExtensions = input.bool(true, "Show 161.8% / 261.8% Extensions")
fibColor = input.color(color.gray, "Fibonacci Level Color")
showLabels = input.bool(true, "Show Percentage Labels")

// Swing detection
isSwingHigh = high == ta.highest(high, swingHighLeft * 2 + 1) and high[swingHighLeft] == ta.highest(high, swingHighLeft * 2 + 1)
isSwingLow = low == ta.lowest(low, swingLowLeft * 2 + 1) and low[swingLowLeft] == ta.lowest(low, swingLowLeft * 2 + 1)

// Level variables
var float fibStart = na
var float fibEnd = na
var int fibDirection = 0  // 1 = uptrend, -1 = downtrend

// Detect new swing and set Fib range
if isSwingHigh and fibDirection != -1
    fibStart := high[swingHighLeft]
    fibDirection := 1
if isSwingLow and fibDirection != 1
    fibEnd := low[swingLowLeft]
    fibDirection := -1

// Retracement levels
fib236 = fibStart - (fibStart - fibEnd) * 0.236
fib382 = fibStart - (fibStart - fibEnd) * 0.382
fib500 = fibStart - (fibStart - fibEnd) * 0.5
fib618 = fibStart - (fibStart - fibEnd) * 0.618
fib786 = fibStart - (fibStart - fibEnd) * 0.786

// Extension levels
fib1618 = fibStart + (fibEnd - fibStart) * 1.618
fib2618 = fibStart + (fibEnd - fibStart) * 2.618

// Signal conditions
goldenZoneTouch = na(fib618) ? false : math.abs(close - fib618) / ta.syminfo.mintick < 10
deepTouch = na(fib786) ? false : math.abs(close - fib786) / ta.syminfo.mintick < 10
extensionTouch = na(fib1618) ? false : math.abs(close - fib1618) / ta.syminfo.mintick < 10

buySignal = goldenZoneTouch and close > open  // Bullish bounce at 61.8%
sellSignal = goldenZoneTouch and close < open  // Bearish bounce at 61.8%

// Plot levels
plot(fib236, "23.6%", fibColor, line.style_dashed)
plot(fib382, "38.2%", fibColor, line.style_dotted)
plot(fib500, "50%", color.new(fibColor, 40), line.style_solid)
plot(fib618, "61.8%", color.new(#FF6D00, 20), line.style_solid)
plot(fib786, "78.6%", fibColor, line.style_dashed)

plot(showExtensions and fib1618, "161.8%", color.new(#FF5252, 30), line.style_dotted)
plot(showExtensions and fib2618, "261.8%", color.new(#FF5252, 50), line.style_dotted)

// Labels
if showLabels and goldenZoneTouch
    label.new(bar_index, fib618, "61.8%", style=label.style_label_down, color=color.new(#FF6D00, 40), textcolor=color.white, size=size.tiny)

// Entry signals
plotshape(buySignal, "Buy at 61.8%", shape.triangleup, location.abovebar, color=#4CAF50, size=size.small)
plotshape(sellSignal, "Sell at 61.8%", shape.triangledown, location.belowbar, color=#FF5252, size=size.small)

// Alerts
alertcondition(buySignal, "61.8% Buy", "Price bounced at the 61.8% Fibonacci level")
alertcondition(sellSignal, "61.8% Sell", "Price rejected at the 61.8% Fibonacci level")
alertcondition(deepTouch, "78.6% Deep Touch", "Price reached the 78.6% deep retracement level")

Recommended Parameters for Fibonacci Retracement

Parameter settings tested across different market conditions and timeframes.

Feature comparison table: Default vs Description
ParameterDefaultDescription
Swing High Left Bars20Number of bars to look left for swing high detection. Lower values (10-15) catch more swing points on 5m NQ. Higher values (30-50) work better on daily ES charts.
Swing High/Low Right Bars10Number of bars to confirm the swing on the right side. Tighter values (5-7) create more Fib levels but increase false signals.
Show ExtensionstrueToggles the 161.8% and 261.8% extension levels. I keep this on for ES daily charts to map profit targets beyond the measured move.

Fibonacci Retracement + Pineify Invite-Only: Better Together

Fibonacci Retracement alone gives you one signal type. Pineify invite-only indicator combines Fibonacci Retracement with RSI divergences, MACD confirmation, and Supertrend filters in one overlay. Fewer charts, clearer signals.

Instead of switching between 6 different signals on separate charts, you get a single multi-confirmation setup.

See the Invite-Only Indicator

FAQ

Fibonacci Retracement Signals FAQ

Stop juggling Fibonacci Retracement with 4 other charts

Pineify combines Fibonacci Retracement, RSI, MACD, and Supertrend into one invite-only indicator. One click setup.

Try Pineify Free