답변주신 SwingHigh 다음 검색식에서 여러 다른 수치를 넣어봤는데요
input : left(30),right(60);
var1 = max(c,o);
if SwingHigh(1,var1,left,right,left+right+1) != -1 Then
value1 = var1[right];
if countif( CrossUp(var1,value1) , 20) >= 1 Then
Find(1); 에서
countif( CrossUp(var1,value1) , 20) >= 1 함수에서 20이하의 숫자를 넣어보면 작동이 잘되는데 20이상 숫자를 넣으면 안되는 것 같습니다.
if SwingHigh(1,var1,left,right,left+right+1) != -1 Then
value1 = var1[right];
if countif( CrossUp(var1,value1) ,30) >= 1 Then
Find(1); -----> 20이하에서는 5, 10등 다른 숫자 대입시 다른 결과가 나오는데 20이상의 숫자로는 30, 50, 100으로 늘려도 같은 결과가 나오는 걸 보면 작동이 제대로 안되는지 20 대입결과와 같습니다. 500봉 검색제한과 관련이 있는지요.이유를 모르겠습니다.
답변 1
예스스탁
예스스탁 답변
2025-07-29 09:45:56
안녕하세요
예스스탁입니다.
최대 500봉이므로 좌우봉수로 지정한 고점이 500봉 안에 없을 수 있습니다.
500봉 안에 해당 고점조건이 있고 지정한 봉갯수 안에 돌파가 있어야 검색이 됩니다.
현재 20과 30으로 검색하면
첨부된 그림과 같이 검색된 종목이 다릅니다.
그이상 지정하면 큰 차이가 없는 것으로보면
해당 좌우 봉수가 큰데 해당 고점기준이 충족되는 종목이 없거나
지정한 봉수안에 돌파가 없는 것입니다.
즐거운 하루되세요
> 선도인 님이 쓴 글입니다.
> 제목 : 몸통고가만의 swinghigh 추가문의
> 답변주신 SwingHigh 다음 검색식에서 여러 다른 수치를 넣어봤는데요
input : left(30),right(60);
var1 = max(c,o);
if SwingHigh(1,var1,left,right,left+right+1) != -1 Then
value1 = var1[right];
if countif( CrossUp(var1,value1) , 20) >= 1 Then
Find(1); 에서
countif( CrossUp(var1,value1) , 20) >= 1 함수에서 20이하의 숫자를 넣어보면 작동이 잘되는데 20이상 숫자를 넣으면 안되는 것 같습니다.
if SwingHigh(1,var1,left,right,left+right+1) != -1 Then
value1 = var1[right];
if countif( CrossUp(var1,value1) ,30) >= 1 Then
Find(1); -----> 20이하에서는 5, 10등 다른 숫자 대입시 다른 결과가 나오는데 20이상의 숫자로는 30, 50, 100으로 늘려도 같은 결과가 나오는 걸 보면 작동이 제대로 안되는지 20 대입결과와 같습니다. 500봉 검색제한과 관련이 있는지요.이유를 모르겠습니다.