커뮤니티

수식 문의드립니다.

프로필 이미지
슬러거03
2010-02-19 17:39:17
691
글번호 28226
답변완료
저는 03:00 당일청산 합니다. 그러나 만기일청산시간을 02:50 이전에 할수있게하는 수식부탁합니다.
시스템
답변 2
프로필 이미지

캐빈이야

2010-02-19 23:07:15

쉽게 하시는 방법을 알려드립니다. var1 = 20100211; //만기날 if (sdate == var1) then { setstopendofday(144900); } else { setstopendofday(150000); } 위 식에서 만기날을 자동으로 계산하는 식을 넣으면 변수로 만기일을 직접 넣지 않아도 됩니다. 여기 QnA보시면 만기일 찾는 함수가 있습니다. 그걸 이용하셔서... 이용하시면 됩니다. 저는 시스템이 부하를 최소한으로 하고자 이렇게 합니다. 굳이 한달에 1번인 날을 위해 매일또는 매틱정보가 들어올때 계산하는 것은 비효율적이라고 봅니다. 시스템이 6000라인이 넘어가기 시작하면 슬슬 성능걱정을 하기 시작합니다. > 슬러거03 님이 쓴 글입니다. > 제목 : 수식 문의드립니다. > 저는 03:00 당일청산 합니다. 그러나 만기일청산시간을 02:50 이전에 할수있게하는 수식부탁합니다.
프로필 이미지

예스스탁 예스스탁 답변

2010-02-22 10:46:21

안녕하세요 예스스탁입니다. 수식에서는 휴일정보가 없어 밑에 캐빈님의 답변과 같이 날짜를 지정하셔서 청산시간을 정해주시는 것이 정확합니다. 아래는 수식으로 3,6,9,12의 두번째주 목요일을 수식으로 계산하여 청산시간을 달리하는 식입니다. 휴일정보가 없어 만기가 순연된 경우에는 맞지 않습니다. var : va1(0),va2(0),va3(0); va1 = int(date/100)-int(date/10000)*100; //월 va2 = date - int(date/100)*100; //일 va3 = DayOfWeek(date); //요일 if va1%3 == 0 and // 3,6,9,12월이고 va2 >= 8 and va2 <= 14 and // 8일에서 14일 사이이고 va3 == 4 Then // 목요일 SetStopEndofday(145900);# 만기일에는 14시 49분 Else SetStopEndofday(150000);# 만기일이 아니면 15시 즐거운 하루되세요 > 슬러거03 님이 쓴 글입니다. > 제목 : 수식 문의드립니다. > 저는 03:00 당일청산 합니다. 그러나 만기일청산시간을 02:50 이전에 할수있게하는 수식부탁합니다.