커뮤니티
내가 만든 전략들과 지식을 공유하고 토론합니다.

아래 전략의 시총 10분위 테스트 및 기타 테스트

Prophit 2017.06.05 08:29 조회수  1162 추천 1

쭌쓰님께서 요청하신

아래 전략의 시총 10분위 및 대형주, 코스피 한정 테스트 결과입니다



코스피 테스트 (코스피 200 코드가 안먹혀서 일단 코스피로 테스트 했습니다

※안먹힌 코드 => if ( stock.capLevel != 8 ) {return false;}





대형주 테스트

역시 capLevel 코드가 안먹혀서 그냥 시총 상위 20% 대상으로 테스트했습니다





마지막으로 시총 10분위 테스트


1. 팩터 5개 랭킹 정렬

2. 시총 10분위로 분리 (1분위 소형, 10분위 대형)

3. 분위별 상위 20종목 추출해 포트구성

4. 포트 내에서 1년 모멘텀 음수종목 제외 (3종목 미만시 현금보유)


결과.

1~5분위까지는 전체적으로 무난히 단계형성이 되는거 같은데

6,7,9 분위가 조금 튀네요

이런 경우엔 전략의 신뢰도가 떨어지는 건가요?




댓글 4
글쎄요.오분위 테스트로 단계형성 됐다면 십분위는 세분화 한 것이므로 경향만 받아들이고 세부 수치는 참조하는것도 투자공학입장에서는 맞지 않나 싶습니다.
제게는 참 어려운 일을 해주셔서 감사드립니다.블로그에도 글 남겨봤습니다.
쭌쓰 2017.06.05 16:29
stock.capLevel != 8 이 안먹힌 이유는 비트연산 이라서 그렇습니다. 코스피 200 종목을 제외하려면 stock.capLevel >= 8 로 하시면 됩니다. 조금 어렵게 만들어졌네요. 죄송합니다.
박용기 2017.06.07 14:41
비트연산 항목은 그런식으로 활용하는 거였군요.  감사합니다
다른종목을 제외시키고 코스피 200으로 유니버스를 제한하려면  필터에
if (stock.capLevel == 8) {return true;} 나
if (stock.capLevel < 8) {return false;} 를 추가하면 되나요?
Prophit 2017.06.07 16:15
비트연산자 & 를 활용하면 원하는 속성만 발라내어 따져 볼 수 있을 것 같은데요... 다음과 같이...
if (stock.capLevel & 8 == 0) { return false; }  // kospi200 종목이 아니면 false 리턴
if (stock.capLevel & 1) { return true; }  // 대형주인 경우에만 true 리턴
if (stock.capLevel & 4) { return true; } // 소형주인 경우에만 true 리턴
Joseph 2017.06.08 00:17
댓글 등록을 위해서 로그인해주세요.
 
최신 게시글