お金の算数

ローンや資産運用について数学的見解を交えて考察しています

ラグランジュ乗数法を用いた効率的フロンティアの導出

前回の記事でポートフォリオ理論における「効率的フロンティア」を数式で説明しました。

 

dic-eft-sr3.hatenablog.com

 

  • 効率的フロンティア
{ \displaystyle \begin{equation} \min_{W}W^TSW \end{equation} }

 

s.t.
k=W^TR
W^T\boldsymbol{1}=1

 

これは目的関数である{ \displaystyle \begin{equation} \min_{W}W^TSW \end{equation} }と制約条件であるk=W^TR及びW^T\boldsymbol{1}=1を明示したにすぎません。最終的な目的としては、上記の制約条件を満たしつつ、目的関数(ここではポートフォリオの分散)が最小となる構成比率のベクトルWを求めることです。

 

この問題のように条件が与えられているもとで、ある関数の極値を求めることを「条件付き極値問題」といいます。このときの解決方法として有力になるのが「ラグランジュ乗数法」です。この記事では上記に示したポートフォリオ理論における効率的フロンティアの導出をラグランジュ乗数法を用いて解いていきます。

 

 

ラグランジュ関数を作り、偏微分してゼロと置く

先に示した効率的フロンティアの最適化条件から、ラグランジュ関数を作ると以下のようになります。

 

\begin{eqnarray}L(W,λ_1,λ_2)=W^TSW+λ_1(k-W^TR)+λ_2(1-W^T\boldsymbol{1})\tag{1}\end{eqnarray}

 

この式(1)をそれぞれW,λ_1,λ_2偏微分します。

 

\frac{∂L}{∂W^T}=2SW-λ_1R-λ_2\boldsymbol{1}=\boldsymbol{0^T}\tag{2}

 

\frac{∂L}{∂λ_1}=k-W^TR=0\tag{3}

 

\frac{∂L}{∂λ_2}=1-W^T\boldsymbol{1}=0\tag{4}

 

式(2)を「W=~」となるように式変形します。

 

W=\frac{1}{2}λ_1S^{-1}R+\frac{1}{2}λ_2S^{-1}\boldsymbol{1}\tag{5}

 

式(5)に左からRを掛けます。

 

R^TW=\frac{1}{2}λ_1R^TS^{-1}R+\frac{1}{2}λ_2R^TS^{-1}\boldsymbol{1}

 

制約条件よりW^TR=R^TW=kとなるので以下の式を得ます。

 

k=\frac{1}{2}λ_1R^TS^{-1}R+\frac{1}{2}λ_2R^TS^{-1}\boldsymbol{1}\tag{6}

 

また、同じく式(5)に左から\boldsymbol{1}を掛けます。

 

\boldsymbol{1}^TW=\frac{1}{2}λ_1\boldsymbol{1}^TS^{-1}R+\frac{1}{2}λ_2\boldsymbol{1}^TS^{-1}\boldsymbol{1}

 

制約条件よりW^T\boldsymbol{1}=\boldsymbol{1}^TW=1となるので以下の式を得ます。

 

1=\frac{1}{2}λ_1\boldsymbol{1}^TS^{-1}R+\frac{1}{2}λ_2\boldsymbol{1}^TS^{-1}\boldsymbol{1}\tag{7}

 

 

λ_1λ_2の値を求める

 式(6)、(7)より以下のような2元連立方程式が得られます。

 

