1. Lära sig
  2. /
  3. Courses
  4. /
  5. R로 배우는 중급 포트폴리오 분석

Connected

exercise

제약 조건 추가

제약 조건은 add.constraint() 함수를 사용해 포트폴리오 명세 객체에 추가합니다. 추가된 각 제약 조건은 별도의 객체로 생성되어 포트폴리오 객체의 constraints 슬롯에 저장됩니다. 이렇게 하면 제약 조건이 모듈화되어 포트폴리오 객체에서 제약을 쉽게 추가·삭제·수정할 수 있어요. add.constraint()의 필수 인수는 제약을 추가할 portfolio, 제약의 type, 그리고 해당 제약 유형의 생성자에 ...로 전달되는 이름 있는 인수들입니다.

기본 제약 조건 유형:

  • 가중치 합에 대한 제약 지정
    • weight_sum, weight, leverage
    • full_investment는 min_sum = max_sum = 1로 설정하는 특수한 경우예요
    • dollar_neutral는 min_sum = max_sum = 0으로 설정하는 특수한 경우예요
  • 개별 자산 가중치에 대한 제약 지정
    • box
    • long_only는 min = 0, max = 1로 설정하는 특수한 경우예요
  • 그룹(섹터, 지역, 자산군 등)별 자산 가중치 합에 대한 제약 지정
    • group
  • 목표 평균 수익률에 대한 제약 지정
    • return

이번 연습에서는 더 자주 쓰이는 제약 조건 몇 가지를 추가해 보겠습니다. 위에 소개한 기본 제약 유형 외에도 PortfolioAnalytics는 보유 한도, 회전율, 분산 투자, 팩터 익스포저, 레버리지 익스포저 등의 제약도 지원합니다. 다른 제약 유형이 궁금하다면 해당 제약 생성자의 도움말을 살펴보세요. 도움말에는 제약 유형 설명과 예제 코드가 포함되어 있어요.

Instruktioner

100 XP
  • weight_sum 제약을 추가해 가중치 합의 최소값과 최대값이 모두 1이 되도록 하세요.
  • box 제약을 추가해 처음 5개 자산의 최소 가중치를 10%, 나머지 자산의 최소 가중치를 5%로 설정하세요. 모든 자산의 최대 가중치는 40%로 설정하세요.
  • group 제약을 추가해 자산 1, 5, 7, 9, 10, 11을 첫 번째 그룹으로, 자산 2, 3, 4, 6, 8, 12를 두 번째 그룹으로 지정하세요. 각 그룹의 최소 가중치는 40%, 최대 가중치는 60%로 설정하세요.