커뮤니티

검색식 확인 부탁드립니다.

프로필 이미지
한칼부르스
2024-04-16 07:50:05
801
글번호 178598
답변완료

첨부 이미지

항상 도와주심에 감사드립니다. _(_ _)_ 기 만들어진 아래검색식 4개가 기준봉 발생후 10봉이내 음봉 최고시가돌파시 검색종목식인데요... 1,2,3번은 검색이 안돼거나 음봉시에도 발생이 자주 나오고 4번은 검색은 잘돼는데 누락현상이 나옵니다. 예시차트를 첨부하니 재확인 요청드립니다. 1 var : ii(0),HO(0); var : MM(0),KK(0),MO(0),mx(0); var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0); var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0); MM = floor(date/100); if MM != MM[1] Then { MO = O; M1 = KK[1]; M2 = M1[1]; M3 = M2[1]; M4 = M3[1]; M5 = M4[1]; M6 = M5[1]; M7 = M6[1]; M8 = M7[1]; M9 = M8[1]; M10 = M9[1]; M11 = M10[1]; M12 = M11[1]; mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12); } KK = iff(MO > C, MO, 0); if mx > 0 and CrossUp(C,mx) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 2 var : ii(0),HO(0); var : Month(0), MOpen(0), 중심(0),PreMC(0), PreMO(0); Month = Floor(date/100); if Month != Month[1] Then { PreMC = C[1]; PreMO = MOpen; MOpen = O ; } 중심 = ((PreMC + PreMO)/2 + MOpen)/2; if CrossUp(C, 중심) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 3 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then value1 = (C+O)/2; if value1 > 0 and CrossUp(c,value1) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 4 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } }
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-04-16 15:18:58

안녕하세요 예스스탁입니다. 기준이 되는 조건과 최고시가 돌파가 동시에 발생합니다. 기존식은 동시발생하면 값이 초기화가 되게 되어 있습니다. 동시조건 만족시에도 검색되게 수정해 드립니다. 1 var : ii(0),HO(0); var : MM(0),KK(0),MO(0),mx(0); var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0); var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0); MM = floor(date/100); if MM != MM[1] Then { MO = O; M1 = KK[1]; M2 = M1[1]; M3 = M2[1]; M4 = M3[1]; M5 = M4[1]; M6 = M5[1]; M7 = M6[1]; M8 = M7[1]; M9 = M8[1]; M10 = M9[1]; M11 = M10[1]; M12 = M11[1]; mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12); } KK = iff(MO > C, MO, 0); if HO > 0 and CrossUp(c,HO) Then Find(1); if mx > 0 and CrossUp(C,mx) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; } } 2 var : ii(0),HO(0); var : Month(0), MOpen(0), 중심(0),PreMC(0), PreMO(0); Month = Floor(date/100); if Month != Month[1] Then { PreMC = C[1]; PreMO = MOpen; MOpen = O ; } 중심 = ((PreMC + PreMO)/2 + MOpen)/2; if HO > 0 and CrossUp(c,HO) Then find(1); if CrossUp(C, 중심) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; } } 3 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then value1 = (C+O)/2; if HO > 0 and CrossUp(c,HO) Then Find(1); if value1 > 0 and CrossUp(c,value1) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; } } 4 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if HO > 0 and CrossUp(c,HO) Then Find(1); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; } } 즐거운 하루되세요 > 한칼부르스 님이 쓴 글입니다. > 제목 : 검색식 확인 부탁드립니다. > 항상 도와주심에 감사드립니다. _(_ _)_ 기 만들어진 아래검색식 4개가 기준봉 발생후 10봉이내 음봉 최고시가돌파시 검색종목식인데요... 1,2,3번은 검색이 안돼거나 음봉시에도 발생이 자주 나오고 4번은 검색은 잘돼는데 누락현상이 나옵니다. 예시차트를 첨부하니 재확인 요청드립니다. 1 var : ii(0),HO(0); var : MM(0),KK(0),MO(0),mx(0); var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0); var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0); MM = floor(date/100); if MM != MM[1] Then { MO = O; M1 = KK[1]; M2 = M1[1]; M3 = M2[1]; M4 = M3[1]; M5 = M4[1]; M6 = M5[1]; M7 = M6[1]; M8 = M7[1]; M9 = M8[1]; M10 = M9[1]; M11 = M10[1]; M12 = M11[1]; mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12); } KK = iff(MO > C, MO, 0); if mx > 0 and CrossUp(C,mx) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 2 var : ii(0),HO(0); var : Month(0), MOpen(0), 중심(0),PreMC(0), PreMO(0); Month = Floor(date/100); if Month != Month[1] Then { PreMC = C[1]; PreMO = MOpen; MOpen = O ; } 중심 = ((PreMC + PreMO)/2 + MOpen)/2; if CrossUp(C, 중심) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 3 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then value1 = (C+O)/2; if value1 > 0 and CrossUp(c,value1) Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } } 4 var : ii(0),HO(0); var1 = macd(12,26); var2 = Sar(0.02,0.2); if var1 >= 0 and CrossUp(c,Var2) and C >= C[1]*1.03 and C > O Then { ii = Index; if C < O Then HO = O; Else HO = 0; } Else { if ii > 0 and Index <= ii+10 Then { if C < O and (HO == 0 or (HO > 0 and O > HO)) Then HO = O; if HO[1] > 0 and CrossUp(c,HO[1]) Then Find(1); } }