도움에 감사 드립니다.
수식1)은 타주기(분)용은 정상 실행되나
같은 내용의 수식2)는 타주기(틱)용은 실행이 되지 않아
수정 부탁 드립니다.
수식1)타주기(분)용
input : ntime1(11),P(20);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
Array : C1[50](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 TF < TF[1]) Then
{
for cnt = 1 to 49
{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if C1[P] > 0 then{
sum1 = 0;
for cnt = 0 to P-1{
sum1 = sum1+C1[cnt];
}
mav1 = sum1/P;
if c > mav1 Then
plot1(1);
Else
plot1(0);
}
}
2)타주기(틱)용
input : n(2),P(20);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0),idx(0);
Array : C1[50](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
idx = 0;
}
Else
idx = idx+1;
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = idx%n;
if Bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
for cnt = 1 to 49
{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if C1[P] > 0 then{
sum1 = 0;
for cnt = 0 to P-1{
sum1 = sum1+C1[cnt];
}
mav1 = sum1/P;
if c > mav1 Then
plot1(1);
Else
plot1(0);
}
}
답변 1
예스스탁
예스스탁 답변
2020-01-22 13:47:39
안녕하세요
예스스탁입니다.
수식에 오류가 없습니다.
타주기(틱용)은 틱봉에서 배수로 높은 틱봉의 값을 계산할때 사용합니다.
100틱 봉에서 200틱봉, 300틱봉 등의 이평을 계산하며
100틱에서 200틱봉은 n을 2, 300틱봉은 n을 3으로 지정하시면 됩니다.
즐거운 명절 되시기 바랍니다.
> yes 님이 쓴 글입니다.
> 제목 : 부탁 드립니다.
> 도움에 감사 드립니다.
수식1)은 타주기(분)용은 정상 실행되나
같은 내용의 수식2)는 타주기(틱)용은 실행이 되지 않아
수정 부탁 드립니다.
수식1)타주기(분)용
input : ntime1(11),P(20);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
Array : C1[50](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 TF < TF[1]) Then
{
for cnt = 1 to 49
{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if C1[P] > 0 then{
sum1 = 0;
for cnt = 0 to P-1{
sum1 = sum1+C1[cnt];
}
mav1 = sum1/P;
if c > mav1 Then
plot1(1);
Else
plot1(0);
}
}
2)타주기(틱)용
input : n(2),P(20);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0),idx(0);
Array : C1[50](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
idx = 0;
}
Else
idx = idx+1;
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = idx%n;
if Bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
for cnt = 1 to 49
{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if C1[P] > 0 then{
sum1 = 0;
for cnt = 0 to P-1{
sum1 = sum1+C1[cnt];
}
mav1 = sum1/P;
if c > mav1 Then
plot1(1);
Else
plot1(0);
}
}