예스스탁
예스스탁 답변
2016-04-28 10:34:55
안녕하세요? 예스스탁입니다.
문의하신 상한가를 검색하는 검색식은 예스트레이더에서 기본으로 제공하는 식은 아니며, 직접 작성하신 것으로 판단됩니다.
해당 검색식(사용자함수 포함)을 chartist@yesstock.com으로 보내주시면 해당 식으로 검증해봐 드리도록 하겠습니다.
감사합니다.
> rayleigh 님이 쓴 글입니다.
> 제목 : 프로그램 오류 인지 이상합니다.
> 저는 '당일 상한가를 한 번이라도 친 종목' 에 대해서 찾고 있습니다.
그런데 3주정도 전쯤에 찾았던 종목들과 오늘 찾아본 종목이 다릅니다.
예를들어 오늘 찾아본 16년 3월 8일의 상한가 종목은 SK컴즈 밖에 안나오는데
예전에 찾아본 16년 3월 8일의 상한가 종목은 SK컴즈와 파수닷컴 두 개 입니다.
이런 경우가 빈번히 있고, 혹시 빠진 종목들이 거래 정지가 되어서 검색이 되지 않나
검토해봤더니 그렇지도 않습니다.
종목 검색 기능에 불신이 가네요. 답변 부탁드립니다.
rayleigh
2016-04-29 15:09:59
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 프로그램 오류 인지 이상합니다.
> 안녕하세요? 예스스탁입니다.
문의하신 상한가를 검색하는 검색식은 예스트레이더에서 기본으로 제공하는 식은 아니며, 직접 작성하신 것으로 판단됩니다.
해당 검색식(사용자함수 포함)을 chartist@yesstock.com으로 보내주시면 해당 식으로 검증해봐 드리도록 하겠습니다.
감사합니다.
> rayleigh 님이 쓴 글입니다.
> 제목 : 프로그램 오류 인지 이상합니다.
> 저는 '당일 상한가를 한 번이라도 친 종목' 에 대해서 찾고 있습니다.
그런데 3주정도 전쯤에 찾았던 종목들과 오늘 찾아본 종목이 다릅니다.
예를들어 오늘 찾아본 16년 3월 8일의 상한가 종목은 SK컴즈 밖에 안나오는데
예전에 찾아본 16년 3월 8일의 상한가 종목은 SK컴즈와 파수닷컴 두 개 입니다.
이런 경우가 빈번히 있고, 혹시 빠진 종목들이 거래 정지가 되어서 검색이 되지 않나
검토해봤더니 그렇지도 않습니다.
종목 검색 기능에 불신이 가네요. 답변 부탁드립니다.
input : N(0);
var : 상한가(0), UpLimit(0);
var : up1(0), up2(0), up3(0), up4(0), up5(0),up6(0),Up7(0);
if date >= 19981207 then {
if date < 20050328 && CodeCategory() == 2 then
UpLimit = (BP[0] * 1.12);
Else if date >= 20050328 and date < 20150615 Then
UpLimit = (BP[0] * 1.15);
Else
UpLimit = (BP[0] * 1.30);
if CodeCategory() == 2 then {
if date >= 20030721 then {
up1 = int(UpLimit/100+0.00001)*100;
up2 = int(UpLimit/100+0.00001)*100;
up3 = int(UpLimit/100+0.00001)*100;
up4 = int(UpLimit/50+0.00001)*50;
up5 = int(UpLimit/10+0.00001)*10;
up6 = int(UpLimit/5+0.00001)*5;
up7 = int(UpLimit/1+0.00001)*1;
}
else {
up1 = int(UpLimit/1000+0.00001)*1000;
up2 = int(UpLimit/500+0.00001)*500;
up3 = int(UpLimit/100+0.00001)*100;
up4 = int(UpLimit/50+0.00001)*50;
up5 = int(UpLimit/10+0.00001)*10;
up6 = int(UpLimit/10+0.00001)*10;
up7 = int(UpLimit/1+0.00001)*1;
}
}
Else {
up1 = int(UpLimit/1000+0.00001)*1000;
up2 = int(UpLimit/500+0.00001)*500;
up3 = int(UpLimit/100+0.00001)*100;
up4 = int(UpLimit/50+0.00001)*50;
up5 = int(UpLimit/10+0.00001)*10;
up6 = int(UpLimit/5+0.00001)*5;
up7 = int(UpLimit/1+0.00001)*1;
}
if CodeCategory() == 1 || CodeCategory() == 2 then {
if sdate < 20101004 Then{
If BP >= 500000 Then
상한가 = up1;
Else If BP >= 100000 Then
상한가 = iff(up2>=500000, up1, up2);
Else If BP >= 50000 Then
상한가 = iff(up3>=100000, up2, up3);
Else If BP >= 10000 Then
상한가 = iff(up4>=50000, up3, up4);
Else If BP >= 5000 Then
상한가 = iff(up5>=10000, up4, up5);
Else If BP >= 1000 Then
상한가 = iff(up5>=5000, up5, up6);
Else
상한가 = iff(up6>=1000, up6, up6);
}
Else{
If BP >= 500000 Then
상한가 = up1;
Else If BP >= 100000 Then
상한가 = iff(up2>=500000, up1, up2);
Else If BP >= 50000 Then
상한가 = iff(up3>=100000, up2, up3);
Else If BP >= 10000 Then
상한가 = iff(up4>=50000, up3, up4);
Else If BP >= 5000 Then
상한가 = iff(up5>=10000, up4, up5);
Else If BP >= 1000 Then
상한가 = iff(up5>=5000, up5, up6);
Else
상한가 = iff(up6>=1000, up6, up7);
}
}
else if CodeCategory() == 8 || CodeCategory() == 9 then { // ETF
상한가 = up6;
}
}
if H[N] >= 상한가[N] Then
find(1);
식은 다음과 같습니다. 감사합니다.