예스스탁
예스스탁 답변
2023-03-21 13:29:22
안녕하세요
예스스탁입니다.
1
var : AA(False),BB(False),GG(False),HH(False),II(False),RR(False),SS(False);
var : JJ(False),KK(False),LL(False),MM(False),NN(false),OO(False),PP(False);
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 date >= 20230125 Then
{
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;
}
Else
{
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 date >= 20230125 Then
{
If BP >= 500000 Then
상한가 = up1;
Else If BP >= 200000 Then
상한가 = iff(up2>=500000, up1, up2);
Else If BP >= 50000 Then
상한가 = iff(up3>=200000, up2, up3);
Else If BP >= 20000 Then
상한가 = iff(up4>=50000, up3, up4);
Else If BP >= 5000 Then
상한가 = iff(up5>=20000, up4, up5);
Else If BP >= 2000 Then
상한가 = iff(up5>=5000, up5, up6);
Else
상한가 = iff(up6>=2000, up6, up7);
}
Else
{
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;
}
}
var1 = ma(C,20);
var2 = ma(C,60);
var3 = ma(C,120);
value1 = Disparity(20);
value2 = Disparity(600);
value3 = Disparity(120);
value4 = Disparity(240);
value5 = Disparity(480);
AA = C >= 1000 and C <= 200000;
BB = C >= C[1]*0.92 and C <= C[1]*1.028;
GG = var1 > var1[1];
HH = var2 > var2[1];
II = var3 > var3[1];
RR = CountIf(H >= 상한가,30)[1] >= 1;
SS = CountIf(M >= 50000000000,30)[1] >= 1;
JJ = CountIf(C >= O*1.12,30)[1] >= 1;
KK = CountIf(M >= 100000000000,30)[1] >= 1;
LL = value1 >= 97 and value1 <= 103;
MM = value2 >= 97 and value2 <= 103;
NN = value3 >= 97 and value3 <= 103;
OO = value4 >= 97 and value4 <= 103;
PP = value5 >= 97 and value5 <= 103;
if AA and BB and (GG or HH or II) and ((RR and SS) or (JJ and KK)) and (LL or MM or NN or OO or PP) Then
Find(1);
2
var : AA(False),BB(False),GG(False),HH(False),II(False),RR(False),SS(False);
var : JJ(False),KK(False),LL(False),MM(False),NN(false),OO(False),PP(False);
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 date >= 20230125 Then
{
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;
}
Else
{
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 date >= 20230125 Then
{
If BP >= 500000 Then
상한가 = up1;
Else If BP >= 200000 Then
상한가 = iff(up2>=500000, up1, up2);
Else If BP >= 50000 Then
상한가 = iff(up3>=200000, up2, up3);
Else If BP >= 20000 Then
상한가 = iff(up4>=50000, up3, up4);
Else If BP >= 5000 Then
상한가 = iff(up5>=20000, up4, up5);
Else If BP >= 2000 Then
상한가 = iff(up5>=5000, up5, up6);
Else
상한가 = iff(up6>=2000, up6, up7);
}
Else
{
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;
}
}
var1 = ma(C,20);
var2 = ma(C,60);
var3 = ma(C,120);
AA = C >= 1000 and C <= 200000;
BB = C >= C[1]*0.92 and C <= C[1]*1.028;
GG = var1 > var1[1];
HH = var2 > var2[1];
II = var3 > var3[1];
RR = CountIf(H >= 상한가,30)[1] >= 1;
SS = CountIf(M >= 50000000000,30)[1] >= 1;
JJ = CountIf(C >= O*1.12,30)[1] >= 1;
KK = CountIf(M >= 100000000000,30)[1] >= 1;
if AA and BB and (GG or HH or II) and ((RR and SS) or (JJ and KK)) Then
Find(1);
즐거운 하루되세요
> 따라고나 님이 쓴 글입니다.
> 제목 : 문의 좀 드립니다~~
> 늘 답변노고에 진심 감사합니다~
키움검색식이고 2가지인데, 첫번째것은 이평이격도만 추가되었습니다
예스수식으로 부탁드리겠습니다~ 감사합니다~
첫번째
지표 내용
A 주가범위:0일전 종가가 1000 이상 200000 이하
B 주가등락률:[일]1봉전(중) 종가대비 0봉전 종가등락률 -8%이상 2.8%이하
G 주가이평추세:[일]0봉전 (종가 20)이평 상승추세유지 1회 이상
H 주가이평추세:[일]0봉전 (종가 60)이평 상승추세유지 1회 이상
I 주가이평추세:[일]0봉전 (종가 120)이평 상승추세유지 1회 이상
R 기간내 등락봉수:[일]1봉전 30봉이내 1봉 상한발생
S 기간내 거래대금:[일]1봉전 30봉이내 거래대금(일/주:백만, 분:천원) 50000이상 1회이상
J 기간내 등락률:[일]1봉전 30봉이내에서 시가대비종가 12% 이상
K 기간내 거래대금:[일]1봉전 30봉이내 거래대금(일/주:백만, 분:천원)100000이상 1회이상
L 이평이격도:[일]0봉전(종가 1, 종가 20) 3%이내 근접 1회이상
M 이평이격도:[일]0봉전(종가 1, 종가 60) 3%이내 근접 1회이상
N 이평이격도:[일]0봉전(종가 1, 종가 120) 3%이내 근접 1회이상
O 이평이격도:[일]0봉전(종가 1, 종가 240) 3%이내 근접 1회이상
P 이평이격도:[일]0봉전(종가 1, 종가 480) 3%이내 근접 1회이상
A and B and C and D and E and F and (G or H or I) and ((R and S) or (J and K)) and (L or M or N or O or P)
------------------------------------------------------------------------------------
두번째
지표 내용
A 주가범위:0일전 종가가 1000 이상 200000 이하
B 주가등락률:[일]1봉전(중) 종가대비 0봉전 종가등락률 -8%이상 2.8%이하
G 주가이평추세:[일]0봉전 (종가 20)이평 상승추세유지 1회 이상
H 주가이평추세:[일]0봉전 (종가 60)이평 상승추세유지 1회 이상
I 주가이평추세:[일]0봉전 (종가 120)이평 상승추세유지 1회 이상
R 기간내 등락봉수:[일]1봉전 30봉이내 1봉 상한발생
S 기간내 거래대금:[일]1봉전 30봉이내 거래대금(일/주:백만, 분:천원) 50000이상 1회이상
J 기간내 등락률:[일]1봉전 30봉이내에서 시가대비종가 12% 이상
K 기간내 거래대금:[일]1봉전 30봉이내 거래대금(일/주:백만, 분:천원)100000이상 1회이상
A and B and C and D and E and F and (G or H or I) and ((R and S) or (J and K))