커뮤니티

3분봉에서...

프로필 이미지
티끌
2017-01-16 12:23:34
121
글번호 105921
답변완료
사용자 함수 Ma7은 0~100사이의 진폭을 가지고 움직이는 지표입니다 Ma7을 3분봉에서 30분봉의 값으로 구현코자 합니다 단순하게 3분봉의 10배라고 생각하고 Ma(Ma7,10)으로 했더니 실제 30분봉차트의 Ma7값과는 다른값이 나옵니다 물론 data2를 사용하면 제대로 나오지만 산식으로 해결코자 합니다 어떻게 해야 할까요?
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-01-16 12:50:38

안녕하세요 예스스탁입니다. ma7 계산식을 알아야 해당지표를 30분봉을 이용하는 값으로 수식을 작성해 볼수 있습니다. 계산식을 모르면 작성이 되지 않습니다. 아래식 참고해서 변경해 보시기 바랍니다. 30분봉 스토케스틱을 그리는 식입니다. input : Atime1(30),StoPeriod(5), StoPeriod1(3), StoPeriod2(3); var : TF1(0),TF2(0),Ep1(0), EP2(0),cnt(0); var : hVal1(0), lVal1(0), StoFastK(0), StoK(0), StoD(0); var : JISU(0), DINDEX(0), PreStoK(0), PreStoD(0); Array : H1[50](0),L1[50](0); TF1 = TimeToMinutes(stime)%Atime1; Ep1 = 2/(StoPeriod1+1); Ep2 = 2/(StoPeriod2+1); if dayindex == 0 or (TF1 < TF1[1] and stime > stime[1]) Then{ H1[0] = H; L1[0] = L; for cnt = 1 to 49{ H1[cnt] = H1[cnt-1][1]; L1[cnt] = L1[cnt-1][1]; } DINDEX = DINDEX + 1; PreStoK = StoK[1]; PreStoD = StoD[1]; } if H > H1[0] Then H1[0] = H; if L < L1[0] Then L1[0] = L; hVal1 = H1[0]; lVal1 = L1[0]; for cnt = 0 to StoPeriod-1 { if H1[cnt] > hVal1 then hVal1 = H1[cnt]; if L1[cnt] < lval1 then LVal1 = L1[cnt]; } StoFastK = (C-lVal1)/(hVal1-lVal1)*100; if DINDEX <= 1 then{ StoK = StoFastK ; StoD = StoK ; } else{ StoK = StoFastK * EP1 + PreStoK * (1-EP1); StoD = StoK * EP2 + PreStoD * (1-EP2); } plot1(StoK); plot2(StoD); PlotBaseLine1(20); PlotBaseLine2(80); 즐거운 하루되세요 > 티끌 님이 쓴 글입니다. > 제목 : 3분봉에서... > 사용자 함수 Ma7은 0~100사이의 진폭을 가지고 움직이는 지표입니다 Ma7을 3분봉에서 30분봉의 값으로 구현코자 합니다 단순하게 3분봉의 10배라고 생각하고 Ma(Ma7,10)으로 했더니 실제 30분봉차트의 Ma7값과는 다른값이 나옵니다 물론 data2를 사용하면 제대로 나오지만 산식으로 해결코자 합니다 어떻게 해야 할까요?