OPEN-SOURCE SCRIPT
BTC – MA20/50/200 (Overlay)

//version=5
indicator("BTC – MA20/50/200 (Overlay)", overlay=true, max_lines_count=500)
// ==== Inputs ====
tf = input.timeframe("", "Multi-TF (để trống = khung hiện tại)")
lenMA1 = input.int(20, "MA1 (ngắn)")
lenMA2 = input.int(50, "MA2 (trung)")
lenMA3 = input.int(200, "MA3 (dài)")
useEMA = input.bool(false, "Dùng EMA thay vì SMA")
// ==== Series ====
src = request.security(syminfo.tickerid, tf == "" ? timeframe.period : tf, close)
// ==== MA helper ====
ma(src,len,ema) => ema ? ta.ema(src,len) : ta.sma(src,len)
ma1 = ma(src,lenMA1,useEMA)
ma2 = ma(src,lenMA2,useEMA)
ma3 = ma(src,lenMA3,useEMA)
// ==== Plots ====
plot(ma1, title="MA20/EMA20", linewidth=2)
plot(ma2, title="MA50/EMA50", linewidth=2)
plot(ma3, title="MA200/EMA200", linewidth=2)
// ==== Labels gợi ý ====
condPullback = close < ma1 and close >= ma2
condTrendUp = close > ma2 and ma2 > ma3
condRisk = close < ma2
if condPullback
label.new(bar_index, high, "Pullback về MA ngắn", textalign=text.align_left)
if condTrendUp
label.new(bar_index, low, "Xu hướng tăng duy trì", textalign=text.align_left)
if condRisk
label.new(bar_index, high, "Mất MA trung – thận trọng", textalign=text.align_left)
indicator("BTC – MA20/50/200 (Overlay)", overlay=true, max_lines_count=500)
// ==== Inputs ====
tf = input.timeframe("", "Multi-TF (để trống = khung hiện tại)")
lenMA1 = input.int(20, "MA1 (ngắn)")
lenMA2 = input.int(50, "MA2 (trung)")
lenMA3 = input.int(200, "MA3 (dài)")
useEMA = input.bool(false, "Dùng EMA thay vì SMA")
// ==== Series ====
src = request.security(syminfo.tickerid, tf == "" ? timeframe.period : tf, close)
// ==== MA helper ====
ma(src,len,ema) => ema ? ta.ema(src,len) : ta.sma(src,len)
ma1 = ma(src,lenMA1,useEMA)
ma2 = ma(src,lenMA2,useEMA)
ma3 = ma(src,lenMA3,useEMA)
// ==== Plots ====
plot(ma1, title="MA20/EMA20", linewidth=2)
plot(ma2, title="MA50/EMA50", linewidth=2)
plot(ma3, title="MA200/EMA200", linewidth=2)
// ==== Labels gợi ý ====
condPullback = close < ma1 and close >= ma2
condTrendUp = close > ma2 and ma2 > ma3
condRisk = close < ma2
if condPullback
label.new(bar_index, high, "Pullback về MA ngắn", textalign=text.align_left)
if condTrendUp
label.new(bar_index, low, "Xu hướng tăng duy trì", textalign=text.align_left)
if condRisk
label.new(bar_index, high, "Mất MA trung – thận trọng", textalign=text.align_left)
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.