LoginSignup
2
1

【アロケーション戦略】k-means法を用いたポートフォリオリスク分散

Last updated at Posted at 2024-01-27

ポートフォリオのリスク分散効果を高めたい

※2021年7月時点の分析のため、分析期間や銘柄名などに違和感があるかと思われますがご容赦ください。

1. 戦略概要

(戦略1)シンプルなリスク分散ポートフォリオを考えると・・・

スクリーンショット 2024-01-21 22.02.27.png
例えばS&P500の構成銘柄すべてを投資対象銘柄としてポートフォリオを組むことを考えたとき、リスク分散を図る方法は数多くあるが最もシンプルな方法が上の方法だろう。上の方法では、各銘柄に対してリスク量σを計測して(σは過去1年の株価ボラティリティなどが想定される。)、各銘柄ウェイトを1/σ、つまり、(銘柄相関を無視した場合に)ポートフォリオに占める1銘柄あたりのリスク量比率を均等しようとする戦略である。

(戦略2)戦略1にクラスター分析を組み合わせると・・・

スクリーンショット 2024-01-27 19.26.28.png
戦略1では一見リスク分散が図れているように思えるが、銘柄間の相関を無視すると、同じような値動きをする銘柄群(クラスター)にウェイトが集まることが考えられる。そうすると、特定のリスクイベントに対して影響を受けやすくなり、リスク分散という観点でいまひとつである。特定の指数を投資対象としたとき、少なからず銘柄の属性に偏りが生じるため、この問題は避けられない。
そこで、戦略1にもう一工夫加えてみることにする。端的に言えば、「銘柄単位のリスクパリティを組む前にクラスター単位でリスクパリティを組む」戦略である。こうすることにより、ポートフォリオに占める各クラスターのリスク量比率が均等になり(クラスター間の相関は無視)、各銘柄の値動きが分散されることで、リスクイベントに対する脆弱性が解消されると想定される。

2. 具体的な戦略構築プロセス

<1>銘柄×時系列の形式で作成した過去10年分(2002年〜2012年)の日次リターン行列を対象に、pythonのscikit-learnを使用して、クラスタリング( k-means法)をかける。このときクラスターの数が多すぎれば戦略1に近似してしまうためk=5とした。
<2>クラスター1つあたりを1ポートフォリオと考え、各クラスターの過去10年間のリターン推移からリスク量σ(ボラティリティ)を算出。1/σに比例して各クラスターにウェイトを割り当てる。
<3>クラスター内のウェイトは戦略1同様、個別銘柄のリスク量$σ_{i}$を算出し、1/$σ_{i}$に比例して各クラスターにウェイトを割り当てる。
※つまり、銘柄単位では1/($σ・σ_{i}$)に比例したウェイトが配分される。

${}$

以下はクラスター分析の結果を図示するため、図の横軸を第一主成分、第2主成分とおき、クラスターごとに銘柄を色分けしたもの。
※主成分分析は<1>の日次リターン行列に対して行った。

(参考)クラスター分析の結果

スクリーンショット 2024-01-27 20.51.10.png
概ね各プロットの近傍でクラスターを作成できていることが分かる。

3. 長期パフォーマンス検証

上記プロセスによって構築した戦略2のポートフォリオと戦略1のポートフォリオについて、その後のパフォーマンスを比較した。参考までに、すべての銘柄のウェイトを均等にした「戦略0」も比較対象とした。
<分析対象>
・Equal_weight(戦略0) :全ての銘柄等ウェイト
・Risk_parity(戦略1) :各銘柄単位1/$σ_{i}$に比例したウェイト
・Clusuter_Risk_Parity(戦略2) :各銘柄単位1/($σ・σ_{i}$)に比例したウェイト

戦略ごとの時系列リターンの推移(2013年〜2020年中盤)

スクリーンショット 2024-01-27 22.57.56.png

長期パフォーマンスの比較(2013年〜2020年中盤)

スクリーンショット 2024-01-27 23.05.52.png

長期パフォーマンスの比較を図とデータ、両方でまとめたが、ウェイトが少しずつ異なるものの、投資対象が同じかつ銘柄数が多いことで、パフォーマンスに大きな乖離は見られない。ただ、クラスターリスクパリティ(戦略2)はリターンが最も低いながらリスクを最小に抑えており、ある程度リスク分散が機能していることが伺える。

4. リスクイベント耐性検証

今回の研究は、「ポートフォリオのリスク分散効果を高めたい」、特にクラスタリング分析を用いて「ポートフォリオのリスクイベント耐性を高めたい」という趣旨がある。その場合、長期のパフォーマンスを比較しただけでは戦略の検証としてやや物足りない。

赤マルのリスクイベント時に着目したい・・・

スクリーンショット 2024-01-27 23.19.23.png
そこで上図赤マルの市場のリスクイベント時(大幅な下落局面)のパフォーマンスを確認したい。
以下、各戦略の時系列リターンを各局面ごとに記載した。
※参考までにS&P500のリターン(Market)も載せている。

①トランプ当選前(2016/2~2016/8)

image.png

この期間、リスクパリティ(戦略1)の最大ドローダウン(リターンの最大値−最小値)が△5.01%だったのに対し、クラスターリスクパリティ(戦略2)は△4.86%だった事から、微小にではあるが下落を抑制できていることが伺える。

②米中摩擦等(2019/2~2019/8)

image.png
この期間、リスクパリティ(戦略1)の最大ドローダウン(リターンの最大値−最小値)が△0.85%だったのに対し、クラスターリスクパリティ(戦略2)は△0.58%だった事から、微小にではあるが下落を抑制できていることが伺える。

③コロナショック(2020/2~2020/8)

image.png
この期間、リスクパリティ(戦略1)の最大ドローダウン(リターンの最大値−最小値)が△8.86%だったのに対し、クラスターリスクパリティ(戦略2)は△8.18%だった事から、微小にではあるが下落を抑制できていることが伺える。ただし、コロナショックについては、市場の最大ドローダウンが△5.50%であった事から、リスク分散戦略が機能しづらい相場だったことも同時に読み取れるため、戦略2がダウンサイドヘッジに優れた戦略とも言い切れない。

5. まとめと課題点

  • 「銘柄単位のリスクパリティを組む前にクラスター単位でリスクパリティを組む」戦略、クラスターリスクパリティ戦略によって、僅かながら長期的なリスクは減少した。
  • 同戦略は長期的なパフォーマンスでリスクパリティ戦略に劣後した。
  • 2013年〜2020年中盤の市場のリスクイベント(大幅な下落局面)においては、一定程度のリスク体制を発揮した。
  • コロナショック時は、リスク分散戦略が機能しづらい相場であったことがわかった。
  • 今回、簡易的な検証としたため、トレーニングデータを使用して構築したポートフォリオは検証期間固定した。これは日次で当初のポートフォリオリバランスしていることになる上、各銘柄のリスク量の変化を反映できていない事から、実務的な検証とは程遠い状態である。様々な課題が残る研究ではあるが、喫緊の課題としては、ポート構築プロセスを月次/年次で回し、同頻度でリバランスを行なった検証をする事だと考えている。

(参考)クラスター数を変化させた場合のパフォーマンス変化

image.png
クラスター数とパフォーマンスの関係で明確な法則性は確認されなかった。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1