커뮤니티
문의드립니다.
2018-03-08 08:10:35
231
글번호 117214
안녕하세요.
Input : N(5) ;
var : Hv(0),Lv(0),cnt(0),Hiv(0),Liv(0),sum1(0),sum2(0),ii(0), HLH(0);
Array : HH[50](0),HI[50](0),LL[50](0),LI[50](0);
if date != date[1] Then {
HH[0] = H;
HI[0] = index;
LL[0] = L;
LI[0] = index;
for cnt = 1 to 49{
HH[cnt] = HH[cnt-1][1];
HI[cnt] = HI[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
LI[cnt] = LI[cnt-1][1];
} }
if H > HH[0] Then {
HH[0] = H;
HI[0] = index; }
if L < LL[0] Then {
LL[0] = L;
LI[0] = index; }
if HH[abs(N)-1] > 0 and LL[abs(N)-1] > 0 Then { # 음수를 사용하기 때문에 abs(N) 입력
Hv = HH[0];
Hiv = Hi[0];
Lv = LL[0];
Liv = Li[0];
for cnt = 0 to abs(N)-1 { # 음수를 사용하기 때문에 abs(N) 입력
if HH[cnt] >= Hv Then {
Hv = HH[cnt];
Hiv = HI[cnt]; }
if LL[cnt] <= Lv Then {
Lv = LL[cnt];
Liv = LI[cnt];
} }
if N >= 1 Then {
ii = index-Liv;
HLH = H[0]; } # HLH ; 저점 이후의 고점, 또는 고점 이후의 저점
if N <= -1 Then ### 여기에 대괄호 { 를 넣고 아래에 마감 괄호를 넣으면 지표가 이상해짐 - 그대로 사용
ii = index-Hiv;
HLH = L[0]; }
var1 =(H+L)/2*V;
sum1 = 0;
sum2 = 0;
for cnt = 0 to ii {
sum1 = sum1 + var1[cnt];
sum2 = sum2 + V[cnt];
var64 = sum1/sum2; # n일라인
if crossup(c,var64) Then {
var51 = index;
var7 = var64; # 상향 돌파한 값
}
if CrossDown(c,var64) Then {
var52 = index;
var8 = var64; # 하향돌파한 값
}
if N > 0 Then { # 양수이면 저점에서 현재까지 출력
plot1(var64,"n일라인");
if c < var64 then
plot2(var8,"n일라인 돌파값");
}
if N < 0 Then { # 음수이면 고점에서 현재까지 출력
plot1(var64,"n일라인");
if c > var64 then
plot2(var7,"n일라인 돌파값");
} }
---------------------------------
선물 15분봉에서
위 수식의 지표 출력하면
if c < var64 then
plot2(var8,"n일라인 돌파값");
if c > var64 then
plot2(var7,"n일라인 돌파값"); 이 출력값이
현재가가 var8, var7 을 돌파하기 전인데도
여러곳에 나타납니다.
위 수식 수정 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2018-03-09 09:52:54
안녕하세요
예스스탁입니다.
수식의 {}문제로
어떤 내용의 수식을 구현하시려고 하는지
내용이 판단이 되지 않습니다.
수식의 괄호가 아래식과 같이 처리되어야
원하시는 내용과 부합할것 같습니다.
아래 내용 아니시면 02-3453-1060으로 전화주시기 바랍니다.
Input : N(5) ;
var : Hv(0),Lv(0),cnt(0),Hiv(0),Liv(0),sum1(0),sum2(0),ii(0), HLH(0);
Array : HH[50](0),HI[50](0),LL[50](0),LI[50](0);
if date != date[1] Then {
HH[0] = H;
HI[0] = index;
LL[0] = L;
LI[0] = index;
for cnt = 1 to 49 {
HH[cnt] = HH[cnt-1][1];
HI[cnt] = HI[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
LI[cnt] = LI[cnt-1][1];
}
}
if H > HH[0] Then {
HH[0] = H;
HI[0] = index;
}
if L < LL[0] Then {
LL[0] = L;
LI[0] = index;
}
if HH[abs(N)-1] > 0 and LL[abs(N)-1] > 0 Then { # 음수를 사용하기 때문에 abs(N) 입력
Hv = HH[0];
Hiv = Hi[0];
Lv = LL[0];
Liv = Li[0];
for cnt = 0 to abs(N)-1 { # 음수를 사용하기 때문에 abs(N) 입력
if HH[cnt] >= Hv Then {
Hv = HH[cnt];
Hiv = HI[cnt];
}
if LL[cnt] <= Lv Then {
Lv = LL[cnt];
Liv = LI[cnt];
}
}
if N >= 1 Then {
ii = index-Liv;
HLH = H[0];
} # HLH ; 저점 이후의 고점, 또는 고점 이후의 저점
if N <= -1 Then{ ### 여기에 대괄호 { 를 넣고 아래에 마감 괄호를 넣으면 지표가 이상해짐 - 그대로 사용
ii = index-Hiv;
HLH = L[0];
}
}
var1 =(H+L)/2*V;
sum1 = 0;
sum2 = 0;
for cnt = 0 to ii {
sum1 = sum1 + var1[cnt];
sum2 = sum2 + V[cnt];
var64 = sum1/sum2; # n일라인
}
if crossup(c,var64) Then {
var51 = index;
var7 = var64; # 상향 돌파한 값
}
if CrossDown(c,var64) Then {
var52 = index;
var8 = var64; # 하향돌파한 값
}
if N > 0 Then { # 양수이면 저점에서 현재까지 출력
plot1(var64,"n일라인");
if c < var64 then
plot2(var8,"n일라인 돌파값");
}
if N < 0 Then { # 음수이면 고점에서 현재까지 출력
plot1(var64,"n일라인");
if c > var64 then
plot2(var7,"n일라인 돌파값");
}
즐거운 하루되세요
> land22 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 안녕하세요.
Input : N(5) ;
var : Hv(0),Lv(0),cnt(0),Hiv(0),Liv(0),sum1(0),sum2(0),ii(0), HLH(0);
Array : HH[50](0),HI[50](0),LL[50](0),LI[50](0);
if date != date[1] Then {
HH[0] = H;
HI[0] = index;
LL[0] = L;
LI[0] = index;
for cnt = 1 to 49{
HH[cnt] = HH[cnt-1][1];
HI[cnt] = HI[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
LI[cnt] = LI[cnt-1][1];
} }
if H > HH[0] Then {
HH[0] = H;
HI[0] = index; }
if L < LL[0] Then {
LL[0] = L;
LI[0] = index; }
if HH[abs(N)-1] > 0 and LL[abs(N)-1] > 0 Then { # 음수를 사용하기 때문에 abs(N) 입력
Hv = HH[0];
Hiv = Hi[0];
Lv = LL[0];
Liv = Li[0];
for cnt = 0 to abs(N)-1 { # 음수를 사용하기 때문에 abs(N) 입력
if HH[cnt] >= Hv Then {
Hv = HH[cnt];
Hiv = HI[cnt]; }
if LL[cnt] <= Lv Then {
Lv = LL[cnt];
Liv = LI[cnt];
} }
if N >= 1 Then {
ii = index-Liv;
HLH = H[0]; } # HLH ; 저점 이후의 고점, 또는 고점 이후의 저점
if N <= -1 Then ### 여기에 대괄호 { 를 넣고 아래에 마감 괄호를 넣으면 지표가 이상해짐 - 그대로 사용
ii = index-Hiv;
HLH = L[0]; }
var1 =(H+L)/2*V;
sum1 = 0;
sum2 = 0;
for cnt = 0 to ii {
sum1 = sum1 + var1[cnt];
sum2 = sum2 + V[cnt];
var64 = sum1/sum2; # n일라인
if crossup(c,var64) Then {
var51 = index;
var7 = var64; # 상향 돌파한 값
}
if CrossDown(c,var64) Then {
var52 = index;
var8 = var64; # 하향돌파한 값
}
if N > 0 Then { # 양수이면 저점에서 현재까지 출력
plot1(var64,"n일라인");
if c < var64 then
plot2(var8,"n일라인 돌파값");
}
if N < 0 Then { # 음수이면 고점에서 현재까지 출력
plot1(var64,"n일라인");
if c > var64 then
plot2(var7,"n일라인 돌파값");
} }
---------------------------------
선물 15분봉에서
위 수식의 지표 출력하면
if c < var64 then
plot2(var8,"n일라인 돌파값");
if c > var64 then
plot2(var7,"n일라인 돌파값"); 이 출력값이
현재가가 var8, var7 을 돌파하기 전인데도
여러곳에 나타납니다.
위 수식 수정 부탁드립니다.
다음글
이전글