커뮤니티

질문입니다.

프로필 이미지
yanartas
2016-10-27 09:20:29
82
글번호 103408
답변완료
선물거래에서 시스템질문입니다. 단기, 중기, 장기 3개의 이평을 가지고 시스템을 작성하고자 합니다. 질문1. 1계약으로 운영하는 시스템입니다. 매수요건은 중기이평이 장기이평보다 크거나 같고, 동시에 단기이평이 중기이평보다 커야합니다. 매도요건은 중기이평이 장기이평보다 작거나 같고, 동시에 단기이평이 중기이평보다 작아야합니다. 이렇게 매수와 매도로 포지션을 바꾸는 시스템인데, 매수포지션 중에 단기이평이 장기이평보다 밑으로 가는 상황이 발생하면 매수포지션을 정리합니다. 매도포지션 중 단기이평이 장기이평보다 위로가는 상황이 발생하면 매도포지션을 정리합니다. 질문2. 질문1과 같은 시스템에서 피라미딩을 적용하고 싶습니다. 총 3계약으로 운영한다고 가정합니다. 매수진입 후 2번째 매수진입은 첫번째 매수진입가격보다 높을때만 작동하며, 진입가격은 매수가격 + L1%(예 0.2%) 입니다. 2번째 매수진입후 세번째 매수진입도 마찬가지로, 2번째 매수진입보다 높은가격에서만 작동하고, 2번째 매수진입가격은 2번쨰 매수가격 + L2%(예 0.3%) 입니다. 문제는 각각 2번째와 3번째 매수진입이 이루어진 후 가격이 반대로 하락할 경우, 피라미딩을 청산하고 싶습니다. 두번째 세번째 매수진입 후 그 다음봉부터 각각의 진입가격에서 X틱(예 2틱)을 더한값보다 현재가격이 낮다면 각각 진입한 피라미딩을 정리합니다. 매도의 경우도 마찬가지입니다. 첫번째 매도진입이 이루어진 후 두번째 매도진입은 첫번째 매도가격 - S1(예 0.2%) 이고, 세번째 매도가격은 두번째 매도가격 - S2(예 0.3%) 입니다. 두번째와 세번째 각각의 매도 진입 후 다음봉부터 감시를하여 현재가격이 반대로 상승한다면 (진입가격 - Y틱(예 2틱)) 각각 진입한 피라미딩을 정리합니다. 두 질문에 대해 예시로 부탁드리겠습니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-10-27 11:33:23

안녕하세요 예스스탁입니다. 1. var : T(0); var1 = ma(C,5); var2 = ma(C,20); var3 = ma(C,60); if MarketPosition <= 0 and var1 > var2 and var2 >= var3 Then buy(); if MarketPosition >= 0 and var1 < var2 and var2 <= var3 Then sell(); if MarketPosition == 1 and var1 < var3 Then exitlong(); if MarketPosition == -1 and var1 > var3 Then ExitShort(); 2 피라미딩을 다른진입신호만 허용으로 설정하고 적용하시면 됩니다. input : L1(0.2),L2(0.3),S1(0.2),S2(0.3); var : T(0),EP1(0),EP2(0),EP3(0); var1 = ma(C,5); var2 = ma(C,20); var3 = ma(C,60); if MarketPosition <= 0 and var1 > var2 and var2 >= var3 Then buy("b1"); if MarketPosition >= 0 and var1 < var2 and var2 <= var3 Then sell("s1"); if MarketPosition == 1 Then{ if MaxEntries == 1 Then buy("b2",AtStop,LatestEntryPrice(0)*(1+L1/100)); if MaxEntries == 2 Then buy("b3",AtStop,LatestEntryPrice(0)*(1+L2/100)); if var1 < var3 Then exitlong("bx"); if CurrentContracts > CurrentContracts[1] Then{ EP1 = LatestEntryPrice(0); EP2 = EP1[1]; EP3 = EP2[1]; } if MaxEntries == 3 then{ exitlong("bx3",AtStop,EP1+PriceScale*2,"b3"); exitlong("bx2",AtStop,EP2+PriceScale*2,"b2"); exitlong("bx1",AtStop,EP3+PriceScale*2,"b1"); } } if MarketPosition == -1 then{ if MaxEntries == 1 Then sell("s2",AtStop,LatestEntryPrice(0)*(1-S1/100)); if MaxEntries == 2 Then sell("s3",AtStop,LatestEntryPrice(0)*(1-S2/100)); if var1 > var3 Then ExitShort("sx"); if CurrentContracts > CurrentContracts[1] Then{ EP1 = LatestEntryPrice(0); EP2 = EP1[1]; EP3 = EP2[1]; } if MaxEntries == 3 then{ ExitShort("sx3",AtStop,EP1-PriceScale*2,"s3"); ExitShort("sx2",AtStop,EP2-PriceScale*2,"s2"); ExitShort("sx1",AtStop,EP3-PriceScale*2,"s1"); } } 즐거운 하루되세요 > yanartas 님이 쓴 글입니다. > 제목 : 질문입니다. > 선물거래에서 시스템질문입니다. 단기, 중기, 장기 3개의 이평을 가지고 시스템을 작성하고자 합니다. 질문1. 1계약으로 운영하는 시스템입니다. 매수요건은 중기이평이 장기이평보다 크거나 같고, 동시에 단기이평이 중기이평보다 커야합니다. 매도요건은 중기이평이 장기이평보다 작거나 같고, 동시에 단기이평이 중기이평보다 작아야합니다. 이렇게 매수와 매도로 포지션을 바꾸는 시스템인데, 매수포지션 중에 단기이평이 장기이평보다 밑으로 가는 상황이 발생하면 매수포지션을 정리합니다. 매도포지션 중 단기이평이 장기이평보다 위로가는 상황이 발생하면 매도포지션을 정리합니다. 질문2. 질문1과 같은 시스템에서 피라미딩을 적용하고 싶습니다. 총 3계약으로 운영한다고 가정합니다. 매수진입 후 2번째 매수진입은 첫번째 매수진입가격보다 높을때만 작동하며, 진입가격은 매수가격 + L1%(예 0.2%) 입니다. 2번째 매수진입후 세번째 매수진입도 마찬가지로, 2번째 매수진입보다 높은가격에서만 작동하고, 2번째 매수진입가격은 2번&#51760; 매수가격 + L2%(예 0.3%) 입니다. 문제는 각각 2번째와 3번째 매수진입이 이루어진 후 가격이 반대로 하락할 경우, 피라미딩을 청산하고 싶습니다. 두번째 세번째 매수진입 후 그 다음봉부터 각각의 진입가격에서 X틱(예 2틱)을 더한값보다 현재가격이 낮다면 각각 진입한 피라미딩을 정리합니다. 매도의 경우도 마찬가지입니다. 첫번째 매도진입이 이루어진 후 두번째 매도진입은 첫번째 매도가격 - S1(예 0.2%) 이고, 세번째 매도가격은 두번째 매도가격 - S2(예 0.3%) 입니다. 두번째와 세번째 각각의 매도 진입 후 다음봉부터 감시를하여 현재가격이 반대로 상승한다면 (진입가격 - Y틱(예 2틱)) 각각 진입한 피라미딩을 정리합니다. 두 질문에 대해 예시로 부탁드리겠습니다. 감사합니다.