커뮤니티

수식 실현 여부 및 수정 요청

프로필 이미지
회원
2015-03-17 23:15:49
146
글번호 84145
답변완료

첨부 이미지

EuroFX 일봉으로 시스템식을 작성하였습니다. 전일까지 봉으로 추세 변환 지점 m을 계산한 후 아래와 같이 주문식과 청산식을 작성하면 첨부화일1처럼 시뮬레이션이 됩니다. 이러한 주문이 실제 실시간 거래시 시뮬레이션과 같이 실현될 수 있는건지 궁금합니다.(슬리피지문제를 여쭈어보는건 아닙니다.) 실제 거래와 차이가 날 수 있는 논리적 오류가 있다면 설명 부탁드리겠습니다. //진입 buy("position_buy",Atstop,m,def); sell("position_sell",Atstop,m,def); //청산 If MarketPosition == 1 then exitlong("buy_exit",Atstop,m,"",def); If MarketPosition == -1 then exitshort("sell_exit",Atstop,m,"",def); 구현하고자 했던것은 매일 추세전환 지점 m이 계산되고 매수 포지션인데 차트가가 m을 하향돌파시 청산하고 m에 다시 매도 포지션으로 바꾸고 반대로 매도 포지션인데 차트가가 m을 상향돌파시 청산하고 m에 다시 매수 포지션으로 바꾸고자 하는 것이었습니다. 잘못 구현된 것이라면 수정 부탁드리겠습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-03-18 11:46:25

안녕하세요 예스스탁입니다. 작성하신 식은 m이상의 시세가 발생하면 매수 m이하의 시세가 발생하면 매도이며 같은 봉에서 매수와 매도신호가 동시에 나올수도 있는 식입니다. atstop이나 atlimit으로 하나의 봉에서 매수와 매도가 모두 나올수 있는 구조에서는 신호가 실제와 발생순서가 반대일수가 있습니다. 차트의 과거봉은 봉안에 모든틱이 있지 않고 시고저종의 값만 있습니다. 그러므로 봉의 시가에서 종가로 어떻게 움직였는지 알수 없으므로 과거봉에 대한 움직임에 대해 가설을 만들고 해당 가설에 따라 봉이 움직인것으로 보고 신호가 발생하게 됩니다. https://www.yesstock.com/YesTrader/YesLanguage/YesLanguage_help/4_7.htm 원래는 시가에서 상승해서 먼저 m이상의 시세가 발생해 매수를 했고 나중에 가격이 하락해 m이하의 시세가 발생해서 매도로 스위칭 되었는데 시뮬레이션 상에서는 봉이 저가로 먼저 움직인것으로 판단해 그 반대로 신호가 발생하는 부분도 일부 생길수 있습니다. 만약 종가로만 판단해서 아래와 같이 식을 작성하시면 시뮬레이션과 실제와 차이는 없습니다. if crossup(c,m) Then buy(); if CrossDown(c,m) Then sell(); 혹은 아래와 같으 하나의 봉에서는 한쪽 신호만 발생하게 하시면 또한 해당 차이는 없습니다. if MarketPosition <= 0 Then buy("position_buy",Atstop,m); if MarketPosition >= 0 Then sell("position_sell",Atstop,m); 즐거운 하루되세요 > EG_tyty506 님이 쓴 글입니다. > 제목 : 수식 실현 여부 및 수정 요청 > EuroFX 일봉으로 시스템식을 작성하였습니다. 전일까지 봉으로 추세 변환 지점 m을 계산한 후 아래와 같이 주문식과 청산식을 작성하면 첨부화일1처럼 시뮬레이션이 됩니다. 이러한 주문이 실제 실시간 거래시 시뮬레이션과 같이 실현될 수 있는건지 궁금합니다.(슬리피지문제를 여쭈어보는건 아닙니다.) 실제 거래와 차이가 날 수 있는 논리적 오류가 있다면 설명 부탁드리겠습니다. //진입 buy("position_buy",Atstop,m,def); sell("position_sell",Atstop,m,def); //청산 If MarketPosition == 1 then exitlong("buy_exit",Atstop,m,"",def); If MarketPosition == -1 then exitshort("sell_exit",Atstop,m,"",def); 구현하고자 했던것은 매일 추세전환 지점 m이 계산되고 매수 포지션인데 차트가가 m을 하향돌파시 청산하고 m에 다시 매도 포지션으로 바꾸고 반대로 매도 포지션인데 차트가가 m을 상향돌파시 청산하고 m에 다시 매수 포지션으로 바꾸고자 하는 것이었습니다. 잘못 구현된 것이라면 수정 부탁드리겠습니다.