15분봉에서,
130봉중(일주간: 일일 26봉*5일)의 최고가를,
1봉전에 돌파한 것을 0봉에 검색코자 합니다.
단,
1.1봉전의 돌파봉은 최소 3%이상
2.129봉간
-고가/저가기준으로는 최고가 ~ 최저가 차이가 10%이하
OR
-종가기준은 5%이하 차이
(돌파봉(1봉전)의 상승분은 무시: 129봉전 ~ 2봉전까지 최고/최저 가격차이)
3.당일 첫번째 돌파만 검색(이후는 무시)
가능하시다면 검색수식 부탁올립니다.
답변 2
예스스탁
예스스탁 답변
2023-11-27 11:20:31
안녕하세요
예스스탁입니다.
종목검색 속성에서 검색에 필요한 최소기간에 500봉 입력하고 검색을 하시기 바랍니다.
종목검색은 모든 주기에서 최대 제공봉수가 500개 입니다.
분봉이하 주기에서 일봉값을 제공하지만 조회된 봉의 첫봉기준 +99일정도만 제공합니다.
올리신 내용은 전일 기준 130일간의 일봉데이터가 요구되는데
제공되는 데이터 안에서 검색될수 없습니다.
위 내용 참고하셔서 N기간 조절해 보셔야 할 것 같습니다.
input : N(130);
var : cnt(0);
var1 = 0;
var2 = 0;
var3 = 0;
var4 = 0;
var5 = 0;
For cnt = 1 to N
{
if var1 == 0 or (Var1>1 and DayHigh(cnt) > var1) Then
var1 = DayHigh(cnt);
if cnt > 1 and (var2 == 0 or (Var2>1 and DayHigh(cnt) > var2)) Then
var2 = DayHigh(cnt);
if cnt > 1 and (var3 == 0 or (Var3>1 and DayLow(cnt) < var3)) Then
var3 = DayLow(cnt);
if cnt > 1 and (var4 == 0 or (Var4>1 and DayClose(cnt) > var4)) Then
var4 = DayClose(cnt);
if cnt > 1 and (var5 == 0 or (Var5>1 and DayClose(cnt) < var5)) Then
var5 = DayClose(cnt);
}
if sDate != sDate[1] Then
Condition1 = False;
Condition2 = CrossUp(C,Var1[1]) and
DayClose >= DayClose(1)*1.03 and
Var2 <= Var3*1.10 and
Var4 <= Var5*1.05;
if Condition2[1] == true and sDate[1] == sDate Then
{
Condition1 = true;
Find(1);
}
즐거운 하루되세요
> ksks 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 15분봉에서,
130봉중(일주간: 일일 26봉*5일)의 최고가를,
1봉전에 돌파한 것을 0봉에 검색코자 합니다.
단,
1.1봉전의 돌파봉은 최소 3%이상
2.129봉간
-고가/저가기준으로는 최고가 ~ 최저가 차이가 10%이하
OR
-종가기준은 5%이하 차이
(돌파봉(1봉전)의 상승분은 무시: 129봉전 ~ 2봉전까지 최고/최저 가격차이)
3.당일 첫번째 돌파만 검색(이후는 무시)
가능하시다면 검색수식 부탁올립니다.
예, 답변 감사합니다.
그런데, 일봉으로 130봉이 아니고 15분봉으로 130봉인데요?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다
> 안녕하세요
예스스탁입니다.
종목검색 속성에서 검색에 필요한 최소기간에 500봉 입력하고 검색을 하시기 바랍니다.
종목검색은 모든 주기에서 최대 제공봉수가 500개 입니다.
분봉이하 주기에서 일봉값을 제공하지만 조회된 봉의 첫봉기준 +99일정도만 제공합니다.
올리신 내용은 전일 기준 130일간의 일봉데이터가 요구되는데
제공되는 데이터 안에서 검색될수 없습니다.
위 내용 참고하셔서 N기간 조절해 보셔야 할 것 같습니다.
input : N(130);
var : cnt(0);
var1 = 0;
var2 = 0;
var3 = 0;
var4 = 0;
var5 = 0;
For cnt = 1 to N
{
if var1 == 0 or (Var1>1 and DayHigh(cnt) > var1) Then
var1 = DayHigh(cnt);
if cnt > 1 and (var2 == 0 or (Var2>1 and DayHigh(cnt) > var2)) Then
var2 = DayHigh(cnt);
if cnt > 1 and (var3 == 0 or (Var3>1 and DayLow(cnt) < var3)) Then
var3 = DayLow(cnt);
if cnt > 1 and (var4 == 0 or (Var4>1 and DayClose(cnt) > var4)) Then
var4 = DayClose(cnt);
if cnt > 1 and (var5 == 0 or (Var5>1 and DayClose(cnt) < var5)) Then
var5 = DayClose(cnt);
}
if sDate != sDate[1] Then
Condition1 = False;
Condition2 = CrossUp(C,Var1[1]) and
DayClose >= DayClose(1)*1.03 and
Var2 <= Var3*1.10 and
Var4 <= Var5*1.05;
if Condition2[1] == true and sDate[1] == sDate Then
{
Condition1 = true;
Find(1);
}
즐거운 하루되세요
> ksks 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 15분봉에서,
130봉중(일주간: 일일 26봉*5일)의 최고가를,
1봉전에 돌파한 것을 0봉에 검색코자 합니다.
단,
1.1봉전의 돌파봉은 최소 3%이상
2.129봉간
-고가/저가기준으로는 최고가 ~ 최저가 차이가 10%이하
OR
-종가기준은 5%이하 차이
(돌파봉(1봉전)의 상승분은 무시: 129봉전 ~ 2봉전까지 최고/최저 가격차이)
3.당일 첫번째 돌파만 검색(이후는 무시)
가능하시다면 검색수식 부탁올립니다.