커뮤니티

수식 좀 봐주세요

프로필 이미지
초심자
2021-09-08 22:08:45
826
글번호 152140
답변완료
현재 봉에서 이전 200봉(임의 설정) 내를 기준으로 20일선 위에 있는 모든 종가들의 합의 평균 20일선 밑에 있는 모든 종가들의 합의 평균 각각 따로 계산하고 싶습니다. var : cnt(0), cnt1(0), cnt2(0); For cnt=0 to 199 { if close[cnt] - ma(close[cnt],20) > 0 then {value1 = value1+close[cnt] - ma(close[cnt],20); cnt1 = cnt1+1;} Else { value2 = value2+close[cnt] - ma(close[cnt],20); cnt2 = cnt2+1; } } plot1(value1/cnt1, "aa"); plot2(value2/cnt2, "bb"); 대충 이런식으로 for문 짜봤는데 값이 이상하게 나와요
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-09-09 10:32:36

안녕하세요 예스스탁입니다. 매봉 최근 200개봉의 값을 누적하므로 누적전에 각 변수는 0으로 초기화되게 작성하셔야 합니다. 또한 매봉 200번의 이동평균을 계산하는 것보다는 이평은 변수처리하고 for문에서는 변수를 이용해야 로드가 덜 발생하는 수식이 됩니다. var : cnt(0), cnt1(0), cnt2(0); #매봉 종가-이평계산 var1 = C-ma(c,20); #매봉 0으로 초기화 value1 = 0; Value2 = 0; cnt2 = 0; cnt2 = 0; For cnt=0 to 199 { if var1[cnt] > 0 then { value1 = value1+close[cnt] - ma(close[cnt],20); cnt1 = cnt1+1; } Else { value2 = value2+close[cnt] - ma(close[cnt],20); cnt2 = cnt2+1; } } plot1(value1/cnt1, "aa"); plot2(value2/cnt2, "bb"); 즐거운 하루되세요 > 초심자 님이 쓴 글입니다. > 제목 : 수식 좀 봐주세요 > 현재 봉에서 이전 200봉(임의 설정) 내를 기준으로 20일선 위에 있는 모든 종가들의 합의 평균 20일선 밑에 있는 모든 종가들의 합의 평균 각각 따로 계산하고 싶습니다. var : cnt(0), cnt1(0), cnt2(0); For cnt=0 to 199 { if close[cnt] - ma(close[cnt],20) > 0 then {value1 = value1+close[cnt] - ma(close[cnt],20); cnt1 = cnt1+1;} Else { value2 = value2+close[cnt] - ma(close[cnt],20); cnt2 = cnt2+1; } } plot1(value1/cnt1, "aa"); plot2(value2/cnt2, "bb"); 대충 이런식으로 for문 짜봤는데 값이 이상하게 나와요