Phivote Phivote

Pivot Points and ATR: How to Detect Major Swings and Ignore the Noise

Every chart is covered in swing highs and lows. The hard part isn't finding them — it's knowing which ones matter. Get that wrong and every Fibonacci grid, every support line, every "level" you draw is built on noise.

This is the step that comes before the golden zone: identifying the structural pivots worth measuring from. Here's how pivot detection works, and how an ATR filter turns a messy chart into a short list of swings that actually move markets.

What a pivot point is

A pivot (or fractal) is a local extreme confirmed by the bars around it. A swing high is a candle whose high is greater than the highs of N bars to its left and N bars to its right. A swing low is the mirror image. That N is the pivot lookback (Phivote exposes it as "pivot bars").

One critical detail: a pivot can only be confirmed N bars after it forms, because you need the right-hand bars to exist. An honest implementation never marks a pivot earlier than that — the subject of non-repainting indicators.

The noise problem

Lookback alone isn't enough. In a choppy range, a small-lookback pivot fires every few bars, and even a large lookback produces "swings" that are really just a few ticks of wiggle. If you measured a Fibonacci grid from one of those, your golden zone would be a few dollars wide and utterly meaningless.

What separates a major swing from a minor one isn't how many bars surround it — it's how far price actually travelled.

A real swing displaces price. A noise swing just fidgets. The job of a good filter is to measure displacement against the market's own volatility.

ATR: a volatility-aware ruler

Average True Range measures how much an asset typically moves per bar. ATR(14) is the 14-period average of each bar's true range. Because it's denominated in the asset's own price action, it adapts automatically: a $2 move might be huge for a stablecoin pair and trivial for a high-beta altcoin.

Phivote uses ATR as a significance gate. For a pivot to count as a major swing, the distance from the previous opposite pivot must exceed:

swing displacement> ATR(14) × k
k (multiplier)typically 0.5 – 1.5

If the move clears the threshold, it's structure. If it doesn't, it's chop and gets filtered out before it ever reaches your screen. The multiplier k is your sensitivity dial:

Tuning pivot bars and ATR by timeframe

There's no universal setting; sensitivity should scale with your horizon. A reasonable starting grid:

StyleTimeframePivot barsATR mult (k)
Scalp5m – 15m3 – 50.5 – 0.8
Swing1H – 4H5 – 80.8 – 1.1
Position4H – 1D8 – 151.0 – 1.5

Treat these as anchors, not gospel. Widen k when the market is whippy and you're getting too many marginal swings; tighten it when trends are clean and you want more entries.

Skip the manual tuning

Phivote applies ATR-validated pivot detection to every USDT perpetual at once — adjust pivot bars and the ATR multiplier and re-sweep the whole market in seconds.

Open the scanner

Why this is the foundation

Structure first, everything else second. A validated major swing is what makes a Fibonacci retracement meaningful, what makes a golden zone tradable, and what gives your stop a logical home. Master pivot + ATR filtering and you've solved the problem that quietly sinks most discretionary strategies: trading levels that were never really there.

Phivote — ATR-validated pivots across every major exchange. ← Back to the blog