σμ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
  • 日本語
  • 中文
Particle filtering and non-stationary time series スキル›モジュール 3 · 変わり続ける市場›トピック 3.3·~1 時間 40 分上級

総仕上げ:株式のベータとボラティリティを追跡する

スキル上の位置モジュール 3/3 · トピック 3/3
3.3 総仕上げ:株式のベータとボラティリティを追跡する
—ラボスコア— / 100合計XP—連続日数—

動き続ける株式のベータを追う

このキャップストーンでは、SPYに対するアップルのベータを追う3つのトラッカーを作って比べます。モデルはランダムウォークするベータです。毎日、株式のリターンはベータ×市場リターン+ノイズで、ベータ自身も少しずつ動きます。1つ目は直近 60 日の移動回帰で、硬い窓に当たります。2つ目はカルマンフィルタで、すべてが釣鐘形のときの厳密な答えです。3つ目は、重みの正規化、有効標本サイズ、系統的リサンプリングを自分で書くブートストラップ粒子フィルタです。指数加重の推定量は、市場で説明できない部分のボラティリティを追います。

βₜ=βₜ₋₁+wₜ, yₜ=βₜ mₜ+eₜ, K=(P⁻mₜ)/(P⁻mₜ²+r)
実データが語ること2005年以降のアップルとSPYの 5 404 日で、全期間のベータは 1.07 です。最終日には、60 日回帰が 0.20、カルマンフィルタが 0.40、粒子500個の粒子フィルタが 0.43 を示します。昨日のベータで各日のリターンを予測したときの平均2乗誤差は、固定ベータで 2.379×10⁻⁴、移動ベータで 2.378×10⁻⁴、カルマンで 2.354×10⁻⁴、粒子で 2.362×10⁻⁴ です。ベータを追うと約 1% 良くなりますが、日次リターンはほとんどがノイズなのでそれ以上ではありません。粒子フィルタは 107 日でリサンプリングし、有効標本サイズは 500 中約 7 まで下がります。残差の指数加重ボラティリティはデータ末で年率約 32% です。
  • 同じモデル、3つの解法:硬い窓、厳密なガウスフィルタ、重み付き粒子の雲。
  • 再現できるランダム性:乱数は引数で渡されるので、同じ入力は同じ答えを返す。
  • 公平な採点:各手法は昨日のベータだけで当日のリターンを予測する。
覚えておく単純化ベータは手で選んだ固定の歩幅 q=10⁻³ のランダムウォークで、ノイズは分散一定の正規分布として扱っており、ボラティリティの集中は無視しています。採点は1つの標本における1銘柄の2乗誤差を使います。この線形ガウスモデルではカルマンが厳密なので、粒子フィルタはそれに並ぶことしかできず、利点が出るのはノイズが厚い裾をもつときや分散が動くときです。

ラボ:採点される内容

  • 安全な正規化5点
  • 有効標本サイズ5点
  • 系統的リサンプリング10点
  • 移動ベータ10点
  • 指数加重ボラティリティ10点
  • カルマンフィルタ15点
  • ブートストラップ粒子フィルタ25点
  • ベータの検証20点
エクスプローラー · lab-pf-10
▾ lab-pf-10
▾ data
…
bash · ブラウザ内
learner@quantcraft:~/lab-pf-10$
Pythonは未読み込みPythonLn 1, Col 1Spaces: 4UTF-8

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

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

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

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

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

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