커뮤니티

과최적화의 궁금점

프로필 이미지
몽고메리
2018-08-25 16:56:36
550
글번호 213801
답변완료
안녕하세요 제가 여러개 수식을 묶어서 최적화 해보면, 승률이 높게 나오고 성능보고서도 80% 이상승률로 아주 좋게 나오는데, 그래서 막상 실전에 사용하면 손실이 말도 못하게 나오도군요. 진입조건에 여러가지 필터를 사용해서 과최적화 된 탓일까요? 과최적화의 기준점은 무엇이며, 과최적화의 시물레이션의 결과는 거짓인지, 그리고 과최적화의 구분법은 어떻게 알수 있는건가요?
Next증권 YesTrader (Next증권)
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2018-08-27 17:30:25

안녕하세요? 예스스탁입니다. 2가지 과정으로 나누어서 검토해 보셔야 할것 같습니다. 시뮬레이션과 실제 매매에서 차이가 나는 부분이 있는데 이 부분 때문에 발생하는 문제인지 아니면, 시뮬레이션과 실제 매매의 차이는 없는데, 과거에는 성과가 좋게 나오지만, 실전 매매에 들어가면 성과가 낮게 나오는 것인지 확인을 해보셔야 할것 같습니다. 과거데이터로 시뮬레이션을 할때 시뮬레이션 데이터는 실제 매매 상황을 100% 반영하지 못하기 때문에 '봉움직임의 가설'을 이용해서 시뮬레이션이 진행됩니다. 이 때문에 강제청산 항목중 '최대수익대비하락'과 같은 설정을 이용하실 경우 설정한 값이 아주 작은 값을 사용할 경우 시뮬레이션과 실제 매매에 오차가 많이 생길 수 있습니다. 이외에, 수수료나 슬리피지가 적절히 반영되었는지도 확인해 보셔야 할것 같습니다. 만일, 위와 같은 시뮬레이션과 실제매매의 차이가 거의 없고, 단순히 전략을 테스트한 것과 이후 실제매매를 가동했을 때의 성과 차이가 많이 나는 경우라면 과최적화나 시장의 특성이 변화된 것이 아닌지 확인해 보셔야 할 것 같습니다.(실제 매매한 기간 동안의 실매매 성과와 이 기간 동안의 시뮬레이션 성과(시스템 리포트상의)를 서로 비교해 보시기 바랍니다. 성과가 유사하게 나온다면 위에 말씀드린 시뮬레이션과 실매매의 괴리 상황은 아니라고 보실 수 있을것 같습니다. 과최적화는 사실 어떤 기준점을 명확히 말씀드리기는 어려운데, 일반적인 기준으로 말씀드리겠습니다. 일반적으로 과최적화를 방지하기 위해 사용하는 방법은 1. 전진분석 2. 다른 시간주기 테스트 3. 전략을 단순하게 작성 4. 변수갯수 최소화 정도 입니다. 이 중 1번의 전진분석이 중요하다고 생각합니다. 전략을 개발하실 때 대부분 최근 데이터까지 포함해서 전략을 테스트하는데, 최근 2년 정도의 데이터는 제외하고 테스트를 완료하여 변수를 확정한 후 그 변수를 그대로 적용하여 최근 2년의 성과가 그이전 과거의 성과와 유사하게 나오는지 테스트하는 방법입니다. 만일 성과가 과거에 비해 절반 이하로 떨어진다면 과최적화를 의심해 볼 수 있을것 같습니다. 그리고 5분봉으로 전략을 개발하셨다고 가정했을때 유사한 시간 주기인 4분이나 6분 7분으로도 성과를 확인해 보시는 것이 좋습니다. 시장이 약간 바뀌었다고 가정하는 경우인데, 이때 성과가 절반 수준이나 그 이하로 떨어진다면 이 역시 과최적화를 의심해 볼 수 있습니다. 감사합니다. > 몽고메리 님이 쓴 글입니다. > 제목 : 과최적화의 궁금점 > 안녕하세요 제가 여러개 수식을 묶어서 최적화 해보면, 승률이 높게 나오고 성능보고서도 80% 이상승률로 아주 좋게 나오는데, 그래서 막상 실전에 사용하면 손실이 말도 못하게 나오도군요. 진입조건에 여러가지 필터를 사용해서 과최적화 된 탓일까요? 과최적화의 기준점은 무엇이며, 과최적화의 시물레이션의 결과는 거짓인지, 그리고 과최적화의 구분법은 어떻게 알수 있는건가요?
프로필 이미지

흰둥이아빠

2018-08-28 10:56:40

저도 그러한 경험이 있었습니다. 우선 모의투자를 통해서 검증을 해보시길 권해드립니다. 정산이 되어 차트를 다시 보게되면, 그렇지 않더라도 차트를 재조회하게 되면 모의투자에서 발생했던 신호가 달라지지 않았는지 확인해보셔야 할 것 같습니다. 모의투자에서 손실이 전략차트에서 보통 수익으로 바뀌지 않았는지 비교 및 대조를 해보시길 바랍니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 과최적화의 궁금점 > 안녕하세요? 예스스탁입니다. 2가지 과정으로 나누어서 검토해 보셔야 할것 같습니다. 시뮬레이션과 실제 매매에서 차이가 나는 부분이 있는데 이 부분 때문에 발생하는 문제인지 아니면, 시뮬레이션과 실제 매매의 차이는 없는데, 과거에는 성과가 좋게 나오지만, 실전 매매에 들어가면 성과가 낮게 나오는 것인지 확인을 해보셔야 할것 같습니다. 과거데이터로 시뮬레이션을 할때 시뮬레이션 데이터는 실제 매매 상황을 100% 반영하지 못하기 때문에 '봉움직임의 가설'을 이용해서 시뮬레이션이 진행됩니다. 이 때문에 강제청산 항목중 '최대수익대비하락'과 같은 설정을 이용하실 경우 설정한 값이 아주 작은 값을 사용할 경우 시뮬레이션과 실제 매매에 오차가 많이 생길 수 있습니다. 이외에, 수수료나 슬리피지가 적절히 반영되었는지도 확인해 보셔야 할것 같습니다. 만일, 위와 같은 시뮬레이션과 실제매매의 차이가 거의 없고, 단순히 전략을 테스트한 것과 이후 실제매매를 가동했을 때의 성과 차이가 많이 나는 경우라면 과최적화나 시장의 특성이 변화된 것이 아닌지 확인해 보셔야 할 것 같습니다.(실제 매매한 기간 동안의 실매매 성과와 이 기간 동안의 시뮬레이션 성과(시스템 리포트상의)를 서로 비교해 보시기 바랍니다. 성과가 유사하게 나온다면 위에 말씀드린 시뮬레이션과 실매매의 괴리 상황은 아니라고 보실 수 있을것 같습니다. 과최적화는 사실 어떤 기준점을 명확히 말씀드리기는 어려운데, 일반적인 기준으로 말씀드리겠습니다. 일반적으로 과최적화를 방지하기 위해 사용하는 방법은 1. 전진분석 2. 다른 시간주기 테스트 3. 전략을 단순하게 작성 4. 변수갯수 최소화 정도 입니다. 이 중 1번의 전진분석이 중요하다고 생각합니다. 전략을 개발하실 때 대부분 최근 데이터까지 포함해서 전략을 테스트하는데, 최근 2년 정도의 데이터는 제외하고 테스트를 완료하여 변수를 확정한 후 그 변수를 그대로 적용하여 최근 2년의 성과가 그이전 과거의 성과와 유사하게 나오는지 테스트하는 방법입니다. 만일 성과가 과거에 비해 절반 이하로 떨어진다면 과최적화를 의심해 볼 수 있을것 같습니다. 그리고 5분봉으로 전략을 개발하셨다고 가정했을때 유사한 시간 주기인 4분이나 6분 7분으로도 성과를 확인해 보시는 것이 좋습니다. 시장이 약간 바뀌었다고 가정하는 경우인데, 이때 성과가 절반 수준이나 그 이하로 떨어진다면 이 역시 과최적화를 의심해 볼 수 있습니다. 감사합니다. > 몽고메리 님이 쓴 글입니다. > 제목 : 과최적화의 궁금점 > 안녕하세요 제가 여러개 수식을 묶어서 최적화 해보면, 승률이 높게 나오고 성능보고서도 80% 이상승률로 아주 좋게 나오는데, 그래서 막상 실전에 사용하면 손실이 말도 못하게 나오도군요. 진입조건에 여러가지 필터를 사용해서 과최적화 된 탓일까요? 과최적화의 기준점은 무엇이며, 과최적화의 시물레이션의 결과는 거짓인지, 그리고 과최적화의 구분법은 어떻게 알수 있는건가요?