커뮤니티

문의드립니다.

프로필 이미지
저스트뚜잇
2022-05-22 14:34:54
1407
글번호 159125
답변완료

첨부 이미지

기준봉(고가가 29%이상인 봉)이 하나 형성된 후 처음으로 20이평 아래에 종가가 형성되는 봉의 위치를 찾으려고합니다. (아래의 식은 질문을 위해 간결하게 코딩한 것으로 임의로 변수를 설정하였습니다) //////////////////////////////////////////////////////////// var99 = 32; //20220405 봉 (20220522에 검색하였음) value1 = 0; Value2 = 50; If (H[var99]-C[var99+1])/C[var99+1]*100>29 //고가가 29%이상 봉이 세워질 때 Then { For value99 = value1 to value2 { If ma(C[var99-Value99], 20) > C[Var99-Value99] //처음으로 20이평 아래에 종가가 형성될 때 Then { Find(Value99); //Value99 : 기준봉 발생 이후 조건에 부합한 봉의 위치 Value99 = Value2+1; //break; (조건에 맞는 종목이 잡히면 For문 바로 빠져나감) } } } //////////////////////////////////////////////////////////////// 실제로 20220405에 고가가 29%인 봉이 세워진 종목은 금호에이치티, 해성옵틱스, 에디슨INNO, 큐캐피탈, 국제약품, 무림SP (총 6개)로 잘 검색되는데 모든 종목이 결국 50봉 내에 20이평 아래로 내려왔음에도 불구하고 실제로 검색된 종목은 에디슨INNO, 국제약품, 금호에이치티밖에 검색되지 않았고 검색결과값(value99)도 저의 예상과 다르게 나왔습니다. 국제약품의 경우 14..? 금호에이치티의 경우 4..? 의 값으로 나올 것으로 기대하고 있는데.. ma(C[var99-Value99], 20) > C[Var99-Value99] 이 조건식에 문제가 있다고보고 계속 수정을 하였는데 아무리 수정해도 되지 않아서 문의드립니다. 미리 감사드립니다!
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-05-23 12:56:49

안녕하세요 예스스탁입니다. 1 함수의 값을 이전봉 참조할 경우 해당 함수를 변수처리한 후에 이용하셔야 합니다. 매봉 해당 함수를 호출하면 현재 호출된 해당값은 과거봉에 대한 값을 만들어 놓은 상태가 아니므로 이전값 참조가 원활하지 않습니다. 2 종목검색은 조건에 만족하지 않은 종목을 0으로 할당해 제외합니다. 검색하는 현재봉(마지막봉)의 종가가 이평보다 작으면 value99는 0이 됩니다. find(value99)가 find(0)이 되어 해당 종목은 제외됩니다. 3 var99 = 33; //20220405 봉 (20220522에 검색하였음) var1 = ma(C,20);#이평 value1 = 0; Value2 = 50; If (H[var99]-C[var99+1])/C[var99+1]*100>29 Then { For value99 = value1 to value2 { If var1[var99-Value99] > C[Var99-Value99] Then { Find(Value99+0.1); Value99 = Value2+1; } } } 즐거운 하루되세요 > 저스트뚜잇 님이 쓴 글입니다. > 제목 : 문의드립니다. > 기준봉(고가가 29%이상인 봉)이 하나 형성된 후 처음으로 20이평 아래에 종가가 형성되는 봉의 위치를 찾으려고합니다. (아래의 식은 질문을 위해 간결하게 코딩한 것으로 임의로 변수를 설정하였습니다) //////////////////////////////////////////////////////////// var99 = 32; //20220405 봉 (20220522에 검색하였음) value1 = 0; Value2 = 50; If (H[var99]-C[var99+1])/C[var99+1]*100>29 //고가가 29%이상 봉이 세워질 때 Then { For value99 = value1 to value2 { If ma(C[var99-Value99], 20) > C[Var99-Value99] //처음으로 20이평 아래에 종가가 형성될 때 Then { Find(Value99); //Value99 : 기준봉 발생 이후 조건에 부합한 봉의 위치 Value99 = Value2+1; //break; (조건에 맞는 종목이 잡히면 For문 바로 빠져나감) } } } //////////////////////////////////////////////////////////////// 실제로 20220405에 고가가 29%인 봉이 세워진 종목은 금호에이치티, 해성옵틱스, 에디슨INNO, 큐캐피탈, 국제약품, 무림SP (총 6개)로 잘 검색되는데 모든 종목이 결국 50봉 내에 20이평 아래로 내려왔음에도 불구하고 실제로 검색된 종목은 에디슨INNO, 국제약품, 금호에이치티밖에 검색되지 않았고 검색결과값(value99)도 저의 예상과 다르게 나왔습니다. 국제약품의 경우 14..? 금호에이치티의 경우 4..? 의 값으로 나올 것으로 기대하고 있는데.. ma(C[var99-Value99], 20) > C[Var99-Value99] 이 조건식에 문제가 있다고보고 계속 수정을 하였는데 아무리 수정해도 되지 않아서 문의드립니다. 미리 감사드립니다!