커뮤니티

재질문입니다.

프로필 이미지
7007
2016-02-02 01:46:10
122
글번호 95073
답변완료
아래수식은 분봉에서 일간의 갭보정 고가,저가,시가,종가를 호출하는 사용자 함수입니다. 이전 문의드린 내용에서 작성해주신것을 쪼개었는데 맞는지 확인 부탁드립니다. 값이 다르게 나오는것 같습니다. 감사합니다^^ =================================================== #갭보정 N일전 일봉 고가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GH(0),cnt(0); Array : DAH[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAH[0] = H - sumGap; for cnt = 1 to 12{ DAH[cnt] = DAH[cnt-1][1]; } } GH = H - sumGap; if GH > DAH[0] Then DAH[0] = GH; GDH=DAH[N]; ============================ #갭보정 N일전 일봉 저가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GL(0),cnt(0); Array : DAL[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAL[0] = L - sumGap; for cnt = 1 to 12{ DAL[cnt] = DAL[cnt-1][1]; } } GL = L - sumGap; if GL < DAL[0] Then DAL[0] = GL; GDL=DAL[N]; =============================== #갭보정 N일전 일봉 시가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GO(0),cnt(0); Array : DAO[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAO[0] = O - sumGap; for cnt = 1 to 12{ DAO[cnt] = DAO[cnt-1][1]; } } GO = O - sumGap; DAO[0] = GO; GDO=DAO[N]; ===================================== #갭보정 N일전 일봉 종가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GC(0),cnt(0); Array : DAC[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAC[0] = C - sumGap; for cnt = 1 to 12{ DAC[cnt] = DAC[cnt-1][1]; } } GC = C - sumGap; DAC[0] = GC; GDC=DAC[N];
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-02-02 09:33:38

안녕하세요 예스스탁입니다. 갭보정 일봉시가만 아래와 같이 수정하시면 됩니다. 참고로 아시는 내용이시겠지만 수식에서 갭보정은 차트자체의 갭보정과는 개념이 다릅니다. 기본차트속성에서의 갭보정은 당일 데이타를 고정한 상태에서 과거로 가면서 보정을 해가게 됩니다. 갭보정을 사용하면 날마다 과거 데이터가 바뀌어 시스템등이 매일 과거 신호가 변경되어 사용할수 없으므로 수식보정은 과거에서 현재로 오면서 보정한 값을 만들어서 사용하게 됩니다. 이용에 참고하시기 바랍니다. input : N(numeric); var : gap(0),sumgap(0),GO(0),cnt(0); Array : DAO[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAO[0] = O - sumGap; for cnt = 1 to 12{ DAO[cnt] = DAO[cnt-1][1]; } } GDO=DAO[N]; 즐거운 하루되세요 > 7007 님이 쓴 글입니다. > 제목 : 재질문입니다. > 아래수식은 분봉에서 일간의 갭보정 고가,저가,시가,종가를 호출하는 사용자 함수입니다. 이전 문의드린 내용에서 작성해주신것을 쪼개었는데 맞는지 확인 부탁드립니다. 값이 다르게 나오는것 같습니다. 감사합니다^^ =================================================== #갭보정 N일전 일봉 고가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GH(0),cnt(0); Array : DAH[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAH[0] = H - sumGap; for cnt = 1 to 12{ DAH[cnt] = DAH[cnt-1][1]; } } GH = H - sumGap; if GH > DAH[0] Then DAH[0] = GH; GDH=DAH[N]; ============================ #갭보정 N일전 일봉 저가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GL(0),cnt(0); Array : DAL[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAL[0] = L - sumGap; for cnt = 1 to 12{ DAL[cnt] = DAL[cnt-1][1]; } } GL = L - sumGap; if GL < DAL[0] Then DAL[0] = GL; GDL=DAL[N]; =============================== #갭보정 N일전 일봉 시가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GO(0),cnt(0); Array : DAO[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAO[0] = O - sumGap; for cnt = 1 to 12{ DAO[cnt] = DAO[cnt-1][1]; } } GO = O - sumGap; DAO[0] = GO; GDO=DAO[N]; ===================================== #갭보정 N일전 일봉 종가를 나타냅니다. input : N(numeric); var : gap(0),sumgap(0),GC(0),cnt(0); Array : DAC[13](0); if date!=date[1] THen { gap = Open-Close[1]; sumGap = sumGap+gap; DAC[0] = C - sumGap; for cnt = 1 to 12{ DAC[cnt] = DAC[cnt-1][1]; } } GC = C - sumGap; DAC[0] = GC; GDC=DAC[N];