σμ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
  • 日本語
  • 中文
SciPy スキル›モジュール 3 · 行列・信号・構造›トピック 3.4·~40 分中級

空間的な距離とクラスタリング

スキル上の位置モジュール 3/3 · トピック 4/5
3.4 空間的な距離とクラスタリング
—ラボスコア— / 100合計XP—連続日数—

一緒に動く度合いで資産をグループ化する

距離は2つのものがどれだけ離れているかを表します。資産では「近い」は「一緒に動く」を意味すべきなので、相関 ρ\rhoρ を距離 d=12(1−ρ)d=\sqrt{\tfrac12(1-\rho)}d=21​(1−ρ)​ に変えます。完全な相関 ρ=1\rho=1ρ=1 は距離 000、無相関は 0.710.710.71、正反対の動き ρ=−1\rho=-1ρ=−1 は距離 111 です。1−ρ1-\rho1−ρ と違い、この式は本物の距離のように振る舞うので、クラスタリングの道具に渡せます。scipy.spatial.distance.pdist はすべての組の距離を一度に計算し、squareform は完全な表とクラスタリング関数が期待する圧縮リストを相互に変換します。多数の点の中から最も近い点を探すには、scipy.spatial.cKDTree がすべての点と比べるよりずっと速いです。

階層的クラスタリングは、各資産を1つずつの集団として始め、最も近い2つの集団を繰り返し併合します。2つの集団の距離をどう測るかが連結法です。single は集団間で最も近い組、complete は最も遠い組、average は集団間のすべての距離の平均を使います。hierarchy.linkage(distances, method) は併合の履歴全体を各併合の高さとともに返します。hierarchy.fcluster(Z, t, 'distance') は木を高さ ttt で切って集団ラベルを与え、'maxclust' なら指定した数の集団に分けます。金融では、集団が分散投資の地図になります。同じ集団の資産はほぼ同じリスクを負っているので、5つ持っても5つの賭けにはなりません。

dij=12(1−ρij),daverage(A,B)=1∣A∣∣B∣∑i∈A∑j∈Bdij,dsingle=min⁡dij,dcomplete=max⁡dijd_{ij}=\sqrt{\tfrac12(1-\rho_{ij})},\qquad d_{\text{average}}(A,B)=\frac{1}{|A||B|}\sum_{i\in A}\sum_{j\in B}d_{ij},\qquad d_{\text{single}}=\min d_{ij},\quad d_{\text{complete}}=\max d_{ij}dij​=21​(1−ρij​)​,daverage​(A,B)=∣A∣∣B∣1​i∈A∑​j∈B∑​dij​,dsingle​=mindij​,dcomplete​=maxdij​(1)
3資産の手計算相関 0.50.50.5 の距離は 0.25=0.5\sqrt{0.25}=0.50.25​=0.5、0.80.80.8 なら 0.1=0.316\sqrt{0.1}=0.3160.1​=0.316 です。距離が AB=0.3AB=0.3AB=0.3、AC=0.8AC=0.8AC=0.8、BC=0.7BC=0.7BC=0.7 の3資産を考えます。最も近い組は AAA と BBB で、高さ 0.30.30.3 で併合されます。新しい集団から CCC への距離は、単連結で min⁡(0.8,0.7)=0.7\min(0.8,0.7)=0.7min(0.8,0.7)=0.7、完全連結で max⁡=0.8\max=0.8max=0.8、平均連結で (0.8+0.7)/2=0.75(0.8+0.7)/2=0.75(0.8+0.7)/2=0.75 なので、平均連結では2回目の併合は 0.750.750.75 で起きます。木を高さ 0.50.50.5 で切ると、{A,B}\{A,B\}{A,B} と {C}\{C\}{C} の2集団が残ります。実データでは、履歴が 90%90\%90% 以上ある米国の大型株 555555 銘柄で、JPMJPMJPM と BACBACBAC の相関は 0.790.790.79(距離 0.3270.3270.327)です。平均連結で 666 集団に切ると、373737 銘柄の大きな集団、ちょうどヘルスケア株の 888 銘柄(JNJ、PFE、MRK、ABT、AMGN、LLY、BMY、MDT)、ディフェンシブ株の 777 銘柄(PG、KO、PEP、T、VZ、DUK、SO)、そして単独の3銘柄になります。
  • 相関を距離にする:d=(1−ρ)/2d=\sqrt{(1-\rho)/2}d=(1−ρ)/2​ は双子なら 000、正反対なら 111。
  • 連結法は選択:単連結・完全連結・平均連結は、同じデータでも異なる併合の高さを与えうる。
  • 集団は分散投資の地図:集団をまたいで選ぶ。同じ集団の資産はリスクの大部分を共有するから。

ラボ:採点される内容

  • 相関から距離へ10点
  • 距離から相関へ10点
  • 平均連結の高さ15点
  • 単連結の高さ10点
  • 切断後の集団10点
  • 各ルーチンの働き15点
  • 集団と分散投資30点
0/ 7問回答済み
問題
1数値で答える10点未回答

2つの資産の相関が ρ=0.8\rho=0.8ρ=0.8 です。d=12(1−ρ)d=\sqrt{\tfrac12(1-\rho)}d=21​(1−ρ)​ はいくつですか。小数第3位まで答えてください。

d=d =d=許容:± 0.002
2数値で答える10点未回答

2つの資産の距離が d=0.5d=0.5d=0.5 です。ρ=1−2d2\rho=1-2d^{2}ρ=1−2d2 を使って相関を求めてください。

r=r =r=許容:± 0.01
3数値で答える15点未回答

AAA と BBB が併合されたところです。CCC までの距離は 0.80.80.8 と 0.70.70.7 です。平均連結では、CCC はどの高さで合流しますか。

h=h =h=許容:± 0.005
4数値で答える10点未回答

同じ距離で、単連結では CCC はどの高さで {A,B}\{A,B\}{A,B} に合流しますか。

h=h =h=許容:± 0.005
5数値で答える10点未回答

併合は高さ 0.30.30.3 と 0.750.750.75 で起きます。木を高さ 0.50.50.5 で切ると、集団はいくつ残りますか。

g=g =g=許容:± 0.01
6対応づけ15点未回答

各ルーチンを、その働きに結び付けてください。

左の各項目に対応するものを選んでください。

pdist
squareform
hierarchy.linkage
hierarchy.fcluster
cKDTree
7言葉で説明する30点未回答

2つのポートフォリオがそれぞれ5銘柄を持ちます。一方は5銘柄とも同じ集団から、他方は5つの集団から1銘柄ずつ選びます。どちらがより分散されているか、その理由を1〜2文で説明してください。

数学モードキーボードまたは LaTeX で入力問題1/7 · Ctrl ⏎ で確認

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

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

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