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)
สคริปต์โอเพนซอร์ซ
ด้วยเจตนารมณ์หลักของ TradingView ผู้สร้างสคริปต์นี้ได้ทำให้มันเป็นโอเพ่นซอร์ส เพื่อให้เทรดเดอร์สามารถตรวจสอบและยืนยันการทำงานของสคริปต์ได้ ขอแสดงความชื่นชมผู้เขียน! แม้ว่าคุณจะสามารถใช้งานได้ฟรี แต่อย่าลืมว่าการเผยแพร่โค้ดซ้ำนั้นจะต้องเป็นไปตามกฎระเบียบการใช้งานของเรา
คำจำกัดสิทธิ์ความรับผิดชอบ
ข้อมูลและบทความไม่ได้มีวัตถุประสงค์เพื่อก่อให้เกิดกิจกรรมทางการเงิน, การลงทุน, การซื้อขาย, ข้อเสนอแนะ หรือคำแนะนำประเภทอื่น ๆ ที่ให้หรือรับรองโดย TradingView อ่านเพิ่มเติมที่ ข้อกำหนดการใช้งาน
สคริปต์โอเพนซอร์ซ
ด้วยเจตนารมณ์หลักของ TradingView ผู้สร้างสคริปต์นี้ได้ทำให้มันเป็นโอเพ่นซอร์ส เพื่อให้เทรดเดอร์สามารถตรวจสอบและยืนยันการทำงานของสคริปต์ได้ ขอแสดงความชื่นชมผู้เขียน! แม้ว่าคุณจะสามารถใช้งานได้ฟรี แต่อย่าลืมว่าการเผยแพร่โค้ดซ้ำนั้นจะต้องเป็นไปตามกฎระเบียบการใช้งานของเรา
คำจำกัดสิทธิ์ความรับผิดชอบ
ข้อมูลและบทความไม่ได้มีวัตถุประสงค์เพื่อก่อให้เกิดกิจกรรมทางการเงิน, การลงทุน, การซื้อขาย, ข้อเสนอแนะ หรือคำแนะนำประเภทอื่น ๆ ที่ให้หรือรับรองโดย TradingView อ่านเพิ่มเติมที่ ข้อกำหนดการใช้งาน