커뮤니티
수정 부탁드립니다.
2012-02-23 21:04:25
436
글번호 48145
아래의 수식을 적용해보니 (고가+저가)/2 의 평균값 즉, 고가와 저가의 평균중간값이 나오는거 같은데요...
제가 얻고자 하는 것은 (고가-저가)의 평균값입니다.
단순히 (HH+LL)/2 부분을 HH-LL 로 바꿔도 값이 이상하게 나오네요..
정확한 수정 부탁드립니다.
input : 조회갯수(5000),N(7);
var : cnt(0),count(0),sum1(0),mav1(0),HH(0),LL(0);
Array : HL[500](0);
if index == 0 or date != date[1] Then
var3 = TimeToMinutes(stime);
var1 = (TimeToMinutes(stime)-var3)%(BarInterval*N);
var2 = int(조회갯수/(BarInterval*N));
if dayindex() == 0 or (var1 <= var1[1] and stime > stime[1]) Then{
value1 = value1+1;
HH = H;
LL = L;
for cnt = 1 to 499{
HL[cnt] = HL[cnt-1][1];
}
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
HL[0] = (HH+LL)/2;
if HL[var2] > 0 Then{
sum1 = 0;
for count = 0 to var2-1{
sum1 = sum1+HL[count];
}
mav1 = sum1/var2;
plot1(mav1);
}
답변 1
예스스탁 예스스탁 답변
2012-02-24 14:13:12
안녕하세요
예스스탁입니다.
(고가-저가)의 평균값이시면 (HH-LL)로 변경하시면 됩니다.
첨부된 그림에서 #은 3분봉차트에 조회건수 5000, N은 7로 하여 적용한 지표이며
##은 21분봉 차트에 ma(H-L,238)를 출력시킨것입니다.
input : 조회갯수(5000),N(7);
var : cnt(0),count(0),sum1(0),mav1(0),HH(0),LL(0);
Array : HL[500](0);
if index == 0 or date != date[1] Then
var3 = TimeToMinutes(stime);
var1 = (TimeToMinutes(stime)-var3)%(BarInterval*N);
var2 = int(조회갯수/(BarInterval*N));
if dayindex() == 0 or (var1 <= var1[1] and stime > stime[1]) Then{
value1 = value1+1;
HH = H;
LL = L;
for cnt = 1 to 499{
HL[cnt] = HL[cnt-1][1];
}
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
HL[0] = (HH-LL);
if HL[var2] > 0 Then{
sum1 = 0;
for count = 0 to var2-1{
sum1 = sum1+HL[count];
}
mav1 = sum1/var2;
plot1(mav1);
}
즐거운 하루되세요
> 9단 님이 쓴 글입니다.
> 제목 : 수정 부탁드립니다.
> 아래의 수식을 적용해보니 (고가+저가)/2 의 평균값 즉, 고가와 저가의 평균중간값이 나오는거 같은데요...
제가 얻고자 하는 것은 (고가-저가)의 평균값입니다.
단순히 (HH+LL)/2 부분을 HH-LL 로 바꿔도 값이 이상하게 나오네요..
정확한 수정 부탁드립니다.
input : 조회갯수(5000),N(7);
var : cnt(0),count(0),sum1(0),mav1(0),HH(0),LL(0);
Array : HL[500](0);
if index == 0 or date != date[1] Then
var3 = TimeToMinutes(stime);
var1 = (TimeToMinutes(stime)-var3)%(BarInterval*N);
var2 = int(조회갯수/(BarInterval*N));
if dayindex() == 0 or (var1 <= var1[1] and stime > stime[1]) Then{
value1 = value1+1;
HH = H;
LL = L;
for cnt = 1 to 499{
HL[cnt] = HL[cnt-1][1];
}
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
HL[0] = (HH+LL)/2;
if HL[var2] > 0 Then{
sum1 = 0;
for count = 0 to var2-1{
sum1 = sum1+HL[count];
}
mav1 = sum1/var2;
plot1(mav1);
}
다음글
이전글