OPEN-SOURCE SCRIPT
Arpoom

//version=5
indicator("Volume & Body Spike Multiplier", overlay=true)
// 1. คำนวณค่าเฉลี่ย 20 แท่ง
avgVol = ta.sma(volume, 20)
currentBody = math.abs(close - open) // ใช้ math.abs เพื่อให้ค่าเป็นบวกเสมอ
avgBody = ta.sma(currentBody, 20)
// 2. คำนวณ Multipliers
volMultiplier = volume / avgVol
bodyMultiplier = currentBody / avgBody
// 3. กำหนดเงื่อนไข
// วอลุ่มมากกว่า 2 เท่า และ เนื้อเทียนยาวกว่าค่าเฉลี่ยเนื้อเทียน 20 แท่ง
volCondition = volume > (avgVol * 2)
bodyCondition = currentBody > avgBody
longCondition = volCondition and bodyCondition and close > open
shortCondition = volCondition and bodyCondition and close <= open
// 4. วาดลูกศร
plotshape(longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Long Body Spike")
plotshape(shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Short Body Spike")
// 5. แสดงตัวเลขบน Label (V = Volume x, B = Body x)
if longCondition
label.new(bar_index, low, str.format("V: {0,number,#.#}x\nB: {1,number,#.#}x", volMultiplier, bodyMultiplier), yloc=yloc.belowbar, color=color.new(color.green, 20), textcolor=color.white, style=label.style_label_up, size=size.small)
if shortCondition
label.new(bar_index, high, str.format("V: {0,number,#.#}x\nB: {1,number,#.#}x", volMultiplier, bodyMultiplier), yloc=yloc.abovebar, color=color.new(color.red, 20), textcolor=color.white, style=label.style_label_down, size=size.small)
// 6. ระบบแจ้งเตือน (Alerts)
alertcondition(longCondition, title="Buy Spike (Vol & Body)", message="Body Spike Up! Vol: {{plot_0}}x, Body: {{plot_1}}x")
alertcondition(shortCondition, title="Sell Spike (Vol & Body)", message="Body Spike Down! Vol: {{plot_0}}x, Body: {{plot_1}}x")
// ส่งค่าออกเพื่อให้ Alert ดึงไปใช้
plot(volMultiplier, "Vol Mult", display=display.none)
plot(bodyMultiplier, "Body Mult", display=display.none)
indicator("Volume & Body Spike Multiplier", overlay=true)
// 1. คำนวณค่าเฉลี่ย 20 แท่ง
avgVol = ta.sma(volume, 20)
currentBody = math.abs(close - open) // ใช้ math.abs เพื่อให้ค่าเป็นบวกเสมอ
avgBody = ta.sma(currentBody, 20)
// 2. คำนวณ Multipliers
volMultiplier = volume / avgVol
bodyMultiplier = currentBody / avgBody
// 3. กำหนดเงื่อนไข
// วอลุ่มมากกว่า 2 เท่า และ เนื้อเทียนยาวกว่าค่าเฉลี่ยเนื้อเทียน 20 แท่ง
volCondition = volume > (avgVol * 2)
bodyCondition = currentBody > avgBody
longCondition = volCondition and bodyCondition and close > open
shortCondition = volCondition and bodyCondition and close <= open
// 4. วาดลูกศร
plotshape(longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Long Body Spike")
plotshape(shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Short Body Spike")
// 5. แสดงตัวเลขบน Label (V = Volume x, B = Body x)
if longCondition
label.new(bar_index, low, str.format("V: {0,number,#.#}x\nB: {1,number,#.#}x", volMultiplier, bodyMultiplier), yloc=yloc.belowbar, color=color.new(color.green, 20), textcolor=color.white, style=label.style_label_up, size=size.small)
if shortCondition
label.new(bar_index, high, str.format("V: {0,number,#.#}x\nB: {1,number,#.#}x", volMultiplier, bodyMultiplier), yloc=yloc.abovebar, color=color.new(color.red, 20), textcolor=color.white, style=label.style_label_down, size=size.small)
// 6. ระบบแจ้งเตือน (Alerts)
alertcondition(longCondition, title="Buy Spike (Vol & Body)", message="Body Spike Up! Vol: {{plot_0}}x, Body: {{plot_1}}x")
alertcondition(shortCondition, title="Sell Spike (Vol & Body)", message="Body Spike Down! Vol: {{plot_0}}x, Body: {{plot_1}}x")
// ส่งค่าออกเพื่อให้ Alert ดึงไปใช้
plot(volMultiplier, "Vol Mult", display=display.none)
plot(bodyMultiplier, "Body Mult", display=display.none)
סקריפט קוד פתוח
ברוח האמיתית של TradingView, יוצר הסקריפט הזה הפך אותו לקוד פתוח, כך שסוחרים יוכלו לעיין בו ולאמת את פעולתו. כל הכבוד למחבר! אמנם ניתן להשתמש בו בחינם, אך זכור כי פרסום חוזר של הקוד כפוף ל־כללי הבית שלנו.
כתב ויתור
המידע והפרסומים אינם מיועדים להיות, ואינם מהווים, ייעוץ או המלצה פיננסית, השקעתית, מסחרית או מכל סוג אחר המסופקת או מאושרת על ידי TradingView. קרא עוד ב־תנאי השימוש.
סקריפט קוד פתוח
ברוח האמיתית של TradingView, יוצר הסקריפט הזה הפך אותו לקוד פתוח, כך שסוחרים יוכלו לעיין בו ולאמת את פעולתו. כל הכבוד למחבר! אמנם ניתן להשתמש בו בחינם, אך זכור כי פרסום חוזר של הקוד כפוף ל־כללי הבית שלנו.
כתב ויתור
המידע והפרסומים אינם מיועדים להיות, ואינם מהווים, ייעוץ או המלצה פיננסית, השקעתית, מסחרית או מכל סוג אחר המסופקת או מאושרת על ידי TradingView. קרא עוד ב־תנאי השימוש.