금융공학

포트폴리오 최적화 - MVO

경희대생 2023. 7. 13. 02:34

MVO 최적화 Matrix

 

 

MVO Portfolio Optimization

 

 

Portfolio Optimization 경우 크게 3가지방법이 있다. 먼저는 주어진 리턴제약하에 risk (variance or ½ variance ) 목적함수로 두고 최소화 optimization 하는 경우, 두번째는 주어진 리스크제약하에 포트폴리오 리턴을 목적함수로 두고 최대화하는 optimization, 마지막으로 목적함수에 리턴과 리스크를 모두 반영하여 진행하는 risk-adjusted return 최대화 최적화가 있다. 리스크에 리턴을 반영한 최대화 최적화 방법의 경우, 포트폴리오 분산에 risk-aversion coefficient 곱해주거나 포트폴리오 기대수익률에 risk-seeking coefficient 곱해주게 되며 coefficient 조절함으로써 위험과 리턴에 노출되는 정도를 결정하게 된다. 리스크 최소화 최적화와 risk-adjusted return 최대화 최적화의 경우 제약식을 1차로 가져가기 때문에, 제약식이 2차인 리턴 최대화 최적화 문제보다 간단한 문제가 된다. 3가지 방법 어떤 방법을 사용하던, 보통 최적화 포트폴리오 비중은 Efficient Portfolios 곡선들 하나에서 결정되게 된다.

 

 

GMVP 구하기 위해서는 Minimize Risk Optimization 문제에서 제약식에 return 제약을 빼주게 되면 모든 Efficient Portfolios 중에 최소분산 포트폴리오 비중을 구할 있다. 보통 Efficient Portfolios 구하기 위해 GMVP 먼저 찾고 GMVP 보다 위의 수익률들을 조금씩 증가시키며 효율적 포트폴리오들을 찾아주게 되며, 효율적 포트폴리오들을 이은 곡선이 효율적 포트폴리오선이 된다.

 

 

Convexity

 

MVO의 경우 목적함수와 제약식 모두 Convex function임을 이용하게 된다. 

 

 

Convex function이란 임의의 변수 x1, x2 함수위의 두점 f(x1), f(x2) 지나는 segment 라인을 그었을 x1, x2 사이에서 함수의 값들이 segement 라인 위에 있을 없는 function 의미한다. 어떤 function convex하다면, 임의의 한점에서 function 접선을 그렸을 , 모든 임의의 변수에서 접선위로 function 존재하게되며, function 2 미분값이 PSD 성립하게 된다. 2차미분값이 PSD 성립한다는 Convex 특징은 Portfolio Optimization 진행할 사용되는 특징이며 포트폴리오 분산의 Hessian Matrix 공분산이 항상 PSD 성립하기 때문에 Portfolio Optimization 경우 항상 Convex Problem 되게 된다. conve 최적화가 중요한 이유는, 최적화문제가 convex인경우 최적화로 구한 해는 무조건 global minimum 되기 때문이다.

 

Lagrange Dual Function

 

 

MVO 연립방정식 형태로 풀기위해 라그랑지안 함수를 사용하게 된다. 라그랑지안 함수의 경우 일정제약하 극대, 극소 문제를 쓰는 테크닉으로 목적함수에 라그랑지안 multiplier 제약식들을 더해줌으로써 함수를 만들게 된다. 가령 제약이 없이 convex 목적함수만 존재할 시에는 목적함수의 1, 2 미분값들을 사용하여 단순히 최적화를 진행할 있겠지만, 제약식이 있는 경우에는 제약식들과 목적함수를 하나의 식으로 나타내주는 라그랑지안 함수를 만들고 함수의 편미분값들을 활용하여 연립방정식으로 최적해를 찾아내야 하는 것이다.

 

 

라그랑지안 듀얼함수에서 람다는 반드시 0보다 크거나 같아야 하는데, 이는 람다 (inequality 앞에 붙는 라그랑지안 멀티플라이어) 음수이면,   무한히 커져도 되기 때문이다.

 

