All indicators

Vertical Horizontal Filter

By LuxAlgoMay 13, 2026

Static chart image

Vertical Horizontal Filter answers the routing question — is this market trending at all? — with a transparent ratio and a regime engine on top. The vertical horizontal filter divides the spread between the window's highest and lowest close by the total absolute close-to-close travel inside it: straight-line markets score high, churn scores low. Because the raw level carries no universal threshold, this build reads the VHF against its own recent history — a moving average of itself, or a percentile taken over its recent window — and prints the verdict as a label at the line's tip.

How to Trade the Vertical Horizontal Filter?

  • Above the basis: directional movement dominates the window — give trend-following tools the benefit of the doubt; the Trending Regime Start alert fires on the cross.
  • Below the basis: travel without progress — mean-reversion tactics are favored, alerted as Ranging Regime Start.
  • Slope turns: a rising VHF flags trend development regardless of absolute level, with Turned Rising and Turned Falling alerts.
  • Direction-blind by design: colors describe trendiness, never bullishness; pair the regime with a directional tool for sides.

Vertical Horizontal Filter Settings

  • Length (default 28): the lookback window; shorter flips regimes faster with more false transitions.
  • Numerator Extremes (default Close): the classic highest/lowest close, or a slightly noisier High/Low variant.
  • Basis Type (default Moving Average): compare with a moving average of itself, set by MA Type (default SMA) and its Length (default 28), or with a percentile via Percentile Rank (default 75) over Lookback (default 100).
  • Slope Lookback (default 1): bars behind the rising/falling read.
  • Style: Color Mode (default Regime (vs Basis)), plus Show Basis Line, Gradient Fill and Regime Label (all on).

Frequently Asked Questions

VHF or the Choppiness Index?

They attack the same question from opposite ends. The Choppiness Index sums true ranges into a bounded 0-100 scale where high readings mean congestion; the VHF is an unbounded progress ratio where high readings mean trend, read against its own history rather than fixed bands.

Why is there no fixed trending threshold?

Because the ratio's typical level shifts with the market and timeframe. The basis is the answer: a reading is trending when high relative to its own recent readings, wherever that sits.

Is a rising VHF bullish?

No. The numerator measures the size of net progress, not its sign, so a waterfall decline scores exactly as trending as a vertical rally. The VHF chooses the toolkit; direction is a separate question.

Original indicatorBuilt in-house by LuxAlgo

The Library is free. Quant makes it yours.

Pull any concept or indicator into Quant: rebuild it, retune it, or turn it into a backtested strategy of your own.