커뮤니티

문의드립니다.

프로필 이미지
거봉79
2022-02-28 17:02:49
1032
글번호 156832
답변완료
아까 여쭤봤는데 빠른답변 정말 감사드립니다. 마지막으로 좀 여쭤볼께요 ㅠ 1. 아래 도움 주신 조건식에서 조금 수정해서 추가로 (1) 매수포지션의 수익은 주문 진입시가 대비(실제 체결가 대비 말고) 40포인트, 손절은 진입시가 대비20포인트, 매도포지션의 수익은 진입시가 대비 50포인트, 손절은 진입시가 대비 15포인트 산식을 추가가능할까요 (2) 아래식에서 현재는 매수매도 모두 13시부터 17시 매매미진입, 01시부터 09시 매매미진입 되어있는데 매수의 경우 13시부터 17시 매매미진입, 01시부터 09시 매매미진입 유지하되 매도의 경우 04시부터 11시까지 매매미진입 으로 구분하여 수정 반영 가능할까요 도움주셔서 너무 감사드립니다. 이번까지만 묻고 이제 제가 자력으로 만들어볼께요 ㅠ ======================================================= 예스스탁입니다. 아래와 같이 작성하시면 매도로 스위칭이후 매도청산조건만 만족하면 청산만 하고 매수진입조건도 같이 만족하면 매수로 스위칭됩니다. input : P1(10),P2(30); var : Tcond(False); var1 = (AccumN(O,P1-1)+NextBarOpen)/P1; var2 = (AccumN(O,P2-1)+NextBarOpen)/P2; Tcond = !(sTime >= 130000 and sTime < 170000) and !(sTime >= 010000 and sTime < 090000); if MarketPosition <= 0 and NextBarOpen > var2 and NextBarOpen > var1+5 and Tcond == true Then Buy("b",AtMarket); if MarketPosition == 1 and NextBarOpen < var2 Then Sell("bs",AtMarket); if MarketPosition == -1 and NextBarOpen > Var2 Then ExitShort("sx"); 즐거운 하루되세요 > 거봉79 님이 쓴 글입니다. > 제목 : 수식 문의드립니다 > 아직 초보라 아래 전략을 토대로 보완 업그레이드해보려 합니다. 죄송하지만 도움 부탁드립니다ㅜ 종목 : 크루드오일 전략 1 -진입조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선임. 종가기준 이평선 아님) 값 보다 크게 시작하는 경우 시장가 매수 -진입시 추가조건 : 다만, 추가 조건으로, 5분봉 시작 시가가, 5분봉의 10 이평선(시가기준 이평선) 값 보다 5포인트 더 클 경우에만 진입하도록 추가 조건 설정. -진입시 추가조건2 : 오후 1시부터 오후 4:59분까지 미진입. 또한 새벽 1시부터 아침 8:59분까지는 진입하지 않음 (그외시간 진입) -청산조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선 값 보다 낮게 시작하는 경우 시장가 청산 전략 2 : 전략1 청산조건에서 스위칭 전략 -진입조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준) 값 보다 작게 시작하는 경우 시장가 매도 (전략1의 청산조건과 중복되는데 가능한지요) -청산조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선 값 보다 크게 시작하는 경우 시장가 청산 (전략1의 진입조건과 중복되는데 가능한지요)
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-02-28 17:20:56

