커뮤니티

시스템 문의 드립니다.

프로필 이미지
acai
2013-06-20 15:38:33
215
글번호 64557
답변완료
안녕하세요. 주문식을 만드려고 하는데요. 스토캐스틱으로 스토캐스틱이 50 이면 0 포지션. 스토캐스틱이 60 이면 +1 포지션 스토캐스틱이 70 이면 +2 포지션 ... 스토캐스틱이 100 이면 +5 포지션 반대로 스토캐스틱이 40 이면 -1 포지션. 스토캐스틱이 30 이면 -2 포지션 ... 스토캐스틱이 0 이면 -5 포지션 으로 수량을 맞추고 싶습니다. 아래는 설명서 보고 만들어 본건데; 원하는대로 진입과 청산이 안되고 있습니다. 가능하다면 설정값이랑 수식 수정을 부탁드리고 싶습니다. 감사합니다. Input : Period(100); var : fosto(0); fosto = (c - Lowest(c, period)) * 10 / (Highest(c, period)- Lowest(c, period)) ; #Buy1 if crossup(fosto,6) Then { Buy("+1", OnClose, DEF, 1); } if CrossDown(fosto,6) Then { ExitLong("+1x", OnClose, DEF,"",1,1); } #Buy2 if crossup(fosto,7) Then { Buy("+2", OnClose, DEF, 1); } if CrossDown(fosto,7) Then { ExitLong("+2x", OnClose, DEF,"",1,1); } #Buy3 if crossup(fosto,8) Then { Buy("+3", OnClose, DEF, 1); } if CrossDown(fosto,8) Then { ExitLong("+3x", OnClose, DEF,"",1,1); } #Buy4 if crossup(fosto,9) Then { Buy("+4", OnClose, DEF, 1); } if CrossDown(fosto,9) Then { ExitLong("+4x", OnClose, DEF,"",1,1); } #Buy5 if crossup(fosto,9.99) Then { Buy("+5", OnClose, DEF, 1); } if CrossDown(fosto,9.99) Then { ExitLong("+5x", OnClose, DEF,"",1,1); } #sell1 if CrossDown(fosto,4) Then { sell("-1", OnClose, DEF, 1); } if CrossUp(fosto,4) Then { ExitShort("-1x", OnClose, DEF,"",1,1); } #sell2 if CrossDown(fosto,3) Then { sell("-2", OnClose, DEF, 1); } if CrossUp(fosto,3) Then { ExitShort("-2x", OnClose, DEF,"",1,1); } #sell3 if CrossDown(fosto,2) Then { sell("-3", OnClose, DEF, 1); } if CrossUp(fosto,2) Then { ExitShort("-3x", OnClose, DEF,"",1,1); } #sell4 if CrossDown(fosto,1) Then { sell("-4", OnClose, DEF, 1); } if CrossUp(fosto,1) Then { ExitShort("-4x", OnClose, DEF,"",1,1); } #sell5 if CrossDown(fosto,0.01) Then { sell("-5", OnClose, DEF, 1); } if CrossDown(fosto,0.01) Then { ExitShort("-5x", OnClose, DEF,"",1,1); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-06-21 09:34:35

안녕하세요 예스스탁입니다. input : Period(100); var1 = FastK(Period); if MarketPosition <= 0 and crossup(var1,60) Then buy("b1",OnClose,def,1); if MarketPosition == 1 Then{ if var1 == 70 or crossup(var1,70) Then buy("b2",OnClose,def,1); if var1 == 80 or crossup(var1,80) Then buy("b3",OnClose,def,1); if var1 == 90 or crossup(var1,90) Then buy("b4",OnClose,def,1); if var1 == 100 Then buy("b5",OnClose,def,1); } if MarketPosition >= 0 and CrossDown(var1,40) Then sell("s1",OnClose,def,1); if MarketPosition == 1 Then{ if var1 == 30 or CrossDown(var1,30) Then sell("s2",OnClose,def,1); if var1 == 20 or CrossDown(var1,20) Then sell("s3",OnClose,def,1); if var1 == 10 or CrossDown(var1,10) Then sell("s4",OnClose,def,1); if var1 == 0 Then sell("s5",OnClose,def,1); } if crossup(var1,50) or CrossDown(var1,50) Then{ ExitLong(); ExitShort(); } 시스템 적용시 설정화면에서 피라미딩을 다른진입신호만 허용으로 설정하고 적용하시면 됩니다. 즐거운 하루되세요 > acai 님이 쓴 글입니다. > 제목 : 시스템 문의 드립니다. > 안녕하세요. 주문식을 만드려고 하는데요. 스토캐스틱으로 스토캐스틱이 50 이면 0 포지션. 스토캐스틱이 60 이면 +1 포지션 스토캐스틱이 70 이면 +2 포지션 ... 스토캐스틱이 100 이면 +5 포지션 반대로 스토캐스틱이 40 이면 -1 포지션. 스토캐스틱이 30 이면 -2 포지션 ... 스토캐스틱이 0 이면 -5 포지션 으로 수량을 맞추고 싶습니다. 아래는 설명서 보고 만들어 본건데; 원하는대로 진입과 청산이 안되고 있습니다. 가능하다면 설정값이랑 수식 수정을 부탁드리고 싶습니다. 감사합니다. Input : Period(100); var : fosto(0); fosto = (c - Lowest(c, period)) * 10 / (Highest(c, period)- Lowest(c, period)) ; #Buy1 if crossup(fosto,6) Then { Buy("+1", OnClose, DEF, 1); } if CrossDown(fosto,6) Then { ExitLong("+1x", OnClose, DEF,"",1,1); } #Buy2 if crossup(fosto,7) Then { Buy("+2", OnClose, DEF, 1); } if CrossDown(fosto,7) Then { ExitLong("+2x", OnClose, DEF,"",1,1); } #Buy3 if crossup(fosto,8) Then { Buy("+3", OnClose, DEF, 1); } if CrossDown(fosto,8) Then { ExitLong("+3x", OnClose, DEF,"",1,1); } #Buy4 if crossup(fosto,9) Then { Buy("+4", OnClose, DEF, 1); } if CrossDown(fosto,9) Then { ExitLong("+4x", OnClose, DEF,"",1,1); } #Buy5 if crossup(fosto,9.99) Then { Buy("+5", OnClose, DEF, 1); } if CrossDown(fosto,9.99) Then { ExitLong("+5x", OnClose, DEF,"",1,1); } #sell1 if CrossDown(fosto,4) Then { sell("-1", OnClose, DEF, 1); } if CrossUp(fosto,4) Then { ExitShort("-1x", OnClose, DEF,"",1,1); } #sell2 if CrossDown(fosto,3) Then { sell("-2", OnClose, DEF, 1); } if CrossUp(fosto,3) Then { ExitShort("-2x", OnClose, DEF,"",1,1); } #sell3 if CrossDown(fosto,2) Then { sell("-3", OnClose, DEF, 1); } if CrossUp(fosto,2) Then { ExitShort("-3x", OnClose, DEF,"",1,1); } #sell4 if CrossDown(fosto,1) Then { sell("-4", OnClose, DEF, 1); } if CrossUp(fosto,1) Then { ExitShort("-4x", OnClose, DEF,"",1,1); } #sell5 if CrossDown(fosto,0.01) Then { sell("-5", OnClose, DEF, 1); } if CrossDown(fosto,0.01) Then { ExitShort("-5x", OnClose, DEF,"",1,1); }