커뮤니티

문의드립니다

프로필 이미지
파파리리
2019-03-06 15:52:55
192
글번호 126794
답변완료
어제 질문한 번호 61591 내용을 검색하여도 반응이었습니다 그래서 똑같은 내용으로 지표식으로 해보니 잘되고요 조건식을 지우고 해봐도 번응이었습니다 다시 확인 부탁드립니다 1 Input : Period1(222),Period2(222),p(9); var : cnt(0),sum1(0),sum2(0),sum3(0); Array : OO[222](0),CC[222](0); var1 = h[1]; var2 = l[1]; var3 = abs (var1 - var2)*100; if c >= h[1] and Upvol > DownVol and var3 > 3 or c <= l[1] and DownVol > Upvol and var3 > 3 Then { OO[0] = O; CC[0] = C; for cnt = 1 to 221 { OO[cnt] = OO[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if OO[Period1] > 0 then { sum1 = 0; for cnt = 0 to Period1-1 { sum1 = sum1 + OO[cnt]; } var8 = sum1/Period1; } if CC[Period2] > 0 then { sum2 = 0; for cnt = 0 to Period2-1 { sum2 = sum2 + CC[cnt]; } var9 = sum2/Period2; } if OO[P] > 0 then { sum3 = 0; for cnt = 0 to P-1 { sum3 = sum3 + OO[cnt]; } var10 = sum3/P; } if var8 >= var9 and crossup(var10,var8) and C[1] <= var8*1.03 and C[1] >= var8*0.97 Then find(1);
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-03-07 11:40:44

안녕하세요 예스스타입니다. 1 종목검색은 모든 주기에서 최대 500봉만 제공이 됩니다. 지정한 기간을 충족할만큼 OO와 CC값이 모아져야 계산됩니다. 값의 저장이 특정 조건만족시로 지정한 갯수가 모이기 위해 어느정도의 봉이 필요할지 알수가 없습니다. 검색시에 검색이 되지 않으면 500봉 안에 계산에 필요한 값이 지정갯수 이상 모이지 않았기 때문입니다. 종목검색시 설정에서 검색에 필요한 최소기간에 500으로 지정하셔서 검색하시고 기간값도 조절해 보셔야 합니다. 해당 부분은 검색에 제공되는 데이타 갯수문제로 별도로 수식에서 처리가 가능하지 않습니다. 2 수식도 일부 수정해 드립니다. 배열이 222로 [0]~[221]까지 저장되는데 일부 수식에서 [222]값이 요청됩니다, Input : Period1(222),Period2(222),p(9); var : cnt(0),sum1(0),sum2(0),sum3(0); Array : OO[222](0),CC[222](0); var1 = h[1]; var2 = l[1]; var3 = abs (var1 - var2)*100; if c >= h[1] and Upvol > DownVol and var3 > 3 or c <= l[1] and DownVol > Upvol and var3 > 3 Then { OO[0] = O; CC[0] = C; for cnt = 1 to 221 { OO[cnt] = OO[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if OO[Period1-1] > 0 then { sum1 = 0; for cnt = 0 to Period1-1 { sum1 = sum1 + OO[cnt]; } var8 = sum1/Period1; } if CC[Period2-1] > 0 then { sum2 = 0; for cnt = 0 to Period2-1 { sum2 = sum2 + CC[cnt]; } var9 = sum2/Period2; } if OO[P-1] > 0 then { sum3 = 0; for cnt = 0 to P-1 { sum3 = sum3 + OO[cnt]; } var10 = sum3/P; } if var8 >= var9 and crossup(var10,var8) and C[1] <= var8*1.03 and C[1] >= var8*0.97 Then find(1); 즐거운 하루되세요 > 파파리리 님이 쓴 글입니다. > 제목 : 문의드립니다 > 어제 질문한 번호 61591 내용을 검색하여도 반응이었습니다 그래서 똑같은 내용으로 지표식으로 해보니 잘되고요 조건식을 지우고 해봐도 번응이었습니다 다시 확인 부탁드립니다 1 Input : Period1(222),Period2(222),p(9); var : cnt(0),sum1(0),sum2(0),sum3(0); Array : OO[222](0),CC[222](0); var1 = h[1]; var2 = l[1]; var3 = abs (var1 - var2)*100; if c >= h[1] and Upvol > DownVol and var3 > 3 or c <= l[1] and DownVol > Upvol and var3 > 3 Then { OO[0] = O; CC[0] = C; for cnt = 1 to 221 { OO[cnt] = OO[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if OO[Period1] > 0 then { sum1 = 0; for cnt = 0 to Period1-1 { sum1 = sum1 + OO[cnt]; } var8 = sum1/Period1; } if CC[Period2] > 0 then { sum2 = 0; for cnt = 0 to Period2-1 { sum2 = sum2 + CC[cnt]; } var9 = sum2/Period2; } if OO[P] > 0 then { sum3 = 0; for cnt = 0 to P-1 { sum3 = sum3 + OO[cnt]; } var10 = sum3/P; } if var8 >= var9 and crossup(var10,var8) and C[1] <= var8*1.03 and C[1] >= var8*0.97 Then find(1);