커뮤니티

타분봉 VPCI

프로필 이미지
jdavid
2022-12-26 20:26:22
1114
글번호 164879
답변완료
감사합니다. 아래 VPCI 지표를 타분봉 VPCI지표로 사용하고 싶습니다. (예, 10분봉 VPCI지표를 1분봉에서 사용하고 싶습니다) inputs : P1(5), P2(20), Signal(20); var : Sum1(0), Sum2(0), VWMA1(0), VWMA2(0), VP(0), VPR(0), VM(0), VPCI(0), AvgVPCI(0) ; Sum1 = AccumN(v,P1); if Sum1 > 0 then VWMA1 = AccumN(C*v,P1)/Sum1 ; Sum2 = AccumN(v,P2); if Sum2 > 0 then VWMA2 = AccumN(C*v,P2)/Sum2; VP = VWMA2 - Ma(C,P2) ; VPR = VWMA1 / Ma(Low, P1) ; VM = Ma(v, P1) / ma(v, P2) ; VPCI = VP * VPR * VM ; AvgVPCI = Ma( VPCI, Signal ) ; Plot1(VPCI, "VPCI" ) ; Plot2(AvgVPCI, "VPCIsig" ) ; Plot3( 0, "Zero" ) ;
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-12-27 11:47:31

안녕하세요 예스스탁입니다. inputs : 분(10),P1(5), P2(20), Signal(20); var : S1(0),D1(0),TM(0),TF(0),cnt(0); var : Sum1(0),Sum2(0),sum3(0),cmav(0),lmav(0),vma1(0),vma2(0); var : VWMA1(0), VWMA2(0), VP(0), VPR(0), VM(0), AvgVPCI(0) ; Array : CC[100](0),LL[100](0),VV[100](0),VPCI[100](0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TimeToMinutes(stime)%분; if Bdate != Bdate[1] or (Bdate == Bdate[1] and 분 > 1 and TF < TF[1]) or (Bdate == Bdate[1] and 분 > 1 and TM >= TM[1]+분) or (Bdate == Bdate[1] and 분 == 1 and TM > TM[1]) Then { for cnt = 99 downto 1 { CC[cnt] = CC[cnt-1]; LL[cnt] = LL[cnt-1]; VV[cnt] = VV[cnt-1]; VPCI[cnt] = VPCI[cnt-1]; } LL[0] = L; VV[0] = 0; } if LL[0] > 0 and L < LL[0] Then LL[0] = L; CC[0] = C; VV[0] = VV[0] +V; if VV[P1-1] > 0 Then { sum1 = 0; sum2 = 0; sum3 = 0; For cnt = 0 to P1-1 { sum1 = sum1 + VV[cnt]; sum2 = sum2 + (CC[cnt]*VV[cnt]); sum3 = sum3 + LL[cnt]; } vma1 = sum1/p1; lmav = sum3/P1; VWMA1 = sum2/sum1; VPR = VWMA1 / lmav; } if VV[P2-1] > 0 Then { sum1 = 0; sum2 = 0; sum3 = 0; For cnt = 0 to P2-1 { sum1 = sum1 + VV[cnt]; sum2 = sum2 + (CC[cnt]*VV[cnt]); sum3 = sum3 + CC[cnt]; } VWMA2 = sum2/sum1; cmav = sum3/P2; vma2 = sum1/p2; VP = VWMA2 - cmav; VM = vma1 / vma2; VPCI[0] = VP * VPR * VM ; } if VV[P2+signal-1] > 0 Then { sum1 = 0; For cnt = 0 to signal-1 { sum1 = sum1 + VPCI[cnt]; } AvgVPCI = sum1/signal; } } Plot1(VPCI[0], "VPCI" ) ; Plot2(AvgVPCI, "VPCIsig" ) ; Plot3( 0, "Zero" ) ; 즐거운 하루되세요 > jdavid 님이 쓴 글입니다. > 제목 : 타분봉 VPCI > 감사합니다. 아래 VPCI 지표를 타분봉 VPCI지표로 사용하고 싶습니다. (예, 10분봉 VPCI지표를 1분봉에서 사용하고 싶습니다) inputs : P1(5), P2(20), Signal(20); var : Sum1(0), Sum2(0), VWMA1(0), VWMA2(0), VP(0), VPR(0), VM(0), VPCI(0), AvgVPCI(0) ; Sum1 = AccumN(v,P1); if Sum1 > 0 then VWMA1 = AccumN(C*v,P1)/Sum1 ; Sum2 = AccumN(v,P2); if Sum2 > 0 then VWMA2 = AccumN(C*v,P2)/Sum2; VP = VWMA2 - Ma(C,P2) ; VPR = VWMA1 / Ma(Low, P1) ; VM = Ma(v, P1) / ma(v, P2) ; VPCI = VP * VPR * VM ; AvgVPCI = Ma( VPCI, Signal ) ; Plot1(VPCI, "VPCI" ) ; Plot2(AvgVPCI, "VPCIsig" ) ; Plot3( 0, "Zero" ) ;