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
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。