커뮤니티
라인그리기 문의요
2015-01-28 14:48:17
101
글번호 82736
1. 1시간봉의 5이평과 60이평
2. 30분봉의 5이평과 60이평
을 900틱 챠트에 라인으로 그리고 싶습니다.
부탁드릴께요. 감사합니다.
답변 1
예스스탁 예스스탁 답변
2015-01-28 17:53:18
안녕하세요
예스스탁입니다.
틱봉을 이용해 분봉의 지표값을 정확히 계산할 방법은 없습니다.
수식은 봉의 시고저종가만 사용하는데 분봉의 경계값이 틱봉의 중간에 위치할
경우가 많습니다.
아래식은 비슷하게 나오는 식입니다.
input : maP1(5),maP2(60);
var : TF1(0),TF2(0),cnt(0);
var : sum11(0),sum12(0),sum21(0),sum22(0);
var : mav11(0),mav12(0),mav21(0),mav22(0);
Array : C1[100](0),C2[100](0);
TF1 = TimeToMinutes(stime)%30;
TF2 = TimeToMinutes(stime)%60;
if dayindex() == 0 or (TF1 < TF1[1] and stime > stime[1]) Then{
for cnt = 1 to 99{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if dayindex() == 0 or (TF2 < TF2[1] and stime > stime[1]) Then{
for cnt = 1 to 99{
C2[cnt] = C2[cnt-1][1];
}
}
C2[0] = C;
sum11 = 0;
sum12 = 0;
for cnt = 0 to maP2{
if cnt < maP1 Then
sum11 = sum11+C1[cnt];
if cnt < maP2 Then
sum12 = sum12+C1[cnt];
}
sum21 = 0;
sum22 = 0;
for cnt = 0 to maP2{
if cnt < maP1 Then
sum21 = sum21+C2[cnt];
if cnt < maP2 Then
sum22 = sum22+C2[cnt];
}
if C2[maP1] > 0 Then{
mav11 = sum11/maP1;
plot1(mav11,"30분봉5이평");
}
if C2[maP2] > 0 Then{
mav12 = sum12/maP2;
plot2(mav12,"30분봉60이평");
}
if C2[maP1] > 0 Then{
mav21 = sum21/maP1;
plot3(mav21,"60분봉5이평");
}
if C2[maP2] > 0 Then{
mav22 = sum22/maP2;
plot4(mav22,"60분봉60이평");
}
즐거운 하루되세요
> 신나는파파 님이 쓴 글입니다.
> 제목 : 라인그리기 문의요
> 1. 1시간봉의 5이평과 60이평
2. 30분봉의 5이평과 60이평
을 900틱 챠트에 라인으로 그리고 싶습니다.
부탁드릴께요. 감사합니다.