커뮤니티

행복; 지표식 작성 바랍니다

프로필 이미지
행복한가방
2020-12-29 09:48:44
802
글번호 144960
답변완료
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다 지표식 관련입니다 [ 수식작성 Q&A ] 에 의하면 미국의 서머타임은 '3월 두 번째 일요일부터 11월 첫 번째 일요일까지' 이고 수식은 < 아래 > 와 같습니다 -----------< 아래 >------------------------------- if sdate != sdate[1] Then { S1 = Floor(sdate/10000)*10000+0300; E1 = Floor(sdate/10000)*10000+1100; var1 = 0; var2 = 0; for cnt = 1 to 31 { if DayOfWeek(S1+cnt) == 0 Then { var1 = var1+1; if var1 == 2 then { S2 = S1+cnt; } } if DayOfWeek(E1+cnt) == 0 and cnt <= 31 Then { var2 = var2+1; if var2 == 1 then { E2 = E1+cnt; } } } Summer = sdate > S2 And sdate < E2; if summer == true Then SetStopEndofday(30000); Else SetStopEndofday(40000); } ----------------------< 아래 >------------------------ << 질문 >> 유럽의 서머타임은 ' 3월 마지막 일요일부터 10월 마지막 일요일까지' 입니다 수식이 어떻게 수정해야 되는지요? 수식 작성 바랍니다 수고하십시요^^
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-12-29 17:11:15

안녕하세요 예스스탁입니다. var : S1(0),S2(0),E1(0),E2(0),cnt(0),S0(0),E0(0),Summer(False); var : A1(0),A2(0),A3(0); var : B1(0),B2(0),B3(0); if sdate != sdate[1] Then { S1 = Floor(sdate/10000)*10000+0300; E1 = Floor(sdate/10000)*10000+1100; S0 = Floor(S1/100)*100; E0 = Floor(E1/100)*100; for cnt = 1 to 31 { A1 = S1+cnt; A2 = DateToJulian(A1); A3 = Floor(JulianToDate(A2)/100)*100; if S0 == A3 and DayOfWeek(A1) == 0 Then { S2 = A1; } B1 = E1+cnt; B2 = DateToJulian(B1); B3 = Floor(JulianToDate(B2)/100)*100; if E0 == B3 and DayOfWeek(B1) == 0 Then { E2 = B1; } } Summer = sdate >= S2 And sdate <= E2; if summer == true Then SetStopEndofday(30000); Else SetStopEndofday(40000); } 즐거운 하루되세요 > 행복한가방 님이 쓴 글입니다. > 제목 : 행복; 지표식 작성 바랍니다 > 한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다 지표식 관련입니다 [ 수식작성 Q&A ] 에 의하면 미국의 서머타임은 '3월 두 번째 일요일부터 11월 첫 번째 일요일까지' 이고 수식은 < 아래 > 와 같습니다 -----------< 아래 >------------------------------- if sdate != sdate[1] Then { S1 = Floor(sdate/10000)*10000+0300; E1 = Floor(sdate/10000)*10000+1100; var1 = 0; var2 = 0; for cnt = 1 to 31 { if DayOfWeek(S1+cnt) == 0 Then { var1 = var1+1; if var1 == 2 then { S2 = S1+cnt; } } if DayOfWeek(E1+cnt) == 0 and cnt <= 31 Then { var2 = var2+1; if var2 == 1 then { E2 = E1+cnt; } } } Summer = sdate > S2 And sdate < E2; if summer == true Then SetStopEndofday(30000); Else SetStopEndofday(40000); } ----------------------< 아래 >------------------------ << 질문 >> 유럽의 서머타임은 ' 3월 마지막 일요일부터 10월 마지막 일요일까지' 입니다 수식이 어떻게 수정해야 되는지요? 수식 작성 바랍니다 수고하십시요^^