커뮤니티

함수변환 요청

프로필 이미지
흰둥이아빠
2019-03-06 15:48:57
187
글번호 126793
답변완료
안녕하세요? 아래는 시그널메이커로 작성된 스크립트입니다. 예스트레이더로 사용할 수 있도록 함수 변환 요청드립니다. 감사합니다. Vars : st(0), et(0); V1 = Dayofweek((10000 * Year(D)) + (100 * 3) + 1); If V1 = 0 Then Value2 = 8 Else Value2 = 15 - V1; // 3월 두번째 일요일 날짜 V2 = Dayofweek((10000 * Year(D)) + (100 * 11) + 1); If V2 = 0 Then Value4 = 1 Else value4 = 8 - V2; // 11월 첫번째 일요일 날짜 If date > (10000 * Year(D)) + (100 * 3) + value2 And date < (10000 * Year(D)) + (100 * 11) + value4 Then Begin st = 070000; // 써머타임 적용 시, 장시작 시간 et = 060000; // 써머타임 적용 시, 장종료 시간 End Else Begin st = 080000; // 장 시작 시간 et = 070000; // 장 종료 시간 End; condition1 = (IntPortion(time/10000) > IntPortion(et/10000) And IntPortion(time[1]/10000) <= IntPortion(et/10000)) Or st <> st[1]; ///////////////////////////////////////////////////////////////// If condition1 Then v99 = 0; Vars : SP(0); SP = SignalPosition; If SP[1] <> SP And SP <> 0 Then v99 = v99 + 1; Vars : pDayClose(0), vDayOpen(0); pDayClose = DayClose(1); vDayOpen = DayOpen(0); If v99 = 0 Then Begin If pDayClose < vDayOpen Then Buy("B", atmarket) Else IF pDayClose > vDayOpen Then Sell("S", atmarket); End; SetExitOnClose;
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-03-07 10:40:48

안녕하세요 예스스탁입니다. Var : st(0), et(0),year(0); var : V1(0),V2(0),v99(0); Year = Floor(sDate / 10000)*10000; V1 = Dayofweek((10000 * Year) + (100 * 3) + 1); If V1 == 0 Then Value2 = 8; Else Value2 = 15 - V1; // 3월 두번째 일요일 날짜 V2 = Dayofweek((10000 * Year) + (100 * 11) + 1); If V2 == 0 Then Value4 = 1; Else value4 = 8 - V2; // 11월 첫번째 일요일 날짜 If sdate > (10000 * Year) + (100 * 3) + value2 And sdate < (10000 * Year) + (100 * 11) + value4 Then Begin st = 070000; // 써머타임 적용 시, 장시작 시간 et = 060000; // 써머타임 적용 시, 장종료 시간 End Else Begin st = 080000; // 장 시작 시간 et = 070000; // 장 종료 시간 End; condition1 = (IntPortion(stime/10000) > IntPortion(et/10000) And IntPortion(stime[1]/10000) <= IntPortion(et/10000)) Or st <> st[1]; ///////////////////////////////////////////////////////////////// If condition1 Then v99 = 0; Vars : SP(0); SP = MarketPosition; If SP[1] <> SP And SP <> 0 Then v99 = v99 + 1; Vars : pDayClose(0), vDayOpen(0); pDayClose = DayClose(1); vDayOpen = DayOpen(0); If v99 == 0 Then Begin If pDayClose < vDayOpen Then Buy("B", atmarket); Else IF pDayClose > vDayOpen Then Sell("S", atmarket); End; SetStopEndofday(153000); 즐거운 하루되세요 > 흰둥이아빠 님이 쓴 글입니다. > 제목 : 함수변환 요청 > 안녕하세요? 아래는 시그널메이커로 작성된 스크립트입니다. 예스트레이더로 사용할 수 있도록 함수 변환 요청드립니다. 감사합니다. Vars : st(0), et(0); V1 = Dayofweek((10000 * Year(D)) + (100 * 3) + 1); If V1 = 0 Then Value2 = 8 Else Value2 = 15 - V1; // 3월 두번째 일요일 날짜 V2 = Dayofweek((10000 * Year(D)) + (100 * 11) + 1); If V2 = 0 Then Value4 = 1 Else value4 = 8 - V2; // 11월 첫번째 일요일 날짜 If date > (10000 * Year(D)) + (100 * 3) + value2 And date < (10000 * Year(D)) + (100 * 11) + value4 Then Begin st = 070000; // 써머타임 적용 시, 장시작 시간 et = 060000; // 써머타임 적용 시, 장종료 시간 End Else Begin st = 080000; // 장 시작 시간 et = 070000; // 장 종료 시간 End; condition1 = (IntPortion(time/10000) > IntPortion(et/10000) And IntPortion(time[1]/10000) <= IntPortion(et/10000)) Or st <> st[1]; ///////////////////////////////////////////////////////////////// If condition1 Then v99 = 0; Vars : SP(0); SP = SignalPosition; If SP[1] <> SP And SP <> 0 Then v99 = v99 + 1; Vars : pDayClose(0), vDayOpen(0); pDayClose = DayClose(1); vDayOpen = DayOpen(0); If v99 = 0 Then Begin If pDayClose < vDayOpen Then Buy("B", atmarket) Else IF pDayClose > vDayOpen Then Sell("S", atmarket); End; SetExitOnClose;