커뮤니티

12428 셋스탑 트레일링 관련

프로필 이미지
빠샤
2009-11-04 11:20:03
633
글번호 25901
답변완료
보내주신 식 다시한번 감사드립니다.. 근데 문제가 해결이 안되서요 12428번 질문 관련 다시 문의드립니다. 제가 궁금한 것은 2차내지는 3차 수익후 셋스탑트레일링이 걸린 이후에 청산시간을 따로 14시 40분으로 맞춰놓았는데도 계속 다음날 9시 시가에 아래나 위로 진입을 해 버립니다. 시스템 식에다 stime>144000 을 넣었는데도 그러네요 제 시스템은 아침 9시 20분부터 들어가게 되어있는데, 시스템이 진입하자마자, 전날의 셋스탑트레일링 '오름'이나 '내림'이 먼저 들어가 버리네요..그리고 나서 시스템대로 움직입니다.그날 거래는 그날 오후 2시 40분으로 끝내고 싶은대도 말이죠. 144000 시간제한 식을 넣으면 2시 40분 이후에는 진입을 하지 않지만, 문제는 2시 40분 전에 걸렸던 셋스탑트레일링이 있으면, 다음날 시가에 또 다시 '오름'이나 '내림'으로 진입을 해버립니다. 아래는 에스스탁에서 보내주신 식입니다. if stime < 144000 and MarketPosition == 0 and IsExitName("StopTrailing", 1) and Trcount <= 1 Then{ Buy("오름", AtStop, ExitPrice(1)+0.4); Sell("내림", AtStop, ExitPrice(1)-0.4); } 청산식을 SetStopEndofday(144000);을 넣었는데도 완전한 청산이 안됩니다. 뭐가 문제인지 답변 부탁드리겠습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-11-04 11:47:21

안녕하세요 예스스탁입니다. 분봉의 첫봉의 시가에 신호가 발생하는 것은 atstop의 특성때문입니다. atstop은 if문이 만족하고 다음봉 시세를 감시하는 구조이므로 만약 당일 마지막봉에서 if조건이 만족하고(stime > 92000이라는 조건은 마지막봉도 조건이 만족합니다.) 다음날 첫봉의 시가나 혹은 첫봉의 가격중 만족하는 값이 있으면 신호가 발생합니다. 그러므로 다음날에 신호가 발생하므로 SetStopEndofday(144000);에 해당되지 않습니다. SetStopEndofday(144000);은 당일 포지션이 있으면 해당시간에 청산하고 당일에 신호가 발생하는 것을 막으므로 다음날 첫봉에 신호가 발생하는 것은 해당사항이 아닙니다. 기존에 작성해 드린 식과 같이 if stime < 144000 and MarketPosition == 0 and IsExitName("StopTrailing", 1) and Trcount <= 1 Then{ Buy("오름", AtStop, ExitPrice(1)+0.4); Sell("내림", AtStop, ExitPrice(1)-0.4); } 오름과 내림이라는 신호는 stime < 144000조건을 주시면 더이상 신호가 발생하지 않습니다.( stime > 144000로 하시면 신호가 발생합니다.) stime < 144000을 추가했는데도 다음날 첫봉에 신호가 발생하신 다면 신호의 명칭을 확인하시고 해당 신호의 제어문에 stime < 144000을 추가해주시면 됩니다. 즐거운 하루되세요 > 빠샤 님이 쓴 글입니다. > 제목 : 12428 셋스탑 트레일링 관련 > 보내주신 식 다시한번 감사드립니다.. 근데 문제가 해결이 안되서요 12428번 질문 관련 다시 문의드립니다. 제가 궁금한 것은 2차내지는 3차 수익후 셋스탑트레일링이 걸린 이후에 청산시간을 따로 14시 40분으로 맞춰놓았는데도 계속 다음날 9시 시가에 아래나 위로 진입을 해 버립니다. 시스템 식에다 stime>144000 을 넣었는데도 그러네요 제 시스템은 아침 9시 20분부터 들어가게 되어있는데, 시스템이 진입하자마자, 전날의 셋스탑트레일링 '오름'이나 '내림'이 먼저 들어가 버리네요..그리고 나서 시스템대로 움직입니다.그날 거래는 그날 오후 2시 40분으로 끝내고 싶은대도 말이죠. 144000 시간제한 식을 넣으면 2시 40분 이후에는 진입을 하지 않지만, 문제는 2시 40분 전에 걸렸던 셋스탑트레일링이 있으면, 다음날 시가에 또 다시 '오름'이나 '내림'으로 진입을 해버립니다. 아래는 에스스탁에서 보내주신 식입니다. if stime < 144000 and MarketPosition == 0 and IsExitName("StopTrailing", 1) and Trcount <= 1 Then{ Buy("오름", AtStop, ExitPrice(1)+0.4); Sell("내림", AtStop, ExitPrice(1)-0.4); } 청산식을 SetStopEndofday(144000);을 넣었는데도 완전한 청산이 안됩니다. 뭐가 문제인지 답변 부탁드리겠습니다.