커뮤니티

산식검토

프로필 이미지
티끌
2021-05-03 10:06:19
837
글번호 148606
답변완료

첨부 이미지

아래는 갭atr을 분봉에서 구현한 수식입니다 그런데 분봉차트에서는 일봉atr이 일직선으로 나타나야 하지 않나요? 그림에서와 같이 변동이 생기니 올바른산식인지 의심이 생깁니다 혹시 금일값을 사용해서 그런가요? 어제의 시가종가를 사용하면 직선으로 나오나요? 부탁드립니다 Var : TH(0),TL(0),TR(0), GATR(0); Var : gap(0),sumgap(0),GO(0),GH(0),GL(0),GC(0),R(0),MI(0); If Date!=Date[1] Then { //날짜가 변경되는 봉에서(분봉에서 첫번째봉) gap = Open-Close[1]; //일간갭 sumGap = sumGap+gap; //일간갭 누적 } GO = O-sumGap; //갭보정시가 GH = H-sumGap; //갭보정고가 GL = L-sumGap; //갭보정저가 GC = C-sumGap; //갭보정종가 If GC[1]>GH Then TH=GC[1]; Else TH=GH; If GC[1]<GL Then TL=GC[1]; Else TL=GL; TR=TH-TL; Gatr = ma(TR,5); Plot1(Gatr);
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-05-03 14:48:46

안녕하세요 예스스탁입니다. 작성하신 수식에서 TR은 당일일봉값이지만 ma(TR,5)은 일봉평균이 아닙니다. 단지 분봉에서 5개봉 평균일 뿐입니다. 일봉은 아래와 같이 작성하셔야 합니다. 수식에서 N이 1이면 전일기준 P일 ATR입니다. 0으로 지정하시면 당일기준 P일 ATR이고 당일값이 포함되므로 값은 수평이 아닙니다. input : P(5),N(1); Var : gap(0),sumgap(0),DGO(0),DGH(0),DGL(0),DGC(0),DGC1(0); var : cnt(0),DTH(0),DTL(0),sum(0),DGatr(0); Array : DTR[100](0); If Date != Date[1] Then { #gap = Open-Close[1]; #sumGap = sumGap+gap; DGC1 = DGC[1]; DGO - O-sumGap; DGH = H-sumGap; DGL = L-sumGap; For cnt = 1 to 99 { DTR[cnt] = DTR[cnt-1][1]; } } if H-sumGap > DGH Then DGH = H-sumGap; if L-sumGap < DGL Then DGL = L-sumGap; DGC = C-sumGap; If DGC1 > DGH Then DTH = DGC1; Else DTH = DGH; If DGC1 < DGL Then DTL = DGC1; Else DTL = DGL; DTR[0] = DTH-DTL; if DTR[P] > 0 Then { sum = 0; for cnt = N to P+N-1 { sum = sum + DTR[cnt]; } DGatr = sum/P; Plot1(DGatr); } 즐거운 하루되세요 > 티끌 님이 쓴 글입니다. > 제목 : 산식검토 > 아래는 갭atr을 분봉에서 구현한 수식입니다 그런데 분봉차트에서는 일봉atr이 일직선으로 나타나야 하지 않나요? 그림에서와 같이 변동이 생기니 올바른산식인지 의심이 생깁니다 혹시 금일값을 사용해서 그런가요? 어제의 시가종가를 사용하면 직선으로 나오나요? 부탁드립니다 Var : TH(0),TL(0),TR(0), GATR(0); Var : gap(0),sumgap(0),GO(0),GH(0),GL(0),GC(0),R(0),MI(0); If Date!=Date[1] Then { //날짜가 변경되는 봉에서(분봉에서 첫번째봉) gap = Open-Close[1]; //일간갭 sumGap = sumGap+gap; //일간갭 누적 } GO = O-sumGap; //갭보정시가 GH = H-sumGap; //갭보정고가 GL = L-sumGap; //갭보정저가 GC = C-sumGap; //갭보정종가 If GC[1]>GH Then TH=GC[1]; Else TH=GH; If GC[1]<GL Then TL=GC[1]; Else TL=GL; TR=TH-TL; Gatr = ma(TR,5); Plot1(Gatr);