라그랑지안 함수를 푸는 방법으로는 라그랑지안 듀얼 함수를 사용하며, 라그랑지안 듀얼 함수는 라그랑지안의 최솟값을 구하는 함수이며optimal value lower boundary 찾아주게 된다. 라그랑지안 듀얼 함수는 라그랑지안을 최소로 만드는 x* (포트폴리오 최적화 문제에서는 최적 포트폴리오 비중) 구하는 식으로 1차식들의 합으로 이루어진 목적함수를 최소화함으로써 concave 함수가 된다. 이렇게 concave 라그랑지안 듀얼함수의 최댓값을 구하는 문제가 라그랑지안 dual problem이라고 부른다. 라그랑지안 dual problem으로 나온 라그랑지안 듀얼 함수의 최댓값 (d*) 본래 최적화 목적식의 optimal value (p*)보다 작거나 같게 된다. 여기서 p* - d* optimal daulity gap이라고 부르며, optimal daulity gapstrong dauality 만족할  0 된다. strong daulity 1) 최적화문제의 목적식과 제약식 모두가 convex하고 2) slater’s condition (, 최적화문제의 inequality 제약식에서 함수의 값이 0보다 작은경우가 하나라도 있는 경우) 성립할  성립한다.

 

 

strong daulity 성립할 , kkt conditions 성립하게 된다. kkt conditions이란 strong duality 정의를 활용하여 식을 정리하다보면 몇가지 추가조건을 찾게됨으로써 나오는 condition들로 conditions 연립방정식으로 풀어내면 포트폴리오 최적화문제의 최적해가 나오게 된다. 먼저 dual function 증명하는 과정을 보면, 라그랑지안 식을 만들어주면 상수값과 x 대한 값들로 나누어지게 된다. 라그랑지안 듀얼 함수를 구하기 위해 라그랑지안에 x 대한 infimum 진행하게 되면, 상수값들은 x 대한 값이 아니기 때문에 여전히 상수로 infimum 밖으로 나올 있고, 오직 x에대한 값들만이 infimum 문제에 해당한다. 여기서, infimum값을 구하기 위해  x 대한 식들이 0인경우와 0 아닌경우로 나뉘게 되는데, x 대한 식들의 합이 0인경우 daul function 값은 상수값이 되고, x 대한 식들의 합이 0 아닌경우, dual function 값은 마이너스 무한대 값을 가질 있게 된다. daul problem 경우 dual function maximize하는 값을 찾아내는 것이기 때문에, x 대한 식들의 합이 0 되어야 한다. 그렇게 나온 dual problem 최적값을 d* 두고, dual problem 통해 도출된 최적 x* 목적함수에 넣어서 나오는 optimal value p*라고 하자. 이때, weak daulity(slater’s condition is not hold) 경우 d*  p*, strong daulity (slater’s condition is hold) 경우 d* = p* 된다.

 

strong daulity 만족할 strong duality 정의를 활용하여 식을 정리하다 보면 두가지 추가조건을 구할수 있게 된다.  strong duality 만족할시, p* d* 같은 값을 갖는다. 여기서

 

