σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft Academyロードマップスキル
Ctrl K
AO
+1.2k 人の学習者
ログイン参加する ↗
ロードマップスキル
AO
+1.2k 人の学習者
ログイン
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft Academyロードマップスキル
Ctrl K
AO
+1.2k 人の学習者
ログイン参加する ↗
ロードマップスキル
AO
+1.2k 人の学習者
ログイン
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
scikit-learn スキル›モジュール 4 · 構造と洞察›トピック 4.4·~50 分上級

リターンの主成分

スキル上の位置モジュール 4/4 · トピック 4/7
4.4 リターンの主成分
—ラボスコア— / 100合計XP—連続日数—

1つの市場、いくつかのテーマ、そして長い裾

リターンの各列を標準化(平均0、標準偏差1)した結果を、n 日・p 資産の Z とします。相関行列は C=ZᵀZ/n です。主成分は C の固有ベクトル vⱼ で、標準化したリターンが最も大きくばらつく資産空間の方向、次に第1の方向に直交する方向のうち最も大きくばらつく方向、というように続きます。固有値 λⱼ はその方向の分散で、固有値の和は p(標準化した p 列の総分散)に等しく、λⱼ/p が寄与率です。スコア Z vⱼ はその成分の時系列です。numpy.linalg.eigh は固有値を昇順で返すので降順に並べ替えます。固有ベクトルの符号は任意なので、何かと比べる前に規約(たとえば絶対値最大の成分を正にする)を決めます。

最初の k 個の成分だけを残すと、データは Ẑ=Z VₖVₖᵀ として再構成されます。再構成の平均二乗誤差は捨てた分散を p で割ったもの 1/pΣ_(j>k)λⱼ です。61の株式とETFの直近2,500取引日では、第1成分が分散の 37.4%、続く4つが 7.3%、6.2%、3.3%、2.8% を担います。第1スコアは等ウェイト平均リターンと相関 0.998 を持ち、教えなくても見つかった市場そのものです。次の成分はセクターやスタイルのテーマです。それでも裾は重く、分散の半分には 3 成分で足りますが、80% には 22、90% には 34 成分が必要で、再構成誤差は1成分で 0.626、5成分で 0.430、20成分で 0.213 です。PCAは市場の共通部分を圧縮しますが、61資産を3つのように見せるわけではありません。

  • 標準化してから固有分解する。固有値の和は資産数に等しい。
  • 符号は任意。規約を決め、ベクトルは絶対値のコサインで比べる。
  • 株式リターンの第1成分は市場。小さな成分の裾もなお重要。

ラボ:採点される内容

  • 標準化10点
  • 固有分解20点
  • 寄与率10点
  • scikit-learnとの照合15点
  • 必要な成分数10点
  • 再構成誤差15点
  • 研究20点
エクスプローラー · lab-sl-23
▾ lab-sl-23
▾ data
…
bash · ブラウザ内
learner@quantcraft:~/lab-sl-23$
Pythonは未読み込みPythonLn 1, Col 1Spaces: 4UTF-8

このトピックをリセットしますか?

lab-sl-23 の内容はすべてスターターファイルに戻り、ターミナルも消去されます。現在の解答は失われ、元に戻せません。

リセットされるもの
  • main.py → スターターコード
  • ターミナル履歴とテスト出力
  • 未提出の変更
保持されるもの
  • ラボの最高スコア
  • XPと連続日数
  • 講義の進捗とメモ

コードを実行するにはログインしてください。

レクチャーはすべて無料で読めます。コードの実行、テスト、ラボの提出にはアカウントの作成かログインが必要です。

  • ブラウザ内IDEとbashターミナル。インストール不要
  • 即時採点、XP、スキルでの現在地
アカウントを作成ログイン
または
GitHubで続ける