1. Learn
  2. /
  3. Courses
  4. /
  5. R로 배우는 포트폴리오 분석 입문

Connected

Exercise

목표 수익률 그리드를 사용해 효율적 프런티어 계산하기

앞에서 보셨듯이, 효율적 프런티어를 계산하는 한 가지 방법은 먼저 목표 수익률의 그리드를 정의한 다음, 각 목표 수익률에 대해 기대수익률이 그 목표와 같으면서 분산이 최소가 되도록 하는 포트폴리오를 찾는 것입니다.

그렇다면 합리적인 목표 수익률 그리드는 무엇일까요? 최대 목표 수익률은 개별 주식의 평균 수익률 중 최댓값으로 설정하겠습니다. 이상적으로는 최소 목표 수익률을 최소분산 포트폴리오의 수익률로 잡아야 합니다. 하지만 아직 최소분산 포트폴리오의 수익률을 모르므로, 우선 모든 주식의 평균 수익률 중 최소값을 사용해 그리드를 만들겠습니다.

이 연습 문제에서는 for 반복문을 사용해 가능한 포트폴리오의 평균, 표준편차, 그리고 가중치 그리드를 계산해 보겠습니다.

Instructions

100 XP
  • returns의 열 평균(colMeans())을 계산해 stockmu라고 하세요.
  • 길이가 50이고 시작은 무위험이자율 1%, 끝은 stockmu의 최댓값인 수열(seq())을 만들어 grid라고 하세요.
  • rep()를 사용해 grid와 같은 길이의 빈 벡터 두 개를 초기화하고, 포트폴리오의 평균과 표준편차를 저장하세요. 각각 vpm과 vpsd라고 하세요.
  • 50행 30열의 빈 행렬을 초기화하고 mweights라고 하세요. matrix() 함수를 사용할 수 있어요.
  • for 반복문을 생성해 grid의 첫 번째 값부터 마지막 값까지 순회하세요. 각 반복에서 returns와 목표 수익률 grid를 사용해 opt라는 포트폴리오를 만드세요.
  • 각 반복에서 opt의 값을 사용해 벡터 vpm($pm), vpsd($ps)를 각각 채우세요.
  • 포트폴리오 가중치($pw)는 mweights에 행 단위로 저장하세요.