OPEN-SOURCE SCRIPT
Weekly TrendRider longPosition 5% Zone

//version=5
indicator("Weekly EMA21 Dynamic Zone", overlay=true)
// ======================================================
// TIMEFRAME RESTRICTION
// ======================================================
// Check if chart timeframe is Weekly
isWeekly = timeframe.isweekly
// If not Weekly → show message and stop plots
if not isWeekly
label.new(bar_index, high,
"This indicator works only on Weekly timeframe",
style=label.style_label_center,
color=color.red,
textcolor=color.white,
size=size.large)
// ======================================================
// WEEKLY EMA21 CALCULATION
// ======================================================
ema21 = ta.ema(close, 21)
// Upper and Lower Levels (5% zones)
upperLevel = ema21 * 1.05
lowerLevel = ema21 * 0.95
// ======================================================
// CONDITIONAL PLOTTING (Hide on other timeframes)
// ======================================================
plotEMA = isWeekly ? ema21 : na
plotUpper = isWeekly ? upperLevel : na
plotLower = isWeekly ? lowerLevel : na
// Plot EMA
emaPlot = plot(plotEMA,
title="EMA 21",
color=color.orange,
linewidth=2)
// Plot Upper & Lower Levels
upperPlot = plot(plotUpper,
title="Upper 5% Zone",
color=color.green)
lowerPlot = plot(plotLower,
title="Lower 5% Zone",
color=color.red)
// ======================================================
// ZONE FILLING
// ======================================================
// Green Zone (EMA → +5%)
fill(emaPlot, upperPlot,
color=isWeekly ? color.new(color.green, 85) : na)
// Red Zone (EMA → -5%)
fill(emaPlot, lowerPlot,
color=isWeekly ? color.new(color.red, 85) : na)
indicator("Weekly EMA21 Dynamic Zone", overlay=true)
// ======================================================
// TIMEFRAME RESTRICTION
// ======================================================
// Check if chart timeframe is Weekly
isWeekly = timeframe.isweekly
// If not Weekly → show message and stop plots
if not isWeekly
label.new(bar_index, high,
"This indicator works only on Weekly timeframe",
style=label.style_label_center,
color=color.red,
textcolor=color.white,
size=size.large)
// ======================================================
// WEEKLY EMA21 CALCULATION
// ======================================================
ema21 = ta.ema(close, 21)
// Upper and Lower Levels (5% zones)
upperLevel = ema21 * 1.05
lowerLevel = ema21 * 0.95
// ======================================================
// CONDITIONAL PLOTTING (Hide on other timeframes)
// ======================================================
plotEMA = isWeekly ? ema21 : na
plotUpper = isWeekly ? upperLevel : na
plotLower = isWeekly ? lowerLevel : na
// Plot EMA
emaPlot = plot(plotEMA,
title="EMA 21",
color=color.orange,
linewidth=2)
// Plot Upper & Lower Levels
upperPlot = plot(plotUpper,
title="Upper 5% Zone",
color=color.green)
lowerPlot = plot(plotLower,
title="Lower 5% Zone",
color=color.red)
// ======================================================
// ZONE FILLING
// ======================================================
// Green Zone (EMA → +5%)
fill(emaPlot, upperPlot,
color=isWeekly ? color.new(color.green, 85) : na)
// Red Zone (EMA → -5%)
fill(emaPlot, lowerPlot,
color=isWeekly ? color.new(color.red, 85) : na)
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。