예스스탁
예스스탁 답변
2024-04-02 13:02:26
안녕하세요
예스스탁입니다.
종목검색에서 일/주/월은 수식내 if문 교체만 하시면 됩니다.
주석 참고하시기 바랍니다.
1-1. 검색
var : m5(0),m20(0),크로스업(False),hh(0),H_high(0),ll(0),L_sum(0),ls(0),조건(false),cnt(-1);
M5 = ma(c,5);
M20 = ma(c,20);
크로스업 = crossup(M5,M20);
if 크로스업 == true Then
{
hh = h;
var1 = L_sum[1];
cnt = 0;
}
Else
{
if hh > 0 and h > hh Then
hh = h;
}
if HH==HH[1] && HH > H Then
H_high = HH;
LL = iff(M20>L, 1, 0);
L_sum = Accum(LL);
Ls = L_sum-var1;
조건 = CrossUp(c, H_High) && Ls>0;
if 조건 == true Then
{
if cnt >= 0 Then
{
cnt = cnt+1;
if cnt == 1 Then
plot1(L,"검색");
}
}
1-2 종목검색
var : m5(0),m20(0),크로스업(False),hh(0),H_high(0),ll(0),L_sum(0),ls(0),조건(false),cnt(-1);
M5 = ma(c,5);
M20 = ma(c,20);
크로스업 = crossup(M5,M20);
if 크로스업 == true Then
{
hh = h;
var1 = L_sum[1];
cnt = 0;
}
Else
{
if hh > 0 and h > hh Then
hh = h;
}
if HH==HH[1] && HH > H Then
H_high = HH;
LL = iff(M20>L, 1, 0);
L_sum = Accum(LL);
Ls = L_sum-var1;
조건 = CrossUp(c, H_High) && Ls>0;
if 조건 == true Then
{
if cnt >= 0 Then
{
cnt = cnt+1;
if cnt == 1 Then
Find(1);
}
}
2
var : MM(0),KK(0),MO(0),mx(0);
var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0);
var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0);
MM = floor(date/100);
//if sDate != sDate[1] Then#일봉
//if dayofweek(sDate) < dayofweek(sDate[1]) Then#주봉
if MM != MM[1] Then #월봉
{
MO = O;
M1 = KK[1];
M2 = M1[1];
M3 = M2[1];
M4 = M3[1];
M5 = M4[1];
M6 = M5[1];
M7 = M6[1];
M8 = M7[1];
M9 = M8[1];
M10 = M9[1];
M11 = M10[1];
M12 = M11[1];
mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12);
}
KK = iff(MO > C, MO, 0);
if mx > 0 and (CrossUp(C,mx) or (O > mx and C[1] < mx[1])) Then
Find(1);
3
var : 당월시가(0),전월시가(0);
var : 당월종가(0),전월종가(0);
//if sDate != sDate[1] Then#일봉
//if dayofweek(sDate) < dayofweek(sDate[1]) Then#주봉
if sDate > sDate[1]+30 Then#월봉
{
당월시가 = O;
전월시가 = 당월시가[1];
전월종가 = 당월종가[1];
}
당월종가 = C;
if 전월시가 > 0 Then
{
var1 = ((전월시가+전월종가)/2 + 당월시가)/2;
if CrossUp(C,var1) or (O > var1 and C[1] < var1[1]) Then
Find(1);
}
즐거운 하루되세요
> 한칼부르스 님이 쓴 글입니다.
> 제목 : 검색식 부탁드립니다. _(_ _)_
> 안녕하세요. 아래의 키움수식을 검색신호,종목검색 2가지를 문의 드립니다.
특히 종목검색은 일봉, 주봉, 월봉별로 부탁드립니다.
M5 = ma(c,5);
M20 = ma(c,20);
크로스업 = crossup(M5,M20);
HH = HighestSince(1, 크로스업, H);
H_high =
ValueWhen(1, HH==HH(1) && HH>H, HH);
LL = if(M20>L, 1, 0);
L_sum = sum(LL);
Ls = L_sum-ValueWhen(1, 크로스업, L_sum(1));
조건 = CrossUp(c, H_High) && Ls>0;
cnt = CountSince(크로스업, 조건)==1;
cnt && !cnt(1)
그리고 아래의 수식 종목검색에서 시가갭으로 돌파했을 때 종목검색을 추가하고 싶습니다.
var : MM(0),KK(0),MO(0),mx(0);
var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0);
var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0);
MM = floor(date/100);
if MM != MM[1] Then
{
MO = O;
M1 = KK[1];
M2 = M1[1];
M3 = M2[1];
M4 = M3[1];
M5 = M4[1];
M6 = M5[1];
M7 = M6[1];
M8 = M7[1];
M9 = M8[1];
M10 = M9[1];
M11 = M10[1];
M12 = M11[1];
mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12);
}
KK = iff(MO > C, MO, 0);
if mx > 0 and CrossUp(C,mx) Then
Find(1);
마지막으로 아래의 수식도 시가갭으로 돌파시 종목검색을 추가하고 싶습니다.
var : 당월시가(0),전월시가(0);
var : 당월종가(0),전월종가(0);
if sDate > sDate[1]+30 Then
{
당월시가 = O;
전월시가 = 당월시가[1];
전월종가 = 당월종가[1];
}
당월종가 = C;
if 전월시가 > 0 Then
{
var1 = ((전월시가+전월종가)/2 + 당월시가)/2;
if CrossUp(C,var1) Then
Find(1);
}
도와주심에 항상 감사드립니다. _(_ _)_