커뮤니티

문의 드립니다.

프로필 이미지
신대륙발견
2025-11-06 08:58:12
186
글번호 227692
답변완료

///_____________________________________________________________________________________________________________________

///Inputs

///‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾



tf = input.timeframe("", title = "Timeframe")

len = input.int(20, title = "Length", minval = 1)



‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾



get_vpc(_len) =>  

    //Main Logic

    var float h_vwap = high

    var float l_vwap = low



    float upper = na

    float lower = na



    hst = ta.highest(_len)

    lst = ta.lowest(_len)



    new_high = high == hst

    new_low = low == lst



    h_vwap := ta.vwap(high,new_high)

    l_vwap := ta.vwap(low,new_low)



    h_change = ta.change(h_vwap)

    l_change = ta.change(l_vwap)



    upper := new_high ? hst : (hst == hst[1] ? upper[1] + h_change : math.min(hst,upper[1] + h_change))

    lower := new_low ? lst : (lst == lst[1] ? lower[1] + l_change : math.max(lst,lower[1] + l_change))



    _avg = math.avg(upper,lower)

   

    //Trend Detection & Coloring

    var int dir = 0

    var int dir2 = 0

   

    dir := new_high?1:new_low?-1:0

    dir2 := new_high?1:new_low?-1:dir2[1]

   

    [upper,lower,_avg,hst,lst,dir,dir2]



//Calling Function

[upper,lower,mid,hst,lst,dir,dir2] = request.security("",tf,get_vpc(len))



///_____________________________________________________________________________________________________________________

///Display

///‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾



u = plot(upper, title = "Upper", color = dir == 1 ? color.rgb(0,0,0,100):color.rgb(255, 3, 62), style = plot.style_linebr)

plot(mid, title = "Mid", color = color.gray, display = display.none)

l = plot(lower, title = "Lower", color = dir == -1 ? color.rgb(0,0,0,100):color.rgb(61, 170, 69), style = plot.style_linebr)

c = plot(close, display = display.none, editable = false)



fill(u,c,dir2 == 1?color.rgb(0,0,0,100):color.rgb(255, 3, 62, 95), title = "Fill")

fill(l,c,dir2 == -1?color.rgb(0,0,0,100):color.rgb(61, 170, 69, 95), title = "Fill")



plot(hst, title = "DC Upper", color = #004d92, display = display.none)

plot(lst, title = "DC Lower", color = #004d92, display = display.none)

//<---nice



트레이딩뷰 수식입니다.

예스로 좀 바꿔주세요.

지표
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2025-11-06 13:21:37


안녕하세요 예스스탁입니다. input : len(20); var : hst(0),lst(0); var : upper(Nan),lower(Nan); var : new_high(False),new_low(False); var : hsum1(0),hsum2(0),h_vwap(high),h_change(0); var : lsum1(0),lsum2(0),l_vwap(low),l_change(0); var : _avg(0),mid(0),dir(0),dir2(0); hst = highest(h,len); lst = lowest(l,len); new_high = high == hst; new_low = low == lst; if new_high == true Then { hsum1 = 0; hsum2 = 0; } hsum1 = hsum1 + (high*V); hsum2 = hsum2 + V; h_vwap = Hsum1/Hsum2; if new_low == true Then { lsum1 = 0; lsum2 = 0; } lsum1 = lsum1 + (low*V); lsum2 = lsum2 + V; l_vwap = lsum1/lsum2; h_change = h_vwap-h_vwap[1]; l_change = l_vwap-l_vwap[1]; upper = iff(new_high , hst, IFF(hst == hst[1] , upper[1] + h_change , min(hst,upper[1] + h_change))); lower = iff(new_low , lst , IFF(lst == lst[1] , lower[1] + l_change , max(lst,lower[1] + l_change))); mid = avg(upper,lower); dir = iff(new_high,1,iff(new_low,-1,0)); dir2 = iff(new_high,1,iff(new_low,-1,dir2[1])); plot1(upper, "Upper",iff(dir == -1 , Black,Red)); plot2(mid, "Mid", gray); plot3(lower,"Lower", iff(dir == -1 , Black,Green)); 즐거운 하루되세요

프로필 이미지

신대륙발견

2025-11-06 15:33:37

오류가 생깁니다. 확인 좀 해주세요.
프로필 이미지

예스스탁 예스스탁 답변

2025-11-06 16:48:47

안녕하세요
예스스탁입니다.

답변 드린 수식에 별도로 오류가 없습니다. 아래와 같이 검증완료가 되고 차트에도 잘 적용이 됩니다. 새로 지표 편집창 여신후에 다시 복사해서 붙여넣고 검증해 보시기 바랍니다.
즐거운 하루되세요