커뮤니티

함수요청

프로필 이미지
흰둥이아빠
2021-06-28 15:31:52
1205
글번호 150338
답변완료
안녕하세요? 아래 전략에 대해 스크립트 작성 요청드립니다. 크루드 오일 5분봉으로 거래를 하고자 합니다. 우리시각으로 오전 7시 ~ 22시 30분 사이에 500계약 이상 거래가 되고 해당 5분봉의 종가-시가 가 10틱 이상 상승하면 익봉 시가에 매도, 10틱 이상 하락하면 입봉 시가에 매수 진입입니다. 진입하고 500계약 거래되었던 그 봉의 시가가 이탈 혹은 돌파 완성되면 익봉 시가에 청산합니다. 진입 이후에 2개 연속 봉이 진입한 방향과 다른 방향으로 움직여서 손실나면 3번째 봉 시가에 손절 써머타임 해지시에는 오전 8시~23시 30분 사이로 기준 전략 시간이 변경됩니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-06-28 17:05:04

안녕하세요 예스스탁입니다. var : Tcond(false),st(0),xt(0); var : Year(0),v1(0),v2(0),v3(0),v4(0),summer(False); if (sdate != sdate[1] and stime >= xt) or (sdate == sdate[1] and stime >= xt and stime[1] < xt) Then Tcond = False; if bdate != bdate[1] Then { Tcond = true; //썸머타임체크 Year = Floor(bdate/10000); V1 = (10000 * Year) + (100 * 3) + 1; V2 = 15 - dayofweek(v1); // 3월 두번째 일요일 날짜 v3 = (10000 * Year) + (100 * 11) + 1; v4 = 8 - dayofweek(v3); // 11월 첫번째 일요일 날짜 Summer = bdate > (10000 * Year) + (100 * 3) + v2 And bdate < (10000 * Year) + (100 * 11) + v4; if summer == true Then { st = 70000; xt = 223000; } Else { st = 80000; xt = 233000; } } if Tcond == true Then { if MarketPosition >= 0 and V >= 500 and C >= O+PriceScale*10 Then Sell("s",AtMarket); if MarketPosition <= 0 and V >= 500 and C <= O-PriceScale*10 Then Buy("b",AtMarket); if MarketPosition == 1 Then { if C < O[BarsSinceEntry+1] Then ExitLong("bx1",AtMarket); if CountIf(C<C[1],2) == 2 and C < EntryPrice Then ExitLong("bx2",AtMarket); } if MarketPosition == -1 Then { if C > O[BarsSinceEntry+1] Then ExitShort("sx1",AtMarket); if CountIf(C>C[1],2) == 2 and C > EntryPrice Then ExitShort("sx2",AtMarket); } } if xt > 0 and st > 0 Then { IF xt > st Then SetStopEndofday(xt); Else { if sDate != sDate[1] Then SetStopEndofday(xt); } if (sdate != sdate[1] and stime >= st) or (sdate == sdate[1] and stime >= st and stime[1] < st) Then { IF xt <= st Then { SetStopEndofday(0); } } } 즐거운 하루되세요 > 흰둥이아빠 님이 쓴 글입니다. > 제목 : 함수요청 > 안녕하세요? 아래 전략에 대해 스크립트 작성 요청드립니다. 크루드 오일 5분봉으로 거래를 하고자 합니다. 우리시각으로 오전 7시 ~ 22시 30분 사이에 500계약 이상 거래가 되고 해당 5분봉의 종가-시가 가 10틱 이상 상승하면 익봉 시가에 매도, 10틱 이상 하락하면 입봉 시가에 매수 진입입니다. 진입하고 500계약 거래되었던 그 봉의 시가가 이탈 혹은 돌파 완성되면 익봉 시가에 청산합니다. 진입 이후에 2개 연속 봉이 진입한 방향과 다른 방향으로 움직여서 손실나면 3번째 봉 시가에 손절 써머타임 해지시에는 오전 8시~23시 30분 사이로 기준 전략 시간이 변경됩니다.