커뮤니티

함수요청

프로필 이미지
흰둥이아빠
2019-02-26 16:07:23
218
글번호 126585
답변완료
함수요청드립니다. 해외선물 크루드오일 5분봉으로 거래하고자 하는데, 참조종목은 골드 5분봉입니다. 아래 전략 1, 2를 하나의 스크립트로 부탁드립니다. 1.써머타임 적용시 가.진입 a.우리시각으로 22시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 위에 있으면 익봉시가 매수 b.우리시각으로 22시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 아래에 있으면 익봉시가 매도 나.손절 a.포지션 진입 이후 참조종목의 MACD 오실레이터가 0선으로 돌파[이탈] 반전 완성되면 익봉시가에 손절 (혹은)b.포지션 진입 이후 참조종목의 MACD 오실레이터가 작아지면[커지면] 익봉시가에 손절 (매수포지션 진입 이후 그 값이 작아지면 가령 0.5에서 0.4로 변동되면, 매도포지션 진입 이후 그 값이 커지면 가령 -0.5에서 -0.4로 변동되면) 다.시간청산: 당일청산(오전 3시 15분 완성봉) 2.써머타임 해제시 가.진입 a.우리시각으로 23시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 위에 있으면 익봉시가 매수 b.우리시각으로 23시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 아래에 있으면 익봉시가 매도 나.손절 a.포지션 진입 이후 참조종목의 MACD 오실레이터가 0선으로 돌파[이탈] 반전 완성되면 익봉시가에 손절 (혹은)b.포지션 진입 이후 참조종목의 MACD 오실레이터가 작아지면[커지면] 익봉시가에 손절 (매수포지션 진입 이후 그 값이 작아지면 가령 0.5에서 0.4로 변동되면, 매도포지션 진입 이후 그 값이 커지면 가령 -0.5에서 -0.4로 변동되면) 다.시간청산: 당일청산(오전 4시 15분 완성봉) 단, 진입기준으로 당일에만 하루 한번 거래입니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-02-27 11:50:11

안녕하세요 예스스탁입니다. input : short(12),long(26),sig(9); var : O1(0,data2),O2(0,data2),MACDO(0,data2); Var : v1(0,data1),v2(0,data1),v3(0,data1),v4(0,data1),Summercond(False,data1),Year(0,data1); Year = data1(Floor(sdate/10000)); V1 = data1((10000 * Year) + (100 * 3) + 1); V2 = data1(15 - dayofweek(v1)); v3 = data1((10000 * Year) + (100 * 11) + 1); v4 = data1(8 - dayofweek(v3)); Summercond = data1(date > (10000 * Year) + (100 * 3) + v2 And date < (10000 * Year) + (100 * 11) + v4); MACDO = data2(MACD_OSC(short,long,sig)); if data1(bdate != bdate[1]) Then O1 = data1(O); if data2(bdate != bdate[1]) Then O2 = data2(O); if Summercond == true then { if stime == 223500 then { if MACDO > 0 Then buy("b1",AtMarket); if MACDO < 0 Then sell("s1",AtMarket); } if stime == 031500 Then { ExitLong("bx1",AtMarket); ExitShort("sx1",AtMarket); } } if Summercond == false then { if stime == 233500 then { if MACDO > 0 Then buy("b2",AtMarket); if MACDO < 0 Then sell("s2",AtMarket); } if stime == 041500 Then { ExitLong("bx2",AtMarket); ExitShort("sx2",AtMarket); } } if MarketPosition == 1 and (MACDO < 0 or MACDO < MACDO[1]) Then exitlong("bx",AtMarket); if MarketPosition == -1 and (MACDO > 0 or MACDO > MACDO[1]) Then ExitShort("sx"); 즐거운 하루되세요 > 흰둥이아빠 님이 쓴 글입니다. > 제목 : 함수요청 > 함수요청드립니다. 해외선물 크루드오일 5분봉으로 거래하고자 하는데, 참조종목은 골드 5분봉입니다. 아래 전략 1, 2를 하나의 스크립트로 부탁드립니다. 1.써머타임 적용시 가.진입 a.우리시각으로 22시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 위에 있으면 익봉시가 매수 b.우리시각으로 22시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 아래에 있으면 익봉시가 매도 나.손절 a.포지션 진입 이후 참조종목의 MACD 오실레이터가 0선으로 돌파[이탈] 반전 완성되면 익봉시가에 손절 (혹은)b.포지션 진입 이후 참조종목의 MACD 오실레이터가 작아지면[커지면] 익봉시가에 손절 (매수포지션 진입 이후 그 값이 작아지면 가령 0.5에서 0.4로 변동되면, 매도포지션 진입 이후 그 값이 커지면 가령 -0.5에서 -0.4로 변동되면) 다.시간청산: 당일청산(오전 3시 15분 완성봉) 2.써머타임 해제시 가.진입 a.우리시각으로 23시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 위에 있으면 익봉시가 매수 b.우리시각으로 23시 35분 완성봉 기준으로 참조종목의 MACD 오실레이터가 0선 아래에 있으면 익봉시가 매도 나.손절 a.포지션 진입 이후 참조종목의 MACD 오실레이터가 0선으로 돌파[이탈] 반전 완성되면 익봉시가에 손절 (혹은)b.포지션 진입 이후 참조종목의 MACD 오실레이터가 작아지면[커지면] 익봉시가에 손절 (매수포지션 진입 이후 그 값이 작아지면 가령 0.5에서 0.4로 변동되면, 매도포지션 진입 이후 그 값이 커지면 가령 -0.5에서 -0.4로 변동되면) 다.시간청산: 당일청산(오전 4시 15분 완성봉) 단, 진입기준으로 당일에만 하루 한번 거래입니다.