커뮤니티

수식수정 부탁합니다

프로필 이미지
청춘의환희
2011-07-08 13:18:14
669
글번호 40706
답변완료
## 변수선언 Input : shortperiod(9), longperiod(26); var1 = Highest(h,shortperiod); var2 = Lowest(L,shortperiod); var3 = Highest(H,longperiod); var4 = Lowest(L,longperiod); var5 = Ma(c,12); var6 = Ma(c,20); var7 = StochasticsK(18,8); var8 = StochasticsD(18,8,7); ## 신규 매수와 신규매도(각각의 청산은 반대신호시 발생. 즉, Buy 된 후에 청산은 Sell 신호가 나오면 Buy 포지션의 청산 후 바로 스위칭되어 Sell 포지션으로 바뀜) If o < C and L > (var1+var2)/2 and L > (var3+var4)/2 and L > var5 and var6 and var7 > var8 Then Buy("매수진입",OnClose); If o > C and H < (var1+var2)/2 and H < (var3+var4)/2 and H < var5 and var6 and var7 < var8 Then Sell("매도진입",OnClose); ## 추가매수진입과 추가매수청산 If MarketPosition == 1 Then { Buy("추가매수진입",AtLimit, EntryPrice-0.5); if CurrentEntries == 2 Then ExitLong("추가매수청산",OnClose,EntryPrice); } ## 추가매도진입과 추가매도청산 If marketposition == -1 Then { Sell("추가매도진입",AtLimit, entryprice+0.5); if CurrentEntries == 2 Then ExitShort("추가매도청산",OnClose,EntryPrice); } ## 당일청산 SetStopEndofday(150400); ########################################## 위 식에서 청산 후 진입이 같은 봉에서 나오고 있습니다. 증거금의 문제로 인해 청산 후 무조건 다음봉에 진입신호가 나오도록 바꾸고 싶습니다. 수식수정 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-07-08 18:48:54

안녕하세요? 예스스탁입니다. 시스템 트레이딩 설정창의 부가기능에 진입을 지연시키는 기능이 있습니다. 리버스 시스템에서 증거금이 두배로 잡히는 문제를 해결하기 위해서 청산은 즉시하되, 진입은 N초 지연시켜서 하는 방법입니다. 이 기능을 이용해 보시길 권해드립니다. 올려주신 내용은 atlmit 타입의 주문이 있어서 신호를 제어하기가 어려울 것으로 판단이 됩니다. 감사합니다. > 청춘의환희 님이 쓴 글입니다. > 제목 : 수식수정 부탁합니다 > ## 변수선언 Input : shortperiod(9), longperiod(26); var1 = Highest(h,shortperiod); var2 = Lowest(L,shortperiod); var3 = Highest(H,longperiod); var4 = Lowest(L,longperiod); var5 = Ma(c,12); var6 = Ma(c,20); var7 = StochasticsK(18,8); var8 = StochasticsD(18,8,7); ## 신규 매수와 신규매도(각각의 청산은 반대신호시 발생. 즉, Buy 된 후에 청산은 Sell 신호가 나오면 Buy 포지션의 청산 후 바로 스위칭되어 Sell 포지션으로 바뀜) If o < C and L > (var1+var2)/2 and L > (var3+var4)/2 and L > var5 and var6 and var7 > var8 Then Buy("매수진입",OnClose); If o > C and H < (var1+var2)/2 and H < (var3+var4)/2 and H < var5 and var6 and var7 < var8 Then Sell("매도진입",OnClose); ## 추가매수진입과 추가매수청산 If MarketPosition == 1 Then { Buy("추가매수진입",AtLimit, EntryPrice-0.5); if CurrentEntries == 2 Then ExitLong("추가매수청산",OnClose,EntryPrice); } ## 추가매도진입과 추가매도청산 If marketposition == -1 Then { Sell("추가매도진입",AtLimit, entryprice+0.5); if CurrentEntries == 2 Then ExitShort("추가매도청산",OnClose,EntryPrice); } ## 당일청산 SetStopEndofday(150400); ########################################## 위 식에서 청산 후 진입이 같은 봉에서 나오고 있습니다. 증거금의 문제로 인해 청산 후 무조건 다음봉에 진입신호가 나오도록 바꾸고 싶습니다. 수식수정 부탁드립니다.