Most fixed $1 or 2% stop-loss rules blow up the first time a stock gaps through them overnight. Plain high-minus-low ranges miss those gaps. And a $5 print means nothing until you know whether that name usually moves $1 or $8.
Wilder built ATR in 1978 for commodities that locked limit-up and limit-down. Same job today: measure typical movement including the overnight jump (Investopedia’s ATR overview still frames it that way).
Why fixed stops and simple ranges fail
A fixed-dollar stop ignores regime changes. Quiet weeks? Too wide – you bleed risk. News weeks? Too tight – noise stops you out. High-low alone is cleaner but still blind: yesterday closes 100, today opens 104 and trades 104-105. Printed range: $1. True move from the last close: $5.
Percentage stops sound smarter until you line up two names. A 3% stop on a sleepy utility and a 3% stop on high-beta tech are not the same bet. You need a ruler that scales with this instrument’s recent behavior.
Think of ATR as a rolling “normal wiggle” budget. Once the budget is known, stops, targets, and share count stop being guesses.
How the average true range indicator is actually built
True Range first. Largest of three distances – absolutes, so direction never sneaks in:
TR = max(
high - low,
abs(high - previous_close),
abs(low - previous_close)
)
# same idea:
# TR = max(high, prev_close) - min(low, prev_close)
That line is why ATR catches gaps ADR (average day range) usually skips. TradingView’s own ATR% vs ADR% notes draw the same line.
Then smooth the TRs. Wilder’s recipe is still what most charts ship with:
- First ATR = simple average of the first n True Ranges (default n = 14).
- After that:
ATR_t = (ATR_{t-1} × (n - 1) + TR_t) / n
Wilder smoothing – SMMA/RMA with α = 1/n – not a plain SMA. The seed-then-smooth sequence is spelled out on Wikipedia’s ATR page and on StockCharts. Shorter length (7-10): snappier for day trades. Longer (20-22): calmer for swings.
Pro tip: ATR on platform A ≠ platform B? Check smoothing (RMA vs SMA/EMA/WMA), lookback, and seed depth before blaming the feed. Short spreadsheet seeds leave a lingering bias; many charts warm up with 250+ bars (StockCharts calls this out).
Recommended workflow: volatility → stop → size
Skip “is ATR high?” Start with a dollar risk budget. Let ATR set distance.
- Read ATR against that symbol’s own recent ATR on your timeframe. Rising ATR after a breakout often means more traders are actually in the move. Falling ATR in a slow grind can mean the push is tiring. No universal “high” line – Investopedia’s limitations section is blunt on the subjectivity.
- Normalize before you compare names. Absolute ATR lies across price levels. StockCharts’ Absolute ATR note and Fidelity’s ATRP both push the fix:
ATR% = (ATR / close) × 100. Schwab’s April 2025 piece (late-March tape): NVDA ATR about $7.20 ≈ 6.2% of $115.74; JNJ about $2.73 ≈ 1.7% of $162.84 – same session, different risk DNA. - Stop = multiple of ATR, not a round dollar. Short-term work often sits at 1.5-2×; plain 1× on hot names gets wicked out before the move develops. Longer trail: many use ~3×. Chandelier-style logic hangs a long stop under the recent highest high by k × ATR – Chuck LeBeau defaults people still quote are roughly a 22-bar lookback and 3.0× (StockCharts Chandelier Exit).
- Back into shares so dollar risk stays fixed:
shares ≈ (account × risk%) / (ATR × multiple). Risk 1% of $50,000 = $500. ATR $2.50, 2× stop → $5 per share → 100 shares. Volatility doubles tomorrow? Same formula halves size.
ATR never votes long or short. Pair it with a trend filter (MA, structure, ADX) and only size volatility inside a bias.
Real-world example (numbers only)
Account $25,000. Max risk per idea: 1% = $250. Stock $80. 14-period ATR = $1.60. Choose 1.5× ATR → $2.40 below entry on a long.
Size = 250 / 2.40 ≈ 104 shares. Notional ≈ $8,320. ATR later prints $3.20 and you keep the multiple? Size drops to ~52 shares. Risk percent never moved. That’s the point – volatility stops ambushing the account.
Same math on weekly bars or 5-minute bars. Unit is “points per bar.” A 5-minute ATR is a 5-minute wiggle, not a day.
Pro tips that actually change results
Climax days first. ATR spike after a long run can mark exhaustion as easily as strength – tighten, don’t add blind size.
Scanners: sort on ATR% (Fidelity’s ATRP is built for this) so a $15 biotech and a $400 mega-cap can share one list.
Coding backtests or feeding an AI data pipeline? Lock smoothing method and minimum history. Flip RMA→SMA mid-study and every stop and every size silently shifts.
ATR lags on purpose. It describes what already printed. Earnings, FOMC, gap events: treat yesterday’s average as stale until the series catches up – widen or stand aside.
FAQ
Is a higher ATR bullish or bearish?
Neither. It only measures width. Panic and melt-ups both print big ranges. Direction comes from structure or another tool.
What ATR period should a beginner start with?
Wilder’s 14 on the timeframe you actually trade. Five-minute day trades? Fourteen 5-minute bars. Daily swings? Fourteen daily bars. Shorten only after you’ve watched how often your 14× multiples get tagged on your symbols for a few weeks.
Why does my broker’s ATR differ from TradingView?
Usually the three checks in the pro tip above – not “bad data.” TradingView defaults to RMA of True Range and lets you switch SMA/EMA/WMA; some brokers hard-code Wilder only. Load two years on one chart and three months on the other and the early simple-average seed can leave a small permanent offset. Match length, smoothing, and history, then compare.
Open your platform, add ATR(14), divide the latest value by the last close, and jot that ATR% next to three names you trade. That percentage will tell you more about relative risk than any absolute dollar ATR.