안녕하세요.
어제 질문한 내용을 혹시 아래의 수식에서도 적용이 가능한지 문의 드립니다.
새로운 하루(영업일 기준)가 시작되었을 시
변수를 모두 초기화를 시키고
Var1의 경우 금일 오전 11:00부터 익일 오전 01:00사이에 해당 조건을 만족한 시점부터
지표를 생성하고 싶습니다.
Var2의 경우 금일 오전 09:00부터 익일 오전 03:00사이에 해당 조건을 만족한 시점부터
지표를 생성하고 싶습니다.
만약 조건을 만족하지 못할 시 지표 값이 표시가 안되었으면 좋겠습니다.
---------------------------------------------------------------------------------
input : ntime(120);
var : S1(0),D1(0),TM(0),TF(0);
var : HH(0),HH1(0),HH2(0),LL(0),LL1(0),LL2(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
{
HH = H;
LL = L;
HH1 = HH[1];
LL1 = LL[1];
HH2 = HH[2];
LL2 = LL[2];
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
if HH2 > 0 and HH1 > HH2 Then
{
var1 = HH1;
}
if LL2 > 0 and LL1 > LL2 Then
{
var2 = LL1;
}
plot1(var1);
plot2(var2);
}
-----------------------------------------------------------------
항상 친절히 답변해주셔서 감사합니다.
답변 1
예스스탁
예스스탁 답변
2021-10-27 11:35:09
안녕하세요
예스스탁입니다.
input : ntime(120);
input : start1(110000),End1(010000);
input : start2(090000),End2(020000);
var : S1(0),D1(0),TM(0),TF(0);
var : HH(0),HH1(0),HH2(0),LL(0),LL1(0),LL2(0);
var : T1(false),T2(False);
if (sdate != sdate[1] and stime >= End1) or
(sdate == sdate[1] and stime >= End1 and stime[1] < End1) Then
T1 = False;
if (sdate != sdate[1] and stime >= start1) or
(sdate == sdate[1] and stime >= start1 and stime[1] < start1) Then
T1 = true;
if (sdate != sdate[1] and stime >= End2) or
(sdate == sdate[1] and stime >= End2 and stime[1] < End2) Then
T2 = False;
if (sdate != sdate[1] and stime >= start2) or
(sdate == sdate[1] and stime >= start2 and stime[1] < start2) Then
T2 = true;
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
var1 = 0;
Var2 = 0;
}
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
{
HH = H;
LL = L;
HH1 = HH[1];
LL1 = LL[1];
HH2 = HH[2];
LL2 = LL[2];
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
if HH2 > 0 and HH1 > HH2 and T1 == true Then
{
var1 = HH1;
}
if LL2 > 0 and LL1 > LL2 and T2 == true Then
{
var2 = LL1;
}
if var1 > 0 then
plot1(var1);
Else
NoPlot(1);
if Var2 > 0 Then
plot2(var2);
Else
NoPlot(2);
}
즐거운 하루되세요
> 7out 님이 쓴 글입니다.
> 제목 : 문의 드립니다
> 안녕하세요.
어제 질문한 내용을 혹시 아래의 수식에서도 적용이 가능한지 문의 드립니다.
새로운 하루(영업일 기준)가 시작되었을 시
변수를 모두 초기화를 시키고
Var1의 경우 금일 오전 11:00부터 익일 오전 01:00사이에 해당 조건을 만족한 시점부터
지표를 생성하고 싶습니다.
Var2의 경우 금일 오전 09:00부터 익일 오전 03:00사이에 해당 조건을 만족한 시점부터
지표를 생성하고 싶습니다.
만약 조건을 만족하지 못할 시 지표 값이 표시가 안되었으면 좋겠습니다.
---------------------------------------------------------------------------------
input : ntime(120);
var : S1(0),D1(0),TM(0),TF(0);
var : HH(0),HH1(0),HH2(0),LL(0),LL1(0),LL2(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
{
HH = H;
LL = L;
HH1 = HH[1];
LL1 = LL[1];
HH2 = HH[2];
LL2 = LL[2];
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
if HH2 > 0 and HH1 > HH2 Then
{
var1 = HH1;
}
if LL2 > 0 and LL1 > LL2 Then
{
var2 = LL1;
}
plot1(var1);
plot2(var2);
}
-----------------------------------------------------------------
항상 친절히 답변해주셔서 감사합니다.