커뮤니티

문의 드립니다

프로필 이미지
7out
2021-10-27 01:20:02
650
글번호 153180
답변완료
안녕하세요. 어제 질문한 내용을 혹시 아래의 수식에서도 적용이 가능한지 문의 드립니다. 새로운 하루(영업일 기준)가 시작되었을 시 변수를 모두 초기화를 시키고 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); } ----------------------------------------------------------------- 항상 친절히 답변해주셔서 감사합니다.