OPEN-SOURCE SCRIPT

Fisher Transform Trend Navigator [QuantAlgo]

729
🟢 Overview

The Fisher Transform Trend Navigator applies a logarithmic transformation to normalize price data into a Gaussian distribution, then combines this with volatility-adaptive thresholds to create a trend detection system. This mathematical approach helps traders identify high-probability trend changes and reversal points while filtering market noise in the ever-changing volatility conditions.
snapshot
🟢 How It Works

The indicator's foundation begins with price normalization, where recent price action is scaled to a bounded range between -1 and +1:
Pine Script®
highestHigh = ta.highest(priceSource, fisherPeriod) lowestLow = ta.lowest(priceSource, fisherPeriod) value1 = highestHigh != lowestLow ? 2 * (priceSource - lowestLow) / (highestHigh - lowestLow) - 1 : 0 value1 := math.max(-0.999, math.min(0.999, value1))

This normalized value then passes through the Fisher Transform calculation, which applies a logarithmic function to convert the data into a Gaussian normal distribution that naturally amplifies price extremes and turning points:
Pine Script®
fisherTransform = 0.5 * math.log((1 + value1) / (1 - value1)) smoothedFisher = ta.ema(fisherTransform, fisherSmoothing)

The smoothed Fisher signal is then integrated with an exponential moving average to create a hybrid trend line that balances statistical precision with price-following behavior:
Pine Script®
baseTrend = ta.ema(close, basePeriod) fisherAdjustment = smoothedFisher * fisherSensitivity * close fisherTrend = baseTrend + fisherAdjustment

To filter out false signals and adapt to market conditions, the system calculates dynamic threshold bands using volatility measurements:
Pine Script®
dynamicRange = ta.atr(volatilityPeriod) threshold = dynamicRange * volatilityMultiplier upperThreshold = fisherTrend + threshold lowerThreshold = fisherTrend - threshold

When price momentum pushes through these thresholds, the trend line locks onto the new level and maintains direction until the opposite threshold is breached:
Pine Script®
if upperThreshold < trendLine trendLine := upperThreshold if lowerThreshold > trendLine trendLine := lowerThreshold

snapshot
🟢 Signal Interpretation
  • Bullish Candles (Green): indicate normalized price distribution favoring bulls with sustained buying momentum = Long/Buy opportunities
  • Bearish Candles (Red): indicate normalized price distribution favoring bears with sustained selling pressure = Short/Sell opportunities
    snapshot
  • Upper Band Zone: Area above middle level indicating statistically elevated trend strength with potential overbought conditions approaching mean reversion zones
  • Lower Band Zone: Area below middle level indicating statistically depressed trend strength with potential oversold conditions approaching mean reversion zones
  • Built-in Alert System: Automated notifications trigger when bullish or bearish states change, allowing you to act on significant developments without constantly monitoring the charts
  • Candle Coloring: Optional feature applies trend colors to price bars for visual consistency and clarity
  • Configuration Presets: Three parameter sets available - Default (balanced settings), Scalping (faster response with higher sensitivity), and Swing Trading (slower response with enhanced smoothing)
  • Color Customization: Four color schemes including Classic, Aqua, Cosmic, and Custom options for personalized chart aesthetics

Wyłączenie odpowiedzialności

Informacje i publikacje przygotowane przez TradingView lub jego użytkowników, prezentowane na tej stronie, nie stanowią rekomendacji ani porad handlowych, inwestycyjnych i finansowych i nie powinny być w ten sposób traktowane ani wykorzystywane. Więcej informacji na ten temat znajdziesz w naszym Regulaminie.