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

자산평균을 이용한 리스크 조정

Hayman 2017.09.14 21:09 조회수  942 추천 5

안녕하십니까?

거의 두번째로 쓰는 글인듯 싶습니다.


아마 저를 비롯한 퀀트 투자를 하시는 분들 께서는

종목을 고르실때 기술적 분석을 안하실 것이라 생각합니다.


물론 저도 기술적 분석을 거의 안쓰는 사람중 하나긴 합니다만,

기술적 분석을 완전 등한시 하는건 아니고,

리스크 관리를 위해 이것을 사용합니다.


기술적 분석중에 '이동평균선' 이라는 지표가 있다는 것은

주식을 접하신 여러분 모두 한번쯤은 아실거라고 생각합니다.


주식 시세의 예측 지표(豫測指標).

예컨대, 주가(株價) 그 자체나, 주식의 총 매매량, 매매 대금 등의

과거의 평균적 수준과 현재의 움직임을 예측하고자 하는 경우의 지표.


구글에 검색을 해보니 이렇게 정의가 나옵니다.

여기서 과거의 평균적 수준과 현재의 움직임은 추세나 그런 것이라고도 이야기할 수 있겠습니다.


아무튼... 이것을 응용해서 짠 알고리즘을 올려봅니다.


종목 선정은 필터 부분을 참고하시면 될 듯 하고,


리스크 관리 구조의 경우에는,

매일매일 장기/중기/단기 자산평균을 구한 뒤,

장기 자산평균이 단기 자산평균보다 크고,

중기 자산평균이 단기 자산평균보다 큰 경우에는

전체 자금의 10%만 투자합니다.

(매일매일 체크해서 아닐때는 다시 원상복귀 됩니다.)


여기에 매달 초 가장 최근에 사용한 전략으로

포트폴리오를 리밸런싱합니다.

(10%전략이면 그 전략으로, 전체자금전략이면 그 전략으로)


테스트기간은 금융위기가 포함된 10년간이며,

결과값은 단순매매를 이겼습니다만,

필터 옵션이랑 단.중.장기 기간값에 따라서

언제든 달라질수 있음을 유의하며 읽어 주시면 대단히 감사하겠습니다.

댓글 2
좋은 글 로직 공유 감사합니다^^
코딩왕초보 2017.09.15 10:31
새로운 바스켓으로 위에 로직에 밑에 글 켈리법칙 손절로직 적용 좀 부탁드려도될까요??

       //현금비중 조절 로직 시작
    STOCK_WEIGHT = 0.99;
    var smallIndex   = IQIndex.getIndex('001');
    var monthValue5  = smallIndex.getClose(105);
    var monthValue4  = smallIndex.getClose(84);
    var monthValue3  = smallIndex.getClose(63);
    var monthValue2  = smallIndex.getClose(42);
    var monthValue1  = smallIndex.getClose(21);
    var currentValue = smallIndex.getClose(0);
    
    if ( currentValue/monthValue1 < 0.91 ||currentValue/monthValue2 < 0.89 || currentValue/monthValue3 < 0.87 || currentValue/monthValue4 < 0.85 || currentValue/monthValue5 < 0.83 ) { STOCK_WEIGHT = 0; }    

    logger.debug('STOCK_WEIGHT:' + STOCK_WEIGHT + ', Portfolio:' + modelPortfolio );
    var totalEquity = IQAccount.totalEquity();
    basket.setBudget(totalEquity * STOCK_WEIGHT);
    //현금비중 조절 로직 끝


코딩초보라 오류가 계속 뜨네요.. 부탁드리겠습니다 ㅠ
코딩왕초보 2017.09.16 11:57
댓글 등록을 위해서 로그인해주세요.
 
최신 게시글