커뮤니티

문의 드립니다.

프로필 이미지
이승준
2012-02-10 15:15:00
298
글번호 47603
답변완료

첨부 이미지

그림에서 보다시피 262.65에 매수를 했지만 261.80 까지 0.85 하락을 했습니다. 현재봉에서 다시 매수가까지 올라왔습니다. if MarketPosition == 1 and Lowest(L,BarsSinceEntry) <= EntryPrice-0.7 Then ExitLong("매수본매",AtLimit,EntryPrice); 당연히 수식에 의해서 다음봉에서 매수청산이 되어야 함에도 청산이 안됐습니다. 무엇때문일까요?
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2012-02-10 16:54:36

안녕하세요 예스스탁입니다. MarketPosition은 신호발생후 MarketPosition 값이 변경됩니다. if문은 봉이 완성되어야 조건만족여부를 판단합니다. 진입신호가 (onclose)타입이면 다음봉 시가 수신시 부터 1입니다. 현재 매수신호가 발생한 십자봉의 다음봉인 음봉부터에서 MarketPosition 이 1값이 되고 해당 음봉 완성시 Lowest(L,BarsSinceEntry) <= EntryPrice-0.7 조건이 만족하면 atlimit가격으로 EntryPrice을 걸고 음봉 다음봉의 시세가 진입가이상의 시세가 발생하면 신호가 발생합니다. 진입신호가 onclose타입이시면 말씀하신 음봉에는 신호가 나올수 없습니다. 진입신호가 (atmarket,atstop,atlimit)타입이어서 십자봉에 신호가 발생한 상태이시면 현재 매수신호가 난 봉 부터 MarketPosition이 1이 되고 Lowest(L,BarsSinceEntry) <= EntryPrice-0.7 조건만족여부를 따지게 됩니다. 하지만 작성하신 식에서 Lowest(L,BarsSinceEntry)은 진입이후의 최고가인데 진입한 진입신호가 난 봉을 제외한 최저가입니다. BarsSinceEntry가 진입신호가 난 봉을 0으로 해서 1씩 증가하므로 진입봉에서는 Lowest(L,0)이 되고 lowest에 기간값이 0이 들어가면 계산을 하지 않으로 진입봉에서 조건이 만족할 수 가 없습니다. 진입이 (atmarket,atstop,atlimit)타입으로 발생한 한 식이시면 아래와 같이 작성하시면 첨부된 그림과 같이 신호봉 다음봉부터 청산신호가 발생할 수 있습니다. if MarketPosition == 1 and Lowest(L,BarsSinceEntry+1) <= EntryPrice-0.7 Then ExitLong("매수본매",AtLimit,EntryPrice); 즐거운 하루되세요 > 이승준 님이 쓴 글입니다. > 제목 : 문의 드립니다. > 그림에서 보다시피 262.65에 매수를 했지만 261.80 까지 0.85 하락을 했습니다. 현재봉에서 다시 매수가까지 올라왔습니다. if MarketPosition == 1 and Lowest(L,BarsSinceEntry) <= EntryPrice-0.7 Then ExitLong("매수본매",AtLimit,EntryPrice); 당연히 수식에 의해서 다음봉에서 매수청산이 되어야 함에도 청산이 안됐습니다. 무엇때문일까요?
프로필 이미지

이승준

2012-02-10 18:18:34

이승준 님에 의해 삭제된 답변입니다.