커뮤니티
글번호 228073 번 추가 문의
앞서 글번호 228073 번에 아래 식을 주셨는데, 그럼 atr 을 500이 아니라 300으로 해서 30일치를 검색하는 식으로 부탁드립니다.
1번과 2번으로 나눠 주셨는데, 어떻게 사용하는 것일까요?
사용자 함수까지 조건식에 넣어서, 종목검색 창에 붙여 넣으면 되게 부탁드립니다.
1 . 사용자함수
함수명 : RngCheck
반환값형 : 숫자형
input : 기준(Numeric),범위(Numeric);
var : C0(0),C1(0),C2(0),C3(0),C4(0);
var : C5(0),C6(0),C7(0),C8(0),C9(0);
var : C10(0),C11(0),C12(0),C13(0),C14(0);
var : C15(0),C16(0),C17(0),C18(0),C19(0);
C0=IFF(abs(C-기준)>범위,1,0);
C1=IFF(abs(C[1]-기준)>범위,1,0);
C2=IFF(abs(C[2]-기준)>범위,1,0);
C3=IFF(abs(C[3]-기준)>범위,1,0);
C4=IFF(abs(C[4]-기준)>범위,1,0);
C5=IFF(abs(C[5]-기준)>범위,1,0);
C6=IFF(abs(C[6]-기준)>범위,1,0);
C7=IFF(abs(C[7]-기준)>범위,1,0);
C8=IFF(abs(C[8]-기준)>범위,1,0);
C9=IFF(abs(C[9]-기준)>범위,1,0);
C10=IFF(abs(C[10]-기준)>범위,1,0);
C11=IFF(abs(C[11]-기준)>범위,1,0);
C12=IFF(abs(C[12]-기준)>범위,1,0);
C13=IFF(abs(C[13]-기준)>범위,1,0);
C14=IFF(abs(C[14]-기준)>범위,1,0);
C15=IFF(abs(C[15]-기준)>범위,1,0);
C16=IFF(abs(C[16]-기준)>범위,1,0);
C17=IFF(abs(C[17]-기준)>범위,1,0);
C18=IFF(abs(C[18]-기준)>범위,1,0);
C19=IFF(abs(C[19]-기준)>범위,1,0);
RngCheck = C0+C1+C2+C3+C4+C5+C6+C7+C8+ C9+C10+C11+C12+C13+C14+C15+C16+C17+C18+C19;
2
input : 기간(1),Rt(1),배수(1);
var : at(0),mm(0),rg(0),chk(0),Range중(False),Range거래량(0);
var : 전체합(0),Range봉수(0),평균거래량(0);
var : 상단(0),양봉(False),돌파(False),거래량급증(False);
var : A(0),b1(0),d(0),e(0),f(0),g(0),k(0),j(0),t(0),y(0),r(0),q(0);
var : 볼밴라인(0),볼밴돌파(False),볼밴위(False);
At = ATR(500);
Mm = avg(C, 기간);
Rg = At * Rt / 10;
Chk = RngChk(Mm, Rg);
Range중 = Chk == 0;
Range거래량 = iff(Range중, V, 0);
전체합 = Accum(Range거래량);
Range봉수 = Accum(iff(Range중,1,0));
평균거래량 = 전체합 / Range봉수;
상단 = Mm + Rg;
양봉 = C > O;
돌파 = C > 상단;
거래량급증 = V > 평균거래량 * 배수;
A = BollBandUp(20, 2);
B1 = Ema(A, 56);
D = BollBandUp(40, 2);
E = Ema(D, 56);
F = BollBandUp(60, 2);
G = Ema(F, 56);
K = BollBandUp(90, 2);
J = Ema(K, 56);
T = BollBandUp(100, 2);
Y = Ema(T, 56);
R = (B1 + E + G + J + Y) / 5;
Q = (C - O) / 3;
볼밴라인 = iff(C > O, R - Q, R);
볼밴돌파 = H > 볼밴라인;
볼밴위 = C > 볼밴라인;
if Range중[1] == true && 돌파 && 양봉 && 거래량급증 && (볼밴돌파 or 볼밴위) then
var1 = sDate;
Else
var1 = 0;
if CountIf(var1>0,30) >= 1 then
Find(var1);
답변 2
마을
2025-11-17 17:22:13
예스스탁 예스스탁 답변
2025-11-18 11:08:02