커뮤니티

잘못을 찾아주세요 종목 검색시 누락이나 잘못된 결과가 나옵니다.

프로필 이미지
매매신호
2025-11-24 06:20:35
51
글번호 228337
답변완료

안녕하세요? 고생이 많으십니다. 조건 정하고  종목검색을 할 때, 조건이 과거 15봉 전에 만족한 것 까지 검색하고 싶습니다. 결과에는 만족한 이전 날짜를 붙이구요. 그래서 아래와 같이 검색을 했는데, 제가 원하는 상태의 조건이 검색되지 않습니다. 누락이 되기도 하고 엉뚱한 종목이 나오기도 합니다. 제가 뭘 잘못 했을까요? 해결을 부탁드립니다.
Var : cond(false); cond =  조건1 ;
/* =========  0~15일 전 조건 출력 ========= */
If cond     then Find(0); If cond[1]  then Find(1); If cond[2]  then Find(2); If cond[3]  then Find(3); If cond[4]  then Find(4); If cond[5]  then Find(5); If cond[6]  then Find(6); If cond[7]  then Find(7); If cond[8]  then Find(8); If cond[9]  then Find(9); If cond[10] then Find(10); If cond[11] then Find(11); If cond[12] then Find(12); If cond[13] then Find(13); If cond[14] then Find(14); If cond[15] then Find(15);

종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-11-24 14:18:21

안녕하세요 예스스탁입니다. 1 종목검색은 조건에 만족하지 않은 종목을 내부적으로 0으로 할당해 제외합니다. If cond     then Find(0); 와 같은 내용은 오늘 만족한 종목을 제외하는 것과 같습니다. find의 결과값에는 0이 아닌 값을 지정해 주셔야 합니다. 2 종목검색 속성에서 검색에 필요한 최소기간에 500봉 지정하고 검색후에 차트도 500봉 지정하고 검색하시기 바랍니다. 조건에 사용하는 값이 과거봉에 따라 현재값이 달라지는 계산방법을 사용하는 지표나 계산의 경우 과거 몇봉을 조회하는지에 따라 값이 달라집니다. 3 식을 간략하게 줄여 드립니다. 오늘 만족한 종목은 0이 아닌 0.1로 표시됩니다. Var : cond(false); var : i(Nan),diff(Nan); cond = 조건1; if cond == true Then i = Index; diff = Index-i; if diff == 0 Then diff = 0.1; //0~15봉안에 1회이상 발생 if CountIf(cond,16) >= 1 Then { Find(diff); } 즐거운 하루되세요