\left\{ \begin{array}{ll} \frac{1}{2}λ_1R^TS^{-1}R+\frac{1}{2}λ_2R^TS^{-1}\boldsymbol{1}=k\\ \frac{1}{2}λ_1\boldsymbol{1}^TS^{-1}R+\frac{1}{2}λ_2\boldsymbol{1}^TS^{-1}\boldsymbol{1}=1 \end{array}\right.

 

これを行列によって表現します。

 

\begin{pmatrix} {R^TS^{-1}R } \; {R^TS^{-1}\boldsymbol{1}} \\ {\boldsymbol{1}^TS^{-1}R } \; {\boldsymbol{1}^TS^{-1}\boldsymbol{1}} \:\end{pmatrix}\begin{pmatrix} {\frac{1}{2}λ_1} \\{\frac{1}{2}λ_2} \end{pmatrix}=\begin{pmatrix} {k} \\{1} \end{pmatrix}\tag{8}

 

 わかりやすくするために係数行列の要素を他の文字に置き換えていきます。

係数行列の非対角要素である「R^TS^{-1}\boldsymbol{1}」と「\boldsymbol{1}^TS^{-1}R」は同じ値になっているので、これを「A」と置きます。

 

A=R^TS^{-1}\boldsymbol{1}=\boldsymbol{1}^TS^{-1}R

 

また、係数行列の左上、右下それぞれの要素を以下のように置きます。

 

B=R^TS^{-1}R

 

C=\boldsymbol{1}^TS^{-1}\boldsymbol{1}

 

上記の表現を使って、式(8)を置き換えると

 

\begin{pmatrix} {B } \; {A} \\ {A } \; {C} \:\end{pmatrix}\begin{pmatrix} {\frac{1}{2}λ_1} \\{\frac{1}{2}λ_2} \end{pmatrix}=\begin{pmatrix} {k} \\{1} \end{pmatrix}

 

となります。λ_1λ_2に掛けられる\frac{1}2は以下のように移項することができます。

 

\begin{pmatrix} {B } \; {A} \\ {A } \; {C} \:\end{pmatrix}\begin{pmatrix} {λ_1} \\{λ_2} \end{pmatrix}=2\begin{pmatrix} {k} \\{1} \end{pmatrix}\tag{9}

 

また、以下のような係数行列の行列式を作ることができます。

 

D=BC-A^2\tag{10}

 

以上の数式を使い、λ_1λ_2を求めましょう。

式(9)に\begin{pmatrix} {B } \; {A} \\ {A } \; {C} \:\end{pmatrix}逆行列を掛けます。

 

{\frac{1}D}\begin{pmatrix} {C } \; {-A} \\ {-A } \; {B} \:\end{pmatrix}\begin{pmatrix} {B } \; {A} \\ {A } \; {C} \:\end{pmatrix}\begin{pmatrix} {λ_1} \\{λ_2} \end{pmatrix}={\frac{2}D}\begin{pmatrix} {C } \; {-A} \\ {-A } \; {B} \:\end{pmatrix}\begin{pmatrix} {k} \\{1} \end{pmatrix}

 

これを解いていきます。

 

\begin{pmatrix} {1 } \; {0} \\ {0 } \; {1} \:\end{pmatrix}\begin{pmatrix} {λ_1} \\{λ_2} \end{pmatrix}={\frac{2}D}\begin{pmatrix} {kC-A} \\ {-kA+B} \:\end{pmatrix}

 

\begin{pmatrix} {λ_1} \\{λ_2} \end{pmatrix}=\begin{pmatrix} {\frac{2(kC-A)}D} \\ {\frac{2(B-kA)}D} \end{pmatrix}

 

よって、λ_1λ_2は以下のように求めることができます。

 

\begin{eqnarray}\left\{ \begin{array}{ll} λ_1=\frac{2(kC-A)}D \\ λ_2=\frac{2(B-kA)}D \end{array}\right.\end{eqnarray}\tag{11}

 


最適なポートフォリオの構成比率ベクトルWの式を導出する

 式(11)を式(5)に代入すると最適なポートフォリオの構成比率のベクトルWが以下のように示すことができます。

 

W=\frac{1}{2}{\frac{2(kC-A)}D}S^{-1}R+\frac{1}{2}{\frac{2(B-kA)}D}S^{-1}\boldsymbol{1}

 

W={\frac{(kC-A)}D}S^{-1}R+{\frac{(B-kA)}D}S^{-1}\boldsymbol{1}\tag{12}

 

また、この式(12)をkに関して整理すると

 

=\frac{kC(S^{-1}R)-A(S^{-1}R)+B(S^{-1}\boldsymbol{1})-kA(S^{-1}\boldsymbol{1})}{D}

 

=\frac{B(S^{-1}\boldsymbol{1})-A(S^{-1}R)}D+k{\frac{C(S^{-1}R)-A(S^{-1}\boldsymbol{1})}D}

 

となり、「\frac{B(S^{-1}\boldsymbol{1})-A(S^{-1}R)}D=\boldsymbol{h}」、「{\frac{C(S^{-1}R)-A(S^{-1}\boldsymbol{1})}D}=\boldsymbol{g}」に置き換えると以下の式(13)ようなkに関する一次式になることがわかります。

 

W=\boldsymbol{g}+\boldsymbol{h}k\tag{13}

 

 \boldsymbol{g}や \boldsymbol{h}は既知である、それぞれの資産によるリターンやリスクを代入すれば求まります。最低限達成したい平均リターンk決めればポートフォリオの構成比率を式(13)で計算できます。