커뮤니티

트레일링스톱에 관련된 질문입니다.(재질문)

프로필 이미지
ydaniel
2014-02-07 15:12:52
163
글번호 72321
답변완료
프로그램사용법 Q&A에 올렸는데, 답이 없어서 여기에 다시 올립니다. 내용은 동일합니다. 신속한 답변 부탁드립니다. If ( o < c and o[1] < c[1] and o[2] < c[2]) Then buy("b1", onclose, def, 1 ) ; setstopposition; SetStopTrailing( 0.4, 0.6, PointStop, 0); 피라미딩은 모든신호 가능으로 설정했구요. 그 이외에는 기본값으로 사용했습니다. 차트도 첨부를 합니다. 문의할 내용은 트레일링스톱의 경우 1번 처럼 진입해서 목표가 만큼 상승했다가 손절가 만큼 떨어지면 청산하는 것이 맞는것 같은데 2번의 청산은 잘 이해가 가지 않습니다. 포지션 진입후 계속 손실만 났는데 세번째 진입후 바로 청산되었습니다. 어떻게 동작되는건지 지금 거래하는 증권사에서 제공되는 트레일링스톱과 다르게 작동해서 혼란스럽습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-02-07 18:00:43

안녕하세요 예스스탁입니다. 현재 트레일링스탑이 진입이후(첫진입이후)의 최고가를 기준으로 포지션의 수익여부를 판단합니다. 2번째 추가진입이 발생하고 평균단가가 낮아졌는데 진입이후(첫진입이후)의 최고가가 수익조건을 만족하고 다음봉 시가가 해당최고값보다 0.4포인트이상 작아 청산이 발생했습니다. SetStopPosition이 아닐때는 개별 진입신호별로 동작을 하는데 작성하신 시스템은 피라미딩을 하시고 SetStopPosition을 설정으로 사용하시므로 아래와 같이 풀어서 작성해 주셔야 합니다. var : HH(0),LL(0); if MarketPosition == 1 Then{ if CurrentContracts > CurrentContracts[1] Then HH = H; if H > HH Then HH = H; if HH >= AvgEntryPrice+(0.6/CurrentContracts) Then ExitLong("bx",AtStop,HH-(0.4/CurrentContracts)); } if MarketPosition == -1 Then{ if CurrentContracts > CurrentContracts[1] Then LL = L; if L < LL Then LL = L; if LL <= AvgEntryPrice-(0.6/CurrentContracts) Then ExitShort("sx",AtStop,LL+(0.4/CurrentContracts)); } 즐거운 하루되세요 > ydaniel 님이 쓴 글입니다. > 제목 : 트레일링스톱에 관련된 질문입니다.(재질문) > 프로그램사용법 Q&A에 올렸는데, 답이 없어서 여기에 다시 올립니다. 내용은 동일합니다. 신속한 답변 부탁드립니다. If ( o < c and o[1] < c[1] and o[2] < c[2]) Then buy("b1", onclose, def, 1 ) ; setstopposition; SetStopTrailing( 0.4, 0.6, PointStop, 0); 피라미딩은 모든신호 가능으로 설정했구요. 그 이외에는 기본값으로 사용했습니다. 차트도 첨부를 합니다. 문의할 내용은 트레일링스톱의 경우 1번 처럼 진입해서 목표가 만큼 상승했다가 손절가 만큼 떨어지면 청산하는 것이 맞는것 같은데 2번의 청산은 잘 이해가 가지 않습니다. 포지션 진입후 계속 손실만 났는데 세번째 진입후 바로 청산되었습니다. 어떻게 동작되는건지 지금 거래하는 증권사에서 제공되는 트레일링스톱과 다르게 작동해서 혼란스럽습니다.