되며, 식의 관계들에서 두가지 조건이 나오게 된다. 첫번째는 라그랑지안 함수에 최적해를 넣었을 , ineqaulity 제약식에 해당했던 라그랑지안 multiplier ineqaulity 제약식 함수의 곱이 0이어야 한다라는 조건 ( *  ) 이다 (라그랑지안 multiplier 제약식 함수 최소 하나는 0 되어야 한다). 두번째 조건은 라그랑지안 함수를 x 미분한 값이 0 되어야 한다이다. 이렇게 최종적으로 원래 있던 3가지 조건 ( 에서 위의 2가지 조건을 합하여 5가지 조건을 갖는 kkt condition 완성된다. 

 

 

 

kkt 통해 portfolio optimization 해보자. 목적함수가 ½ 포트폴리오 분산을 최소화하는 최적화 문제를 보면, 포트폴리오 기대수익률에 대한 제약식이 없고 비중합이 1이라는 제약식만 있는 경우, kkt condition 보면 n개의 w 변수와 1개의 추가변수가 있고, n+1개의 kkt condition 있기때문에 연립방정식 혹은 행렬의 연산으로 n개의 w 나머지 1개의 추가변수까지 구할 있게 된다. 그렇게 구해진 포트폴리오 최적비중은 GMVP 비중이 된다. 여기서 포트폴리오 기대수익률이 특정값과 같다는 equality 제약식을 추가하게 되면, n+2개의 변수와 n+2개의 condition 연립하여 최적해를 구할 있으며, 그렇게 구해진 포트폴리오 최적비중은 마켓포트폴리오와 GMVP 비중합으로 나타낼 있다. Two-Fund Theorem 의하여 효율적 투자선위의 포트폴리오로 효율적 투자선위의 다른 모든 포트폴리오를 만들수 있는데, 구해진 포트폴리오 최적비중이 마켓포트폴리오와 GMVP 비중합을 통해 만들어진 포트폴리오이며 Two-Fund Theorem 만족한다.

기대수익률에 대한 equality 제약식 대신 inequality 추가된 제약식이 주어진다면, kkt condition n+4개로 주어져 복잡하다. 이에 기대수익률이 특정수익률값을 가질 때와 특정수익률을 초과할때를 나누어 비중을 구하게 된다. 먼저 포트폴리오 기대수익률이 특정기대수익률 초과인 경우, 특정기대수익률이 GMVP 아래에 있으면 최적비중이 GMVP 나오고 위에 있으면 최적비중이 존재하지 않기 때문에 최종적으로 GMVP 최적비중이 된다. 기대수익률이 특정기대수익률과 같다는 제약식의 경우 앞서 언급했듯이 n+2개의 변수와 n+2개의 condition 연립하여 최적해를 구할 있으며, 그렇게 구해진 포트폴리오 최적비중은 마켓포트폴리오와 GMVP 비중합으로 나타낼 있다 (Two-Fund Theorem). 최종적으로 GMVP 이하의 기대수익률 제약조건이 있는경우 GMVP 최적비중이되고, GMVP 위의 제약조건인 경우 마켓포트폴리오와 GMVP 비중합이 최적비중이 된다.

 

마켓포트폴리오를 들여다보면 Risky 자산으로만 구성된 Portfolio risk-free asset 더해지게 되고, risk-free asset 접하는 Efficient Portfolio 마켓포트폴리오가 된다 (One-Fund Theorem) CML 위의 포트폴리오를 보면 risk-free asset 마켓포트폴리오의 비중합이 최적비중이 된다. 실제 kkt condition으로 최적비중을 구해보면, risk-free asset 비중과 마켓포트폴리오 비중의 합이 되며, 이는 risky assets들은 모두 마켓포트폴리오와 동일한 w값들의 비중으로 투자되고, 이에 risk-free asset 추가되는 형태임을 있다.

 

[샤프지수]

Sharpe Ratio 최적화를 진행할 , 최적 포트폴리오는 마켓포트폴리오가 된다.  이는 당연히 위험(수익률 표준편차)대비 포트폴리오 초과 기대수익률이 최대가 되는 포트폴리오이기 때문에 risk-free asset efficient portfolio 연결한 직선의 기울기가 되고, 기울기는 CML에서 최대 기울기를 갖기 때문에 마켓포트폴리오가 최적의 자산비중이 되는 것이다.

 

Sharpe Ratio 경우,  마이너스 값을 갖는 경우 직관적이지 않다. 마이너스 샤프지수의 경우 경우에 따라 마이너스 ( 작은 샤프지수) 좋은 성과를 나타내는 경우가 있다. 가령 risk-free rate expected return보다 크고, 개의 같은 expected return 가지는 주식이 있다면, risk 분모가 마이너스가 되고, , 분자에 해당하는 risk(variance) 클수록 샤프지수는 샤프지수 ( 작은 마이너스 ) 갖게 된다.

 

모든 슬라이드는 경희대학교 일반대학원 빅데이터응용학과 김장호 교수님의 수업자료를 참고했습니다. 

'금융공학' 카테고리의 다른 글

Robust Portfolio (1) - RPO, Resampling  (0) 2023.07.16
다양한 MVO  (0) 2023.07.13
The Capital Asset Pricing Model  (2) 2023.06.23
Mean-Variance Portfolio Theory  (1) 2023.06.23
Factor Model  (0) 2023.05.03