예스스탁
예스스탁 답변
2020-03-18 15:21:35
안녕하세요
예스스탁입니다.
수식이 P개봉 합산값 기준이었습니다.
현재봉 양봉음봉만 체크하게 수정해 드립니다.
input : ntime(10),P(20),sig(3);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),i1(0),sum2(0),i2(0),sum3(0),sum4(0);
Array : C1[100](0),O1[100](0),v61[100](0),v51[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%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
O1[0] = O;
for cnt = 1 to 99
{
C1[cnt] = C1[cnt-1][1];
O1[cnt] = O1[cnt-1][1];
v51[cnt] = v51[cnt-1][1];
v61[cnt] = v61[cnt-1][1];
}
}
C1[0] = C;
if O1[P] > 0 then
{
var1 = iff(C>O1[0],C,0);
var2 = iff(C>O1[0],1,0);
var11 = iff(C<O1[0],C,0);
var12 = iff(C<O1[0],1,0);
if var1 == 0 Then
var5 = C1[P-1];
Else
var5 = var1/var2;
if var11 == 0 Then
var15 = C1[P-1];
Else
var15 = var11/var12;
v51[0] = (var5+var15)/2;
sum4 = 0;
for cnt = 0 to sig-1
{
sum4 = sum4 + v51[cnt];
}
var81 = sum4/sig;
plot2(var81);
}
}
즐거운 하루되세요
> yes 님이 쓴 글입니다.
> 제목 : 부탁 드립니다.
> 도움에 늘 감사 드립니다.
수식1을 타분형으로 답변된 수식을 실행 결과
의외의 결과가 나타 납니다.
검토 수정 부탁 드립니다.
수식1)
input:p(20),sig(3);;
var1=iff(c>o,c,0);
var2=iff(c>o,1,0);
var3=AccumN(var1,p);
var4=accumn(var2,p);
var5=iff(var1==0 or var2==0 ,c[p-1],var1/var2);
var11=iff(c<o,c,0);
var12=iff(c<o,1,0);
var13=AccumN(var11,p);
var14=accumn(var12,p);
var15=iff(var11==0 or var12==0 ,c[p-1],var11/var12);
var51=(var5+var15)/2;
답변된수식)
input : ntime(10),P(20),sig(3);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),i1(0),sum2(0),i2(0),sum3(0),sum4(0);
Array : C1[100](0),O1[100](0),v61[100](0),v51[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%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
O1[0] = O;
for cnt = 1 to 99
{
C1[cnt] = C1[cnt-1][1];
O1[cnt] = O1[cnt-1][1];
v51[cnt] = v51[cnt-1][1];
v61[cnt] = v61[cnt-1][1];
}
}
C1[0] = C;
if O1[P] > 0 then
{
sum1 = 0;
i1 = 0;
sum2 = 0;
i2 = 0;
for cnt = 0 to P
{
if C1[cnt] > O1[cnt] Then
{
sum1 = sum1+C1[cnt];
i1 = i1+1;
}
if C1[cnt] < O1[cnt] Then
{
sum2 = sum2+C1[cnt];
i2 = i2+1;
}
}
if i1 == 0 Then
var5 = C1[P-1];
Else
var5 = sum1/i1;
if i2 == 0 Then
var15 = C1[P-1];
Else
var15 = sum2/i2;
v51[0] = (var5+var15)/2;
sum4 = 0;
for cnt = 0 to sig
{
sum4 = sum4 + v51[cnt];
}
var81 = sum4/sig;
plot2(var81);
}
}