예스스탁
예스스탁 답변
2022-11-04 15:07:37
안녕하세요
예스스탁입니다.
기간은 3개만 작성해 드립니다.
수식 내용 숙지하셔서 원하시는 만큼 추가하시기 바랍니다.
기본차트속성에서 갭보정한 상태이면 1번식 이용하시면 됩니다.
수식은 차트의 데이타를 사용하므로 수식내에서 갭보정으로 처리할 내용이 없습니다.
만약 갭보정하지 않은 차트에서 갭보정한값으로 계산하는 내용이면
2번식을 사용하시면 됩니다.
수식의 갭보정은 기본차트속성의 갭보정과 다릅니다.
기본차트속성에서 갭보정한것과 같이는 수식에서 값계산이 불가능합니다.
속성의 갭보정은 당일 데이타를 고정한 상태에서
과거로 가면서 갭만큼 데이타를 보정하게 되지만
수식은 차트과거에서 현재로만 계산이 되므로
수식에서 갭보정은 과거에서 현재로 오면서 갭을 누적해서 지표를 계산합니다.
이에따라 당일 데이타와는 괴리가 있고
단지 갭보정하지 않은 차트에서 갭을 제거해 지표의 흐름을 보는 용도입니다.
1
input : ntime1(60),P1(12),P2(14),P3(16);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
var : sum2(0),mav2(0);
var : sum3(0),mav3(0);
Array : CC[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime1 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime1 > 1 and TM >= TM[1]+ntime1) or
(Bdate == Bdate[1] and ntime1 == 1 and TM > TM[1]) Then
{
for cnt = 99 downto 1
{
CC[cnt] = CC[cnt-1];
}
}
CC[0] = C;
if CC[P1-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P1;
plot1(mav1,"이평1");
}
if CC[P2-1] > 0 then
{
sum2 = 0;
for cnt = 0 to P2-1
{
sum2 = sum2+CC[cnt];
}
mav2 = sum2/P2;
plot2(mav2,"이평2");
}
if CC[P3-1] > 0 then
{
sum3 = 0;
for cnt = 0 to P3-1
{
sum3 = sum3+CC[cnt];
}
mav3 = sum3/P3;
plot3(mav3,"이평3");
}
}
2
input : ntime1(60),P1(12),P2(14),P3(16);
var : S1(0),D1(0),TM(0),TF(0),cnt(0),gap(0),sumGap(0);
var : sum1(0),mav1(0);
var : sum2(0),mav2(0);
var : sum3(0),mav3(0);
Array : CC[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
gap = Open-Close[1];
sumGap = sumGap+gap;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime1 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime1 > 1 and TM >= TM[1]+ntime1) or
(Bdate == Bdate[1] and ntime1 == 1 and TM > TM[1]) Then
{
for cnt = 99 downto 1
{
CC[cnt] = CC[cnt-1];
}
}
CC[0] = C - sumGap;
if CC[P1-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P1;
plot1(mav1,"이평1");
}
if CC[P2-1] > 0 then
{
sum2 = 0;
for cnt = 0 to P2-1
{
sum2 = sum2+CC[cnt];
}
mav2 = sum2/P2;
plot2(mav2,"이평2");
}
if CC[P3-1] > 0 then
{
sum3 = 0;
for cnt = 0 to P3-1
{
sum3 = sum3+CC[cnt];
}
mav3 = sum3/P3;
plot3(mav3,"이평3");
}
}
즐거운 하루되세요
> 좋운날 님이 쓴 글입니다.
> 제목 : 이평.
> 5분 갭보정차트에서 60분갭보정의
12 14 16 18 20 30 32 34 36 38 이평을 구할수 있는 지표식 부탁드립니다.
항상 감사합니다.