안녕하세요 예스스탁입니다. 1 if문이 봉완성시 기준으로 진입후 1개봉은 완성이 되어야 if문으로 포지션 인식이 되므로 진입과 함께 손익절을 감시하는 내용과 그 다음봉부터 손익절 감시하는 내용을 같이 추가해 주시면 됩니다. input : P1(10),P2(30); var : Tcond(False); var1 = (AccumN(O,P1-1)+NextBarOpen)/P1; var2 = (AccumN(O,P2-1)+NextBarOpen)/P2; Tcond = !(sTime >= 130000 and sTime < 170000) and !(sTime >= 010000 and sTime < 090000); if MarketPosition <= 0 and NextBarOpen > var2 and NextBarOpen > var1+5 and Tcond == true Then { Buy("b",AtMarket); ExitLong("Bp1",AtLimit,NextBarOpen+40); ExitLong("Bl1",AtStop,NextBarOpen-20); } if MarketPosition == 1 and NextBarOpen < var2 Then { Sell("bs",AtMarket); ExitShort("Sp1",AtLimit,NextBarOpen-50); ExitShort("Sl1",AtStop,NextBarOpen+15); } if MarketPosition == -1 and NextBarOpen > Var2 Then ExitShort("sx"); if MarketPosition == 1 Then { ExitLong("Bp",AtLimit,O[BarsSinceEntry]+40); ExitLong("Bl",AtStop,O[BarsSinceEntry]-20); } if MarketPosition == -1 Then { ExitShort("Sp",AtLimit,O[BarsSinceEntry]-50); ExitShort("Sl",AtStop,O[BarsSinceEntry]+15); } 2 input : P1(10),P2(30); var : BTcond(False),STcond(False); var1 = (AccumN(O,P1-1)+NextBarOpen)/P1; var2 = (AccumN(O,P2-1)+NextBarOpen)/P2; BTcond = !(sTime >= 130000 and sTime < 170000) and !(sTime >= 010000 and sTime < 090000); STcond = !(sTime >= 040000 and sTime < 110000); if MarketPosition <= 0 and NextBarOpen > var2 and NextBarOpen > var1+5 and BTcond == true Then { Buy("b",AtMarket); ExitLong("Bp1",AtLimit,NextBarOpen+40); ExitLong("Bl1",AtStop,NextBarOpen-20); } if MarketPosition == 1 and NextBarOpen < var2 and STcond == true Then { Sell("bs",AtMarket); ExitShort("Sp1",AtLimit,NextBarOpen-50); ExitShort("Sl1",AtStop,NextBarOpen+15); } if MarketPosition == -1 and NextBarOpen > Var2 Then ExitShort("sx"); if MarketPosition == 1 Then { ExitLong("Bp",AtLimit,O[BarsSinceEntry]+40); ExitLong("Bl",AtStop,O[BarsSinceEntry]-20); } if MarketPosition == -1 Then { ExitShort("Sp",AtLimit,O[BarsSinceEntry]-50); ExitShort("Sl",AtStop,O[BarsSinceEntry]+15); } 즐거운 하루되세요 > 거봉79 님이 쓴 글입니다. > 제목 : 문의드립니다. > 아까 여쭤봤는데 빠른답변 정말 감사드립니다. 마지막으로 좀 여쭤볼께요 ㅠ 1. 아래 도움 주신 조건식에서 조금 수정해서 추가로 (1) 매수포지션의 수익은 주문 진입시가 대비(실제 체결가 대비 말고) 40포인트, 손절은 진입시가 대비20포인트, 매도포지션의 수익은 진입시가 대비 50포인트, 손절은 진입시가 대비 15포인트 산식을 추가가능할까요 (2) 아래식에서 현재는 매수매도 모두 13시부터 17시 매매미진입, 01시부터 09시 매매미진입 되어있는데 매수의 경우 13시부터 17시 매매미진입, 01시부터 09시 매매미진입 유지하되 매도의 경우 04시부터 11시까지 매매미진입 으로 구분하여 수정 반영 가능할까요 도움주셔서 너무 감사드립니다. 이번까지만 묻고 이제 제가 자력으로 만들어볼께요 ㅠ ======================================================= 예스스탁입니다. 아래와 같이 작성하시면 매도로 스위칭이후 매도청산조건만 만족하면 청산만 하고 매수진입조건도 같이 만족하면 매수로 스위칭됩니다. input : P1(10),P2(30); var : Tcond(False); var1 = (AccumN(O,P1-1)+NextBarOpen)/P1; var2 = (AccumN(O,P2-1)+NextBarOpen)/P2; Tcond = !(sTime >= 130000 and sTime < 170000) and !(sTime >= 010000 and sTime < 090000); if MarketPosition <= 0 and NextBarOpen > var2 and NextBarOpen > var1+5 and Tcond == true Then Buy("b",AtMarket); if MarketPosition == 1 and NextBarOpen < var2 Then Sell("bs",AtMarket); if MarketPosition == -1 and NextBarOpen > Var2 Then ExitShort("sx"); 즐거운 하루되세요 > 거봉79 님이 쓴 글입니다. > 제목 : 수식 문의드립니다 > 아직 초보라 아래 전략을 토대로 보완 업그레이드해보려 합니다. 죄송하지만 도움 부탁드립니다ㅜ 종목 : 크루드오일 전략 1 -진입조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선임. 종가기준 이평선 아님) 값 보다 크게 시작하는 경우 시장가 매수 -진입시 추가조건 : 다만, 추가 조건으로, 5분봉 시작 시가가, 5분봉의 10 이평선(시가기준 이평선) 값 보다 5포인트 더 클 경우에만 진입하도록 추가 조건 설정. -진입시 추가조건2 : 오후 1시부터 오후 4:59분까지 미진입. 또한 새벽 1시부터 아침 8:59분까지는 진입하지 않음 (그외시간 진입) -청산조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선 값 보다 낮게 시작하는 경우 시장가 청산 전략 2 : 전략1 청산조건에서 스위칭 전략 -진입조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준) 값 보다 작게 시작하는 경우 시장가 매도 (전략1의 청산조건과 중복되는데 가능한지요) -청산조건 : 5분봉 완성후 다음봉 시가기준으로, 5분봉 시작 시가가 5분봉의 30 이평선(시가기준 이평선 값 보다 크게 시작하는 경우 시장가 청산 (전략1의 진입조건과 중복되는데 가능한지요)