OPEN-SOURCE SCRIPT
Target Radar

Target Radar filters entries with a confidence gate, then maps the next objective using pivot-cluster Support/Resistance pools.
Itโs built for traders who want fewer, cleaner signals and a clear target level instead of guessing exits.
What you get on the chart
๐ต Support pools (pivot-low clusters)
๐ Resistance pools (pivot-high clusters)
๐ข Long signal (โฒ) when the setup passes filters + score threshold
๐ด Short signal (โผ) when the setup passes filters + score threshold
Projection band (expected move with uncertainty half-width)
Forward box (next-horizon projected zone)
Target line + label (best nearby pool in the forecast direction + score)
How to read the Support/Resistance pools
Target Radar doesnโt draw random lines. It builds price pools from confirmed pivots and clusters them:
A pivot forms after pivotLen bars confirm (thatโs the confirmation delay by design).
Levels within ATR * mergeATR merge into one pool.
Strength = number of merged touches.
Thickness/opacity = strength (stronger pools stand out).
Legend
๐ต Blue = Support pools
๐ Orange = Resistance pools
Thick + less transparent = stronger level
These colors are reserved for structure, not signal direction.
What makes this different
Most tools do signals or support/resistance or volatility bands.
Target Radar combines them into a single workflow:
Directional forecast (up/down pressure)
Uncertainty gate (trade conditions vs noise)
Structure-based target (where price is most likely to react next)
So youโre not just taking entriesโyouโre trading entry + environment + destination.
The math behind it (simple + transparent)
1) Forecast Engine (direction)
Each component is normalized with a z-score over lookback:
trendZ = zscore((EMA10 โ EMA20) / EMA20)
momZ = zscore(RSI14 โ 50)
volZ = zscore(ATR14 / close) (penalty)
vprZ = zscore(log(SMA(upVol)/SMA(downVol)))
Weighted blend:
rawScore = wTrend*trendZ + wMom*momZ โ wVol*volZ + wVpr*vprZ
Bounded and scaled:
bound(x) = x / (1 + |x|)
forecastRet = bound(rawScore) * (ATR/close) * retScale
2) Uncertainty band (confidence gate)
The script measures recent forecast error:
realRet = ln(close / close[h])
residual = |realRet โ forecastRet[h]|
Half-width uses rolling error stats:
halfWidth = max(mean(residual) + zMult*stdev(residual), minHW)
Interpretation:
Small halfWidth = stable environment
Large halfWidth = unstable environment (signals blocked if enabled)
3) Target scoring (structure + forecast alignment)
The target is the nearest pool in the forecast direction, then scored by:
distance fit vs the uncertainty band
whether the level sits inside the projection zone
pool strength bonus
Best practices (how traders actually use it)
New traders
Start with Breakout or EMA Cross
Keep filters ON:
Require Forecast Alignment โ
Block High Uncertainty โ
Match Regime to Mode โ
Use the dashed target as the first objective.
Experienced traders
Use Target Radar as a validation + targeting layer:
Your setup triggers โ Target Radar decides if conditions are tradable and where the next level sits.
Raise minScore to reduce signals and tighten quality.
Use the pool strength (thicker/clearer lines) as a structure filter.
Mode โ Regime pairing
TREND regime: Breakout, EMA Cross
RANGE regime: Mean Reversion
CHAOS regime: filtered out when regime gate is enabled
What it is / what it isnโt
It is: a confidence-gated signal filter + structure target mapper.
It isnโt: a full strategy/backtest engineโuse Strategy Tester if you want full trade simulation.
Alerts
Long signal
Short signal
High uncertainty
Itโs built for traders who want fewer, cleaner signals and a clear target level instead of guessing exits.
What you get on the chart
๐ต Support pools (pivot-low clusters)
๐ Resistance pools (pivot-high clusters)
๐ข Long signal (โฒ) when the setup passes filters + score threshold
๐ด Short signal (โผ) when the setup passes filters + score threshold
Projection band (expected move with uncertainty half-width)
Forward box (next-horizon projected zone)
Target line + label (best nearby pool in the forecast direction + score)
How to read the Support/Resistance pools
Target Radar doesnโt draw random lines. It builds price pools from confirmed pivots and clusters them:
A pivot forms after pivotLen bars confirm (thatโs the confirmation delay by design).
Levels within ATR * mergeATR merge into one pool.
Strength = number of merged touches.
Thickness/opacity = strength (stronger pools stand out).
Legend
๐ต Blue = Support pools
๐ Orange = Resistance pools
Thick + less transparent = stronger level
These colors are reserved for structure, not signal direction.
What makes this different
Most tools do signals or support/resistance or volatility bands.
Target Radar combines them into a single workflow:
Directional forecast (up/down pressure)
Uncertainty gate (trade conditions vs noise)
Structure-based target (where price is most likely to react next)
So youโre not just taking entriesโyouโre trading entry + environment + destination.
The math behind it (simple + transparent)
1) Forecast Engine (direction)
Each component is normalized with a z-score over lookback:
trendZ = zscore((EMA10 โ EMA20) / EMA20)
momZ = zscore(RSI14 โ 50)
volZ = zscore(ATR14 / close) (penalty)
vprZ = zscore(log(SMA(upVol)/SMA(downVol)))
Weighted blend:
rawScore = wTrend*trendZ + wMom*momZ โ wVol*volZ + wVpr*vprZ
Bounded and scaled:
bound(x) = x / (1 + |x|)
forecastRet = bound(rawScore) * (ATR/close) * retScale
2) Uncertainty band (confidence gate)
The script measures recent forecast error:
realRet = ln(close / close[h])
residual = |realRet โ forecastRet[h]|
Half-width uses rolling error stats:
halfWidth = max(mean(residual) + zMult*stdev(residual), minHW)
Interpretation:
Small halfWidth = stable environment
Large halfWidth = unstable environment (signals blocked if enabled)
3) Target scoring (structure + forecast alignment)
The target is the nearest pool in the forecast direction, then scored by:
distance fit vs the uncertainty band
whether the level sits inside the projection zone
pool strength bonus
Best practices (how traders actually use it)
New traders
Start with Breakout or EMA Cross
Keep filters ON:
Require Forecast Alignment โ
Block High Uncertainty โ
Match Regime to Mode โ
Use the dashed target as the first objective.
Experienced traders
Use Target Radar as a validation + targeting layer:
Your setup triggers โ Target Radar decides if conditions are tradable and where the next level sits.
Raise minScore to reduce signals and tighten quality.
Use the pool strength (thicker/clearer lines) as a structure filter.
Mode โ Regime pairing
TREND regime: Breakout, EMA Cross
RANGE regime: Mean Reversion
CHAOS regime: filtered out when regime gate is enabled
What it is / what it isnโt
It is: a confidence-gated signal filter + structure target mapper.
It isnโt: a full strategy/backtest engineโuse Strategy Tester if you want full trade simulation.
Alerts
Long signal
Short signal
High uncertainty
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.