커뮤니티

재문의 드립니다.

프로필 이미지
신대륙발견
2025-11-06 17:38:16
85
글번호 227724
답변완료

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));
하단선은 제대로 표현이 되는데 상단선은 제대로 표현이 안됩니다. 상단선 검은색이 엉뚱한곳에서 표현이 됩니다. 수정 좀 해주세요.

지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-11-07 11:07:01

안녕하세요 예스스탁입니다. input : len(20); var : h_vwap(high); var : l_vwap(low); var : new_high(False),new_low(False); var : upper(Nan); var : lower(nan); var : hst(0),lst(0); var : sum1(nan),sum2(Nan),sum3(Nan),sum4(Nan); var : h_change(0),l_change(0); var : dir(0),dir2(0),mid(0); hst = highest(H,len); lst = lowest(L,len); new_high = high == hst; new_low = low == lst; if new_high == true Then { sum1 = 0; sum2 = 0; } sum1 = sum1+(h*v); sum2 = sum2+v; if new_low == true Then { sum3 = 0; sum4 = 0; } sum3 = sum3+(h*v); sum4 = sum4+v; if sum1 > 0 Then h_vwap = sum1/sum2; if sum3 > 0 Then l_vwap = sum3/sum4; 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 = (upper+lower)/2; 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)); 즐거운 하루되세요