커뮤니티

부탁드립니다...

프로필 이미지
시온사랑
2025-07-23 14:32:31
163
글번호 192704
답변완료
안녕하세요 예스스탁입니다. 1 for i = B - 10 to B - 1 현재 봉수가 30이면 20 to 29가 됩니다. 첫봉부터 10번째 봉까지이면 해당내용이 맞지만 최근봉 10봉이면 for i = 0 to 9로 지정하시면 됩니다. 종목검색시에 당일봉이 모두 포함되게 봉수를 넉넉히 지정해 주시고 검색하시기 바랍니다. 2 var : AA(False), BB(False), CC(False); var : T(0), B(0), upperLimit(0), u(0), i(0); var : VV(0); var : DD(False), EE(False); var1 = ma(C, 5); if sDate != sDate[1] and sTime >= 90000 Then { T = 0; B = 0; VV = 0; } B = B + 1; AA = DayOpen >= 5000 and DayOpen <= 15000; BB = DayOpen >= DayClose[1] and DayOpen <= DayClose[1] * 1.1; CC = sTime >= 90100 and sTime <= 91900; upperLimit = DayClose[1] * 1.3; if AA and BB Then T = 1; if T == 1 and CC and CrossUp(C, var1) Then { T = 2; } if T == 2 and C >= DayHigh*0.998 Then { VV = 0; EE = False; u = 0; for i = 1 to B - 1 { VV = VV + V[i]; if (Close[i] / Open[i]) < 0.99 Then //금일분봉상 -1%이하 종목 제외 EE = True; if close[i] >= upperLimit * 0.95 Then // 상한에 5%이내 근접 제외 u = 1; } DD = False; if B >= 10 Then { for i = 0 to 9 { if (Close[i] / Open[i]) < 0.994 Then //10봉이내 -0.6%이하 종목 제외 DD = True; } } if VV >= 100000 Then { T = 3; } } if T == 3 and !EE and !DD and u==0 Then find(1); 즐거운 하루되세요 문의드립니다... 1. B = B + 1; 이렇게 하면, 분봉카운트가 1,2,3,4...이렇게 되는거죠? 그럼, B = B + 1; 이걸 제거하면, 분봉카운트가 0,1,2,3...이렇게 되는 건가요? 2. for i = 1 to B - 1 그러면 만약에,"B = B + 1;"를 제거하면, 저 조건문은 분봉 첫번째0봉은 제외되는 건가요? 3. if B >= 10 Then { for i = 0 to 9 이건 다른내용입니다. 만약에 위 수식에서 검색된 분봉을 제외하고 검색하고 싶으면, for i = 1 to 10. 이렇게 하면 될까요? 아니면 for i = 10 to B-1. 이건가요? 부탁드립니다... 감사합니다...ㅎ
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-07-24 09:09:25

안녕하세요 예스스탁입니다. 1 B = B + 1; 당일 봉수를 카운트 하기 위해서는 위 내용이 필요합니다. 작성하하신 수식에서는 아래와 같이 변경하시면 첫봉을 0으로 시작해서 1씩 증가할 수 있습니다. if sdate == sdate[1] then B = B + 1; 2 작성하신 B는 첫봉이 1로 시작하므로 첫봉을 제외하신 다면 for i = 1 to B - 2 가 되어야 합니다. 현재 3번째봉이면 B가 3인데 close[3]은 전날 마지막봉입니다. 그러므로 for i = 1 to B - 1이면 당일 첫봉까지이고 for i = 1 to B - 2로 지정되어야 첫봉제외입니다. 1번 답변과 같이 B가 첫봉을 0으로 시작하면 for i = 1 to B - 1로 지정하시면 됩니다. 3 현재봉이 검색된 봉이므로 1 to 10 입니다. 즐거운 하루되세요 > 시온사랑 님이 쓴 글입니다. > 제목 : 부탁드립니다... > 안녕하세요 예스스탁입니다. 1 for i = B - 10 to B - 1 현재 봉수가 30이면 20 to 29가 됩니다. 첫봉부터 10번째 봉까지이면 해당내용이 맞지만 최근봉 10봉이면 for i = 0 to 9로 지정하시면 됩니다. 종목검색시에 당일봉이 모두 포함되게 봉수를 넉넉히 지정해 주시고 검색하시기 바랍니다. 2 var : AA(False), BB(False), CC(False); var : T(0), B(0), upperLimit(0), u(0), i(0); var : VV(0); var : DD(False), EE(False); var1 = ma(C, 5); if sDate != sDate[1] and sTime >= 90000 Then { T = 0; B = 0; VV = 0; } B = B + 1; AA = DayOpen >= 5000 and DayOpen <= 15000; BB = DayOpen >= DayClose[1] and DayOpen <= DayClose[1] * 1.1; CC = sTime >= 90100 and sTime <= 91900; upperLimit = DayClose[1] * 1.3; if AA and BB Then T = 1; if T == 1 and CC and CrossUp(C, var1) Then { T = 2; } if T == 2 and C >= DayHigh*0.998 Then { VV = 0; EE = False; u = 0; for i = 1 to B - 1 { VV = VV + V[i]; if (Close[i] / Open[i]) < 0.99 Then //금일분봉상 -1%이하 종목 제외 EE = True; if close[i] >= upperLimit * 0.95 Then // 상한에 5%이내 근접 제외 u = 1; } DD = False; if B >= 10 Then { for i = 0 to 9 { if (Close[i] / Open[i]) < 0.994 Then //10봉이내 -0.6%이하 종목 제외 DD = True; } } if VV >= 100000 Then { T = 3; } } if T == 3 and !EE and !DD and u==0 Then find(1); 즐거운 하루되세요 문의드립니다... 1. B = B + 1; 이렇게 하면, 분봉카운트가 1,2,3,4...이렇게 되는거죠? 그럼, B = B + 1; 이걸 제거하면, 분봉카운트가 0,1,2,3...이렇게 되는 건가요? 2. for i = 1 to B - 1 그러면 만약에,"B = B + 1;"를 제거하면, 저 조건문은 분봉 첫번째0봉은 제외되는 건가요? 3. if B >= 10 Then { for i = 0 to 9 이건 다른내용입니다. 만약에 위 수식에서 검색된 분봉을 제외하고 검색하고 싶으면, for i = 1 to 10. 이렇게 하면 될까요? 아니면 for i = 10 to B-1. 이건가요? 부탁드립니다... 감사합니다...ㅎ