OPEN-SOURCE SCRIPT
🔔 NIFTY 100+ Points Early Move Signal (1H)

//version=5
indicator("🔔 NIFTY 100+ Points Early Move Signal (1H)", overlay=true)
// === Inputs === //
squeezePeriod = input.int(20, title="Price Squeeze Lookback")
rangeTrigger = input.float(100.0, title="Target Move (in Points)")
rsiLength = input.int(14, title="RSI Length")
macdFast = input.int(12)
macdSlow = input.int(26)
macdSignal = input.int(9)
volMultiplier = input.float(1.5, title="Volume Spike Multiplier")
// === RSI & MACD === //
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal)
macdBullish = macdLine > signalLine
macdBearish = macdLine < signalLine
// === Price Compression === //
hh = ta.highest(high, squeezePeriod)
ll = ta.lowest(low, squeezePeriod)
compressionRange = hh - ll
tightCompression = compressionRange < (rangeTrigger * 0.6) // Pre-expansion
// === Volume Spike === //
avgVol = ta.sma(volume, 20)
volSpike = volume > avgVol * volMultiplier
// === Early Signal Logic === //
bullSetup = tightCompression and rsi > 50 and macdBullish and volSpike
bearSetup = tightCompression and rsi < 50 and macdBearish and volSpike
// === Plotting Signals === //
plotshape(bullSetup, title="Bullish Setup", location=location.belowbar, color=color.green, style=shape.labelup, text="100↑")
plotshape(bearSetup, title="Bearish Setup", location=location.abovebar, color=color.red, style=shape.labeldown, text="100↓")
bgcolor(bullSetup ? color.new(color.green, 85) : na)
bgcolor(bearSetup ? color.new(color.red, 85) : na)
// === Alerts === //
alertcondition(bullSetup, title="Bullish 100pt Setup", message="🚀 NIFTY: 100+ point UP move likely!")
alertcondition(bearSetup, title="Bearish 100pt Setup", message="🔻 NIFTY: 100+ point DOWN move likely!")
indicator("🔔 NIFTY 100+ Points Early Move Signal (1H)", overlay=true)
// === Inputs === //
squeezePeriod = input.int(20, title="Price Squeeze Lookback")
rangeTrigger = input.float(100.0, title="Target Move (in Points)")
rsiLength = input.int(14, title="RSI Length")
macdFast = input.int(12)
macdSlow = input.int(26)
macdSignal = input.int(9)
volMultiplier = input.float(1.5, title="Volume Spike Multiplier")
// === RSI & MACD === //
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal)
macdBullish = macdLine > signalLine
macdBearish = macdLine < signalLine
// === Price Compression === //
hh = ta.highest(high, squeezePeriod)
ll = ta.lowest(low, squeezePeriod)
compressionRange = hh - ll
tightCompression = compressionRange < (rangeTrigger * 0.6) // Pre-expansion
// === Volume Spike === //
avgVol = ta.sma(volume, 20)
volSpike = volume > avgVol * volMultiplier
// === Early Signal Logic === //
bullSetup = tightCompression and rsi > 50 and macdBullish and volSpike
bearSetup = tightCompression and rsi < 50 and macdBearish and volSpike
// === Plotting Signals === //
plotshape(bullSetup, title="Bullish Setup", location=location.belowbar, color=color.green, style=shape.labelup, text="100↑")
plotshape(bearSetup, title="Bearish Setup", location=location.abovebar, color=color.red, style=shape.labeldown, text="100↓")
bgcolor(bullSetup ? color.new(color.green, 85) : na)
bgcolor(bearSetup ? color.new(color.red, 85) : na)
// === Alerts === //
alertcondition(bullSetup, title="Bullish 100pt Setup", message="🚀 NIFTY: 100+ point UP move likely!")
alertcondition(bearSetup, title="Bearish 100pt Setup", message="🔻 NIFTY: 100+ point DOWN move likely!")
開源腳本
本著TradingView的真正精神,此腳本的創建者將其開源,以便交易者可以查看和驗證其功能。向作者致敬!雖然您可以免費使用它,但請記住,重新發佈程式碼必須遵守我們的網站規則。
免責聲明
這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。
開源腳本
本著TradingView的真正精神,此腳本的創建者將其開源,以便交易者可以查看和驗證其功能。向作者致敬!雖然您可以免費使用它,但請記住,重新發佈程式碼必須遵守我們的網站規則。
免責聲明
這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。