커뮤니티

수정부탁드립니다.

프로필 이미지
대구어린울프
2020-04-02 14:04:46
523
글번호 137464
답변완료
안녕하세요? 66767에 대한글에대한 답변 감사히 잘 받았습니다. 하루매매횟수에 스위칭 횟수까지 포함하고싶다고 말씀드렸었고, 외부변수에서 지정한 횟수에 모두 잘 거래가 되나, 3가지수식중 첫번째 수식이 아직 안고쳐져서 도움요청 드립니다. 지정횟수보다 훨씬많이 거래가 되네요 ㅠㅠ 아래수식 수정부탁드립니다. 감사합니다. input : 매수전봉양봉틱수(5),매수현재양봉틱수(5); input : 매도전봉음봉틱수(5),매도현재음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(50); var : entry(0),T1(0); if bdate != bdate[1] Then { T1 = TotalTrades; } if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else ExitLong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); Else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } SetStopProfittarget(PriceScale*익절틱수,PointStop);
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2020-04-03 15:08:17

안녕하세요 예스스탁입니다. 국내선물 몇년치에 테스트 해 보았지만 지정횟수 이상 진입이 없습니다. 수식도 수정해 드릴만한 부분이 보이지 않습니다. 02-3453-1060으로 전화주시기 바랍니다. 즐거운 하루되세요 > 대구어린울프 님이 쓴 글입니다. > 제목 : 수정부탁드립니다. > 안녕하세요? 66767에 대한글에대한 답변 감사히 잘 받았습니다. 하루매매횟수에 스위칭 횟수까지 포함하고싶다고 말씀드렸었고, 외부변수에서 지정한 횟수에 모두 잘 거래가 되나, 3가지수식중 첫번째 수식이 아직 안고쳐져서 도움요청 드립니다. 지정횟수보다 훨씬많이 거래가 되네요 ㅠㅠ 아래수식 수정부탁드립니다. 감사합니다. input : 매수전봉양봉틱수(5),매수현재양봉틱수(5); input : 매도전봉음봉틱수(5),매도현재음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(50); var : entry(0),T1(0); if bdate != bdate[1] Then { T1 = TotalTrades; } if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else ExitLong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); Else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } SetStopProfittarget(PriceScale*익절틱수,PointStop);
프로필 이미지

예스스탁 예스스탁 답변

2020-04-03 20:50:14

