本ページでは、CloudOzのポートフォリオ最適化サービスで採用している計算手法、使用するデータ、最適化の目的関数および制約条件について説明します。
本サイトのポートフォリオ最適化サービスでは、リスク(標準偏差)1%あたりの超過リターン(期待リターンから無リスク金利を差し引いた値)が最大となる、すなわちシャープレシオが最大となる資産配分を初期設定として表示します。

本サービスの最適化手法は、Simon Benninga著『Financial Modeling』のポートフォリオ・モデルに関する章を参考に、現代ポートフォリオ理論に基づいて実装しています。
最適化には、Pythonのオープンソースライブラリ「CVXPY」と、凸二次計画問題を解くソルバー「OSQP」(Operator Splitting Quadratic Program)を使用しています。
各資産の保有割合の上限・下限などの制約条件(例:金の保有割合は10%以下)を設定し、その条件に合った配分を求めます。
OSQPの詳細については、以下のドキュメントをご参照ください:OSQP Documentation (Version 0.6.3)
最適化を行う際の計算条件は以下の通りです。
- 対象銘柄:ユーザーが銘柄を選択・変更可能。
- 配当・利息:配当やクーポンの再投資を考慮した複利計算を使用。
- 無リスク金利:個人向け国債等の利率を使用。
- 収益率:単純収益率ではなく、対数収益率を使用。
- データの重み付け:直近の価格データを重視する特別な重み付けは行わない。
- 共分散行列:Ledoit-Wolf法による縮小推定は行わない。
- 最適化の目的:シャープレシオ最大化がデフォルトです。リスクを指定する場合は、その値をリスク(標準偏差)の上限として、各資産の保有割合などの制約条件のもとで期待リターンを最大化します。
※本サービスでは、リスクに代えて「積立期間」を指定できるようにしています。1年から30年までの積立期間を、リスクが0から最大値までの範囲に対応付け、期間が短いほど低いリスクとしています。
以下の画像をタップしてポートフォリオ最適化をお試しください。

本サービスの最適化結果は、過去の市場データに基づいて算出したものであり、将来の運用成果を保証するものではありません。