시작하기무료로 시작하기

개선된 추정치가 더 나은 성과로 이어질까요?

분산-공분산 행렬의 견고한(robust) 추정치를 사용하면 표본 분산-공분산 행렬보다 더 나은 성과를 낼 것이라고 가정해 봅시다. 이론적으로는 더 좋은 추정치가 더 좋은 결과로 이어져야 해요. 3장에서 정의한 moments_robust() 함수와 이전 연습 문제의 포트폴리오 사양을 사용하겠습니다.

이 연습은 강의의 일부입니다

R로 배우는 중급 포트폴리오 분석

강의 보기

연습 안내

  • moments_robust() 함수를 사용해 모멘트를 추정하도록 최적화를 실행하세요. 백테스트는 이전과 동일한 매개변수를 사용하며, 분기별 리밸런싱과 학습 기간 및 롤링 윈도로 5년치 데이터를 사용합니다. 결과를 opt_rebal_rb_robust라는 변수에 할당하세요.
  • 가중치를 차트로 시각화하세요.
  • 리스크에 대한 구성요소 백분율 기여도를 차트로 시각화하세요.
  • Return.portfolio()를 사용해 포트폴리오 수익률을 계산하세요. 수익률을 returns_rb_robust라는 변수에 할당하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Run the optimization
opt_rebal_rb_robust <- optimize.portfolio.rebalancing(R = ___, 
                                                      momentFUN = ___,
                                                      portfolio = ___, 
                                                      optimize_method = "random", rp = rp,
                                                      trace = TRUE,
                                                      rebalance_on = ___, 
                                                      training_period = ___,
                                                      rolling_window = ___)

# Chart the weights


# Chart the percentage contribution to risk
chart.RiskBudget(___, match.col = "StdDev", risk.type = ___)

# Compute the portfolio returns
returns_rb_robust <- Return.portfolio(R = ___, weights = ___)
colnames(returns_rb_robust) <- "rb_robust"
코드 편집 및 실행