커뮤니티

50917 재문의 합니다.

프로필 이미지
상중하
2016-12-07 15:36:36
129
글번호 104732
답변완료

첨부 이미지

수고 하십니다. 아래는 50917번 수식인데요 "동일방향만 셋팅되지 않도록 수정했습니다." 이부분을 동일 방향도 셋팅 가능하게 해 주세요 청산후 재진입이 되더라도 기존대로 해 주세요. 매매횟수가 너무 적네요. 50917번의 문의 내용중에 2번 항목이 적용이 않된것 같습니다. 그리고 이번 수식수정 이후 사진처럼 진입후 다음봉에서 청산이 바로 되는데요 수식검토 부탁드립니다. ------------------------------------------------------ 목표수익,손절매는 기존과 같이 설정창에서 지정하시면 됩니다. 수식에서 봉미완성시에 조건을 파악해서 제어를 하지 못합니다. 진입이 봉완성시 가격을 셋팅하고 다음봉의 현재가와 비교해 즉시 신호가 발생하게 되어 있는데 봉미완성시 손절이나 익절이 발생하고 해당봉 미완성시에 발생하는 진입을 막지는 못합니다. 수식에는 동일방향만 셋팅되지 않도록 수정했습니다. input : 당일수익틱수(100),당일손실틱수(50); var : 당일수익(0),당일손실(0),daypl(0),N1(0),Xcond(false); 당일수익 = PriceScale*당일수익틱수; 당일손실 = -PriceScale*당일손실틱수; if bdate != Bdate[1] Then{ N1 = NetProfit; Xcond = false; } daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("bp",1) or IsExitName("bl",1) or IsExitName("sp",1) or IsExitName("sl",1)) Then Xcond = true; var1 = ma(c,5); var2 = ma(c,20); var3 = ma(c,60); if Xcond == false and MarketPosition <= 0 and var3 > var3[1] and var2 > var2[1] and C > var3 and C > var1 Then buy("b",AtStop,NextBarOpen+PriceScale*2); if Xcond == false and MarketPosition >= 0 and var3 < var3[1] and var2 < var2[1] and C < var3 and C < var1 Then sell("s",AtStop,NextBarOpen-PriceScale*2); if MarketPosition == 1 then{ exitlong("bp",atlimit,EntryPrice+당일수익-daypl); exitlong("bl",AtStop,EntryPrice-당일손실-daypl); } if MarketPosition == -1 then{ ExitShort("sp",atlimit,EntryPrice-당일수익+daypl); ExitShort("sl",AtStop,EntryPrice+당일손실+daypl); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-12-08 10:05:48

안녕하세요 예스스탁입니다. 당일수익과 당일손실이 충족되면 즉시 신호가 발생하는데 청산시점이 진입신호가 가능하면 다시 진입하게되어 동일방향진입을 제어가 없으면 당일수익과 당일손실이 제어가 되지 않습니다. 매수 진입식의 MarketPosition <= 0 과 매도 진입식의 MarketPosition >= 0 를 삭제하시면 조건없이 들어가게 됩니다. 해당 부분은 직접 삭제해 보시기 바랍니다. input : 당일수익틱수(100),당일손실틱수(50); var : 당일수익(0),당일손실(0),daypl(0),N1(0),Xcond(false); 당일수익 = PriceScale*당일수익틱수; 당일손실 = PriceScale*당일손실틱수; if bdate != Bdate[1] Then{ N1 = NetProfit; Xcond = false; } daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("bp",1) or IsExitName("bl",1) or IsExitName("sp",1) or IsExitName("sl",1)) Then Xcond = true; var1 = ma(c,5); var2 = ma(c,20); var3 = ma(c,60); if Xcond == false and abs(C-daylow) < PriceScale*100 and MarketPosition <= 0 and var3 > var3[1] and var2 > var2[1] and C > var3 and C > var1 Then buy("b",AtStop,NextBarOpen+PriceScale*2); if Xcond == false and abs(C-DayHigh) < PriceScale*100 and MarketPosition >= 0 and var3 < var3[1] and var2 < var2[1] and C < var3 and C < var1 Then sell("s",AtStop,NextBarOpen-PriceScale*2); if MarketPosition == 1 then{ exitlong("bp",atlimit,EntryPrice+당일수익-daypl); exitlong("bl",AtStop,EntryPrice-당일손실-daypl); } if MarketPosition == -1 then{ ExitShort("sp",atlimit,EntryPrice-당일수익+daypl); ExitShort("sl",AtStop,EntryPrice+당일손실+daypl); } 즐거운 하루되세요 > 상중하 님이 쓴 글입니다. > 제목 : 50917 재문의 합니다. > 수고 하십니다. 아래는 50917번 수식인데요 "동일방향만 셋팅되지 않도록 수정했습니다." 이부분을 동일 방향도 셋팅 가능하게 해 주세요 청산후 재진입이 되더라도 기존대로 해 주세요. 매매횟수가 너무 적네요. 50917번의 문의 내용중에 2번 항목이 적용이 않된것 같습니다. 그리고 이번 수식수정 이후 사진처럼 진입후 다음봉에서 청산이 바로 되는데요 수식검토 부탁드립니다. ------------------------------------------------------ 목표수익,손절매는 기존과 같이 설정창에서 지정하시면 됩니다. 수식에서 봉미완성시에 조건을 파악해서 제어를 하지 못합니다. 진입이 봉완성시 가격을 셋팅하고 다음봉의 현재가와 비교해 즉시 신호가 발생하게 되어 있는데 봉미완성시 손절이나 익절이 발생하고 해당봉 미완성시에 발생하는 진입을 막지는 못합니다. 수식에는 동일방향만 셋팅되지 않도록 수정했습니다. input : 당일수익틱수(100),당일손실틱수(50); var : 당일수익(0),당일손실(0),daypl(0),N1(0),Xcond(false); 당일수익 = PriceScale*당일수익틱수; 당일손실 = -PriceScale*당일손실틱수; if bdate != Bdate[1] Then{ N1 = NetProfit; Xcond = false; } daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("bp",1) or IsExitName("bl",1) or IsExitName("sp",1) or IsExitName("sl",1)) Then Xcond = true; var1 = ma(c,5); var2 = ma(c,20); var3 = ma(c,60); if Xcond == false and MarketPosition <= 0 and var3 > var3[1] and var2 > var2[1] and C > var3 and C > var1 Then buy("b",AtStop,NextBarOpen+PriceScale*2); if Xcond == false and MarketPosition >= 0 and var3 < var3[1] and var2 < var2[1] and C < var3 and C < var1 Then sell("s",AtStop,NextBarOpen-PriceScale*2); if MarketPosition == 1 then{ exitlong("bp",atlimit,EntryPrice+당일수익-daypl); exitlong("bl",AtStop,EntryPrice-당일손실-daypl); } if MarketPosition == -1 then{ ExitShort("sp",atlimit,EntryPrice-당일수익+daypl); ExitShort("sl",AtStop,EntryPrice+당일손실+daypl); }