OPEN-SOURCE SCRIPT
Simple Demand Indicator v3.1 (MA + RSI Kombinasi)

//version=5
indicator("Simple Demand Indicator v3.1 (MA + RSI Kombinasi)", overlay=true)
// Input
maLength = input.int(50, "Moving Average Length")
rsiLength = input.int(14, "RSI Length")
overSold = input.int(30, "RSI Oversold")
overBought = input.int(70, "RSI Overbought")
// Hitung MA & RSI
ma = ta.sma(close, maLength)
rsi = ta.rsi(close, rsiLength)
// Sinyal dasar crossing MA
buySignal = ta.crossover(close, ma)
sellSignal = ta.crossunder(close, ma)
// Warna panah sesuai RSI
buyColor = (rsi < overSold) ? color.lime : color.green
sellColor = (rsi > overBought)? color.red : color.orange
// Plot MA
plot(ma, color=color.orange, title="MA Trend")
// Plot panah BUY
plotshape(buySignal, title="BUY", style=shape.labelup,
color=buyColor, text="BUY", textcolor=color.white,
location=location.belowbar, size=size.small)
// Plot panah SELL
plotshape(sellSignal, title="SELL", style=shape.labeldown,
color=sellColor, text="SELL", textcolor=color.white,
location=location.abovebar, size=size.small)
// Alerts
alertcondition(buySignal, title="BUY Signal",
message="📈 BUY Signal pada {{ticker}} TF {{interval}} (RSI={{rsi}})")
alertcondition(sellSignal, title="SELL Signal",
message="📉 SELL Signal pada {{ticker}} TF {{interval}} (RSI={{rsi}})")
indicator("Simple Demand Indicator v3.1 (MA + RSI Kombinasi)", overlay=true)
// Input
maLength = input.int(50, "Moving Average Length")
rsiLength = input.int(14, "RSI Length")
overSold = input.int(30, "RSI Oversold")
overBought = input.int(70, "RSI Overbought")
// Hitung MA & RSI
ma = ta.sma(close, maLength)
rsi = ta.rsi(close, rsiLength)
// Sinyal dasar crossing MA
buySignal = ta.crossover(close, ma)
sellSignal = ta.crossunder(close, ma)
// Warna panah sesuai RSI
buyColor = (rsi < overSold) ? color.lime : color.green
sellColor = (rsi > overBought)? color.red : color.orange
// Plot MA
plot(ma, color=color.orange, title="MA Trend")
// Plot panah BUY
plotshape(buySignal, title="BUY", style=shape.labelup,
color=buyColor, text="BUY", textcolor=color.white,
location=location.belowbar, size=size.small)
// Plot panah SELL
plotshape(sellSignal, title="SELL", style=shape.labeldown,
color=sellColor, text="SELL", textcolor=color.white,
location=location.abovebar, size=size.small)
// Alerts
alertcondition(buySignal, title="BUY Signal",
message="📈 BUY Signal pada {{ticker}} TF {{interval}} (RSI={{rsi}})")
alertcondition(sellSignal, title="SELL Signal",
message="📉 SELL Signal pada {{ticker}} TF {{interval}} (RSI={{rsi}})")
Script open-source
Dans l'esprit de TradingView, le créateur de ce script l'a rendu open-source, afin que les traders puissent examiner et vérifier sa fonctionnalité. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais n'oubliez pas que la republication du code est soumise à nos Règles.
Clause de non-responsabilité
Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.
Script open-source
Dans l'esprit de TradingView, le créateur de ce script l'a rendu open-source, afin que les traders puissent examiner et vérifier sa fonctionnalité. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais n'oubliez pas que la republication du code est soumise à nos Règles.
Clause de non-responsabilité
Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.