커뮤니티

지표수식문의

프로필 이미지
jd01
2018-02-19 20:59:43
126
글번호 116706
답변완료
질문드린 56721 번 정상표시가되지않습니다 다시한번 점검부탁드립니다
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-02-20 11:26:52

안녕하세요 예스스탁입니다. 단순히 정상표기가 되지 않는다고만 하시면 어느 부분을 수정해 드려야 할지 알수 없습니다. 식에 수정해 드릴만한 부분이 보이지 않습니다. 첨부된 그림과 같이 나타나는 지표이며 분봉차트에서 현재 MACD가 12일간 MACD값 중 최저이면 1 아니면 0이 출력되는 지표식입니다. 차트에 최소 12일치의 데이터가 없으면 그려지지 않습니다. 해당 부분은 수식에 주석 붙여드립니다. 주석 참고하셔서 수정보완해 사용하시기 바랍니다. input : short(12),long(26),n(12); var : MACDV(0),cnt(0),dd(0),LL(0); Array : DL[100](0); #MACD MACDV = MACD(short,long); #날짜변경 if sdate != sdate[1] Then{ #차트 날짜수 dd = dd+1; #당일 최저MACD값 저장할 배열변수DL[0]의 초기값은 #현재 MACD값으로 지정 DL[0] = MACDV; #과거일의 값을 다음배열방으로 옮김 #기존 DL[0]은 DL[1]로, 기존DL[1]은 DL[2]로,기존DL[2]은 DL[3]으로 .... for cnt = 1 to 99{ DL[cnt] = DL[cnt-1][1]; } } #DL[0]에 저장된 값보다 작은 MACD값이 발생하면 #DL[0]을 현재 MACD로 변경 if MACDV < DL[0] Then DL[0] = MACDV; #차트의 날짜가 최소 12일이상이면 if dd >= 12 then{ #12일간(DL[0]~DL[11])의 MACD의 최저값중 #가장 작은값 계산 LL = DL[0]; for cnt = 0 to n-1{ if DL[cnt] < LL Then LL = DL[cnt]; } #현재 MACD값이 12일간 최저이면 if MACDV == LL Then plot1(1);#1 출력 Else plot1(0);#아니면 0출력 } 즐거운 하루되세요 > jd01 님이 쓴 글입니다. > 제목 : 지표수식문의 > 질문드린 56721 번 정상표시가되지않습니다 다시한번 점검부탁드립니다