커뮤니티

ts추적청산 관련 수식 문의드립니다.

프로필 이미지
아수라발발타
2020-01-11 23:28:23
273
글번호 135075
답변완료
매수 후 최고점 대비 몇%하락시 추적청산으로 청산하려고하는데 제가 수식을 잘못 적용해서 그런지 당일 고점대비로 계산이 되나봅니다. 예를들어 매수 후 10000원이 당일 최고점이라면 3% 하락시 매도를 하고 싶은데 당일 청산이 되지않으면 다음날이고 다다음날이고 최고점 10000원의 -3% 수준인 9700원에서 매도가 되어야 하는데 다음날이 되면 당일 최고점대비 -3%로 적용되고 다다음날에도 그날의 고점대비 -3%로 적용되니 제가 원하는 10000원 찍은 고점대비 추적청산이 되지않고있습니다. 제가 만들어본 수식은 다음과같습니다. 수정 부탁드립니다. if MarketPosition == 0 and 조건~~~ Then buy("b",AtStop,DayHigh(0)); if MarketPosition == 1 Then ExitLong("bx",AtStop,DayHigh(0)*0.97); 더욱 이상한건 어떤 종목에는 다음날이든 다다음날이든 매수 이후 갱신한 최고점대비 3%하락시 매도가 정상적으로 나가는데 어떤 종목은 계속 그날의 최고점대비로 계산되곤합니다.. 잘부탁드리겠습니다.
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-01-13 11:38:35

안녕하세요 예스스탁입니다. if MarketPosition == 1 Then ExitLong("bx",AtStop,DayHigh(0)*0.97); atstop은 봉완성시에 지정한 가격을 셋팅하고 다음봉에서 지정한 가격 이하의 시세가 발생하면 청산하게 됩니다. 차트가 일봉이면 최근 완성봉이 전일이므로 당일 전일의 최고가에서 3% 하락청산하게 되고 차트가 분봉이면 최근 완성봉이 당일봉이므로 당일최고가가 됩니다. 진입일의 최고가를 고정해서 사용하고자 하시면 아래식과 같이 수정하시면 됩니다. if MarketPosition == 1 Then { if sdate == EntryDate Then var1 = DayHigh(0); ExitLong("bx",AtStop,var1*0.97); } 매수 이후의 최고가에서 3% 하락시 청산하고자 하시면 아래와 같이 작성하시면 됩니다. if MarketPosition == 1 Then { ExitLong("bx",AtStop,highest(H,BarsSinceEntry)*0.97); } 즐거운 하루되세요 > 아수라발발타 님이 쓴 글입니다. > 제목 : ts추적청산 관련 수식 문의드립니다. > 매수 후 최고점 대비 몇%하락시 추적청산으로 청산하려고하는데 제가 수식을 잘못 적용해서 그런지 당일 고점대비로 계산이 되나봅니다. 예를들어 매수 후 10000원이 당일 최고점이라면 3% 하락시 매도를 하고 싶은데 당일 청산이 되지않으면 다음날이고 다다음날이고 최고점 10000원의 -3% 수준인 9700원에서 매도가 되어야 하는데 다음날이 되면 당일 최고점대비 -3%로 적용되고 다다음날에도 그날의 고점대비 -3%로 적용되니 제가 원하는 10000원 찍은 고점대비 추적청산이 되지않고있습니다. 제가 만들어본 수식은 다음과같습니다. 수정 부탁드립니다. if MarketPosition == 0 and 조건~~~ Then buy("b",AtStop,DayHigh(0)); if MarketPosition == 1 Then ExitLong("bx",AtStop,DayHigh(0)*0.97); 더욱 이상한건 어떤 종목에는 다음날이든 다다음날이든 매수 이후 갱신한 최고점대비 3%하락시 매도가 정상적으로 나가는데 어떤 종목은 계속 그날의 최고점대비로 계산되곤합니다.. 잘부탁드리겠습니다.