안녕하세요 예스스탁입니다. 1번,2번,3번식을 모두 수정해 드립니다. 현재 테스트 결과 모두 지정한 횟수이상 신호가 발생하지는 않습니다. 혹시 지정한 횟수 이상 신호가 다시 발생하면 게시판에 글이나 전화로 연락 주시기 바랍니다. 1 input : 매수전봉양봉틱수(2),매수현재양봉틱수(2); input : 매도전봉음봉틱수(2),매도현재음봉틱수(2); input : 진입횟수(2); input : 익절틱수(20),손절틱수(20); var : entry(0); if bdate != bdate[1] Then { entry = 0; } #현재봉이 무포지션이 아니고 전봉과 현재봉의 포지션이 다를때 if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) then entry = entry +1; #현재봉과 전봉의 포지션은 같은데 총거래횟수가 증가했을때(봉하나에서 진입청산이 모두 발생) if (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry +1; if bdate == bdate[1] and entry < 진입횟수 and MarketPosition == 0 and C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if bdate == bdate[1] and entry < 진입횟수 and MarketPosition == 0 and C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else ExitLong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } SetStopProfittarget(PriceScale*익절틱수,PointStop); 2 input : 매수전봉양봉틱수(5),매수현재양봉틱수(5); input : 매도전봉음봉틱수(5),매도현재음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(4); input : P1(5),P2(20); var : entry(0),mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); if bdate != bdate[1] Then { entry = 0; } #현재봉 포지션이 무포지션이 아니고 전봉과 현재봉이 다를때 if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry +1; #현재봉 포지션이 전봉과 같은데 총거래횟수가 증가했을때(하나의 봉에서 진입청산발생) if MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1] Then entry = entry +1; if mav1 > mav2 and #정배열 entry < 진입횟수 and #진입횟수가 지정한 값 이하 bdate == bdate[1] and MarketPosition == 0 and #매수나 무포지션 상태 C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if mav1 < mav2 and #역배열 entry < 진입횟수 and #진입횟수가 지정한 값 이하 bdate == bdate[1] and MarketPosition == 0 and #매도나 무포지션 상태 C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else ExitLong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); Else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } #목표수익 설정 SetStopProfittarget(PriceScale*익절틱수,PointStop); 3 input : 매수전봉양봉틱수(5),매수현재양봉틱수(5); input : 매도전봉음봉틱수(5),매도현재음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(4); input : P1(5),P2(20); var : entry(0),mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); if bdate != bdate[1] Then { entry = 0; } #현재봉 포지션이 무포지션이 아니고 전봉과 현재봉이 다를때 if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry +1; #현재봉 포지션이 전봉과 같은데 총거래횟수가 증가했을때(하나의 봉에서 진입청산발생) if MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1] Then entry = entry +1; if mav1 < mav2 and #역배열 entry < 진입횟수 and #진입횟수가 지정한 값 이하 bdate == bdate[1] and MarketPosition == 0 and #매수나 무포지션 상태 C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if mav1 > mav2 and #정배열 entry < 진입횟수 and #진입횟수가 지정한 값 이하 bdate == bdate[1] and MarketPosition == 0 and #매도나 무포지션 상태 C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else Exitlong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); Else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } #목표수익 설정 SetStopProfittarget(PriceScale*익절틱수,PointStop); 즐거운 하루되세요 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수정부탁드립니다. > 안녕하세요 예스스탁입니다. 국내선물 몇년치에 테스트 해 보았지만 지정횟수 이상 진입이 없습니다. 수식도 수정해 드릴만한 부분이 보이지 않습니다. 02-3453-1060으로 전화주시기 바랍니다. 즐거운 하루되세요 > 대구어린울프 님이 쓴 글입니다. > 제목 : 수정부탁드립니다. > 안녕하세요? 66767에 대한글에대한 답변 감사히 잘 받았습니다. 하루매매횟수에 스위칭 횟수까지 포함하고싶다고 말씀드렸었고, 외부변수에서 지정한 횟수에 모두 잘 거래가 되나, 3가지수식중 첫번째 수식이 아직 안고쳐져서 도움요청 드립니다. 지정횟수보다 훨씬많이 거래가 되네요 ㅠㅠ 아래수식 수정부탁드립니다. 감사합니다. input : 매수전봉양봉틱수(5),매수현재양봉틱수(5); input : 매도전봉음봉틱수(5),매도현재음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(50); var : entry(0),T1(0); if bdate != bdate[1] Then { T1 = TotalTrades; } if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]-매도전봉음봉틱수*PriceScale and C[0] == O[0]-매도현재음봉틱수*PriceScale Then { sell("s"); if entry < 진입횟수-1 then buy("bs1",AtStop,C+PriceScale*손절틱수); Else ExitShort("sx1",AtStop,C+PriceScale*손절틱수); } if bdate == bdate[1] and MarketPosition == 0 and C[1] == O[1]+매수전봉양봉틱수*PriceScale and C[0] == O[0]+매수현재양봉틱수*PriceScale Then { buy("b"); if entry < 진입횟수-1 Then sell("sb1",AtStop,C-PriceScale*손절틱수); Else ExitLong("bx1",AtStop,C-PriceScale*손절틱수); } #매수진입 후 손절되면 매도로 스위칭 if MarketPosition == 1 Then { if entry < 진입횟수 Then sell("bs",AtStop,EntryPrice-PriceScale*손절틱수); Else ExitLong("bsx",AtStop,EntryPrice-PriceScale*손절틱수); } #매도진입 후 손절되면 매수로 스위칭 if MarketPosition == -1 Then { if entry < 진입횟수 Then buy("sb",AtStop,EntryPrice+PriceScale*손절틱수); Else ExitShort("sbx",AtStop,EntryPrice+PriceScale*손절틱수); } SetStopProfittarget(PriceScale*익절틱수,PointStop);