커뮤니티

변환 부탁드립니다

프로필 이미지
고저중
2025-09-29 22:19:16.0
60
글번호 194389
답변완료
//@version=5 indicator("VWAP Bands", overlay=true) var float vwapsum = na var float volumesum = na var float v2sum = na var float myvwap = na var float dev = na var float prevwap = na showPWAP = input(false, title="Show Previous VWAP Close") upr1 = input(1.01, title="+1 Projection", group = "Projection One") dpr1 = input(1.01, title="-1 Projection", group = "Projection One") upr2 = input(1.62, title="+2 Projection", group = "Projection Two") dpr2 = input(1.62, title="-2 Projection", group = "Projection Two") upr3 = input(2.62, title="+3 Projection", group = "Projection Three") dpr3 = input(2.62, title="-3 Projection", group = "Projection Three") showPr1 = input(true, title="Show First Projection", group = "Projection One") showPr2 = input(true, title="Show Second Projection", group = "Projection Two") showPr3 = input(true, title="Show Third Projection", group = "Projection Three") start = request.security(syminfo.tickerid, "D", time) newSession = ta.change(start) ? 1 : 0 vwapsum := newSession ? hl2 * volume : vwapsum[1] + hl2 * volume volumesum := newSession ? volume : volumesum[1] + volume v2sum := newSession ? volume * hl2 * hl2 : v2sum[1] + volume * hl2 * hl2 myvwap := vwapsum / volumesum dev := math.sqrt(math.max(v2sum / volumesum - myvwap * myvwap, 0)) trendcolor = close > myvwap ? color.new(color.lime, 0) : color.new(color.red, 0) A = plot(myvwap, style=plot.style_line, title="VWAP", color=trendcolor) trendcolor2 = close > (myvwap + upr1 * dev) ? color.new(color.lime, 75) : color.new(color.red, 75) U1 = plot(showPr1 ? myvwap + upr1 * dev : na, style=plot.style_line, title="VWAP Upper (1)", color=trendcolor2) trendcolor3 = close > (myvwap - dpr1 * dev) ? color.new(color.lime, 75) : color.new(color.red, 75) D1 = plot(showPr1 ? myvwap - dpr1 * dev : na, style=plot.style_line, title="VWAP Lower (1)", color=trendcolor3) trendcolor4 = close > (myvwap + upr2 * dev) ? color.new(color.lime, 50) : color.new(color.red, 50) U2 = plot(showPr2 ? myvwap + upr2 * dev : na, style=plot.style_line, title="VWAP Upper (2)", color=trendcolor4) trendcolor5 = close > (myvwap - dpr2 * dev) ? color.new(color.lime, 50) : color.new(color.red, 50) D2 = plot(showPr2 ? myvwap - dpr2 * dev : na, style=plot.style_line, title="VWAP Lower (2)", color=trendcolor5) trendcolor6 = close > (myvwap + upr3 * dev) ? color.new(color.lime, 45) : color.new(color.red, 45) U3 = plot(showPr3 ? myvwap + upr3 * dev : na, style=plot.style_line, title="VWAP Upper (3)", color=trendcolor6) trendcolor7 = close > (myvwap - dpr3 * dev) ? color.new(color.lime, 45) : color.new(color.red, 45) D3 = plot(showPr3 ? myvwap - dpr3 * dev : na, style=plot.style_line, title="VWAP Lower (3)", color=trendcolor7) prevwap := newSession ? myvwap[1] : prevwap[1] plot(showPWAP ? prevwap : na, style=plot.style_line, color=close > prevwap ? color.new(color.aqua, 35) : color.new(color.fuchsia, 35), linewidth=1, title="Previous VWAP")
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-09-30 12:58:16.0

안녕하세요 예스스탁입니다. var : vwapsum(nan); var : volumesum(nan); var : v2sum(nan); var : myvwap(nan); var : dev(nan); var : prevwap(nan); input : showPWAP(false); input : upr1(1.01); input : dpr1(1.01); input : upr2(1.62); input : dpr2(1.62); input : upr3(2.62); input : dpr3(2.62); input : showPr1(true); input : showPr2(true); input : showPr3(true); var : hl2(0),trendcolor(0); var : trendcolor2(0),trendcolor3(0),trendcolor4(0); var : trendcolor5(0),trendcolor6(0),trendcolor7(0); hl2 = (h+L)/2; if bdate != Bdate[1] Then { vwapsum = 0; volumesum = 0; v2sum = 0; prevwap = myvwap[1]; } vwapsum = vwapsum + (hl2 * volume); volumesum = volumesum +volume; v2sum = v2sum + (volume * hl2 * hl2); myvwap = vwapsum / volumesum; dev = sqrt(max(v2sum / volumesum - myvwap * myvwap, 0)); trendcolor = iff(close > myvwap , lime , red); trendcolor2 = iff(close > (myvwap + upr1 * dev) , lime , red); trendcolor3 = iff(close > (myvwap - dpr1 * dev) , lime , red); trendcolor4 = iff(close > (myvwap + upr2 * dev) , lime , red); trendcolor5 = iff(close > (myvwap - dpr2 * dev) , lime , red); trendcolor6 = iff(close > (myvwap + upr3 * dev) , lime , red); trendcolor7 = iff(close > (myvwap - dpr3 * dev) , lime , red); plot1(myvwap, "VWAP",trendcolor); if showPr1 == true Then { plot2(myvwap + upr1 * dev,"VWAP Upper (1)",trendcolor2); plot3(myvwap - dpr1 * dev,"VWAP Lower (1)",trendcolor3); } Else { NoPlot(2); NoPlot(3); } if showPr2 == true Then { plot4(myvwap + upr2 * dev,"VWAP Upper (2)",trendcolor4); plot5(myvwap - dpr2 * dev,"VWAP Lower (2)",trendcolor5); } Else { NoPlot(4); NoPlot(5); } if showPr3 == true Then { plot6(myvwap + upr3 * dev,"VWAP Upper (3)",trendcolor6); plot7(myvwap - dpr3 * dev,"VWAP Lower (3)",trendcolor7); } Else { NoPlot(6); NoPlot(7); } if showPWAP == true Then plot8(prevwap,"Previous VWAP",iff(close > prevwap ,Cyan , Magenta)); 즐거운 명절 되시기 바랍니다. > 고저중 님이 쓴 글입니다. > 제목 : 변환 부탁드립니다 > //@version=5 indicator("VWAP Bands", overlay=true) var float vwapsum = na var float volumesum = na var float v2sum = na var float myvwap = na var float dev = na var float prevwap = na showPWAP = input(false, title="Show Previous VWAP Close") upr1 = input(1.01, title="+1 Projection", group = "Projection One") dpr1 = input(1.01, title="-1 Projection", group = "Projection One") upr2 = input(1.62, title="+2 Projection", group = "Projection Two") dpr2 = input(1.62, title="-2 Projection", group = "Projection Two") upr3 = input(2.62, title="+3 Projection", group = "Projection Three") dpr3 = input(2.62, title="-3 Projection", group = "Projection Three") showPr1 = input(true, title="Show First Projection", group = "Projection One") showPr2 = input(true, title="Show Second Projection", group = "Projection Two") showPr3 = input(true, title="Show Third Projection", group = "Projection Three") start = request.security(syminfo.tickerid, "D", time) newSession = ta.change(start) ? 1 : 0 vwapsum := newSession ? hl2 * volume : vwapsum[1] + hl2 * volume volumesum := newSession ? volume : volumesum[1] + volume v2sum := newSession ? volume * hl2 * hl2 : v2sum[1] + volume * hl2 * hl2 myvwap := vwapsum / volumesum dev := math.sqrt(math.max(v2sum / volumesum - myvwap * myvwap, 0)) trendcolor = close > myvwap ? color.new(color.lime, 0) : color.new(color.red, 0) A = plot(myvwap, style=plot.style_line, title="VWAP", color=trendcolor) trendcolor2 = close > (myvwap + upr1 * dev) ? color.new(color.lime, 75) : color.new(color.red, 75) U1 = plot(showPr1 ? myvwap + upr1 * dev : na, style=plot.style_line, title="VWAP Upper (1)", color=trendcolor2) trendcolor3 = close > (myvwap - dpr1 * dev) ? color.new(color.lime, 75) : color.new(color.red, 75) D1 = plot(showPr1 ? myvwap - dpr1 * dev : na, style=plot.style_line, title="VWAP Lower (1)", color=trendcolor3) trendcolor4 = close > (myvwap + upr2 * dev) ? color.new(color.lime, 50) : color.new(color.red, 50) U2 = plot(showPr2 ? myvwap + upr2 * dev : na, style=plot.style_line, title="VWAP Upper (2)", color=trendcolor4) trendcolor5 = close > (myvwap - dpr2 * dev) ? color.new(color.lime, 50) : color.new(color.red, 50) D2 = plot(showPr2 ? myvwap - dpr2 * dev : na, style=plot.style_line, title="VWAP Lower (2)", color=trendcolor5) trendcolor6 = close > (myvwap + upr3 * dev) ? color.new(color.lime, 45) : color.new(color.red, 45) U3 = plot(showPr3 ? myvwap + upr3 * dev : na, style=plot.style_line, title="VWAP Upper (3)", color=trendcolor6) trendcolor7 = close > (myvwap - dpr3 * dev) ? color.new(color.lime, 45) : color.new(color.red, 45) D3 = plot(showPr3 ? myvwap - dpr3 * dev : na, style=plot.style_line, title="VWAP Lower (3)", color=trendcolor7) prevwap := newSession ? myvwap[1] : prevwap[1] plot(showPWAP ? prevwap : na, style=plot.style_line, color=close > prevwap ? color.new(color.aqua, 35) : color.new(color.fuchsia, 35), linewidth=1, title="Previous VWAP")