σμ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 AcademyRoadmapsSkills
Ctrl K
AO
+1,2 Tsd. Lernende
AnmeldenBeitreten ↗
RoadmapsSkills
AO
+1,2 Tsd. Lernende
Anmelden
  • 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 AcademyRoadmapsSkills
Ctrl K
AO
+1,2 Tsd. Lernende
AnmeldenBeitreten ↗
RoadmapsSkills
AO
+1,2 Tsd. Lernende
Anmelden
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
SciPy-Skill›Modul 1 · Anpassen und finden›Thema 1.2·~45 Min.Mittelstufe

Renditeverteilungen anpassen und die Anpassung testen

Position in der SkillModul 1 von 3 · Thema 2 von 8
1.2 Renditeverteilungen anpassen und die Anpassung testen
—Lab-Punkte— / 100XP gesamt—Serie—

Ein Modell für die Tagesrendite

Jede Risikozahl beginnt mit einem Modell der Tagesrendite. Das einfachste Modell ist eine Normalkurve mit Mittelwert und Standardabweichung der Stichprobe. Das Student-t-Modell fügt eine Zahl hinzu, die Freiheitsgrade ν: ein kleines ν bedeutet dicke Ränder, und wenn ν groß ist, wird die t-Kurve zur Normalkurve. scipy.stats gibt jeder Verteilung dieselben vier Methoden: fit findet die Parameter per Maximum Likelihood, logpdf liefert den Logarithmus der Dichte, cdf die Wahrscheinlichkeit, unter einen Wert zu fallen, und ppf ihre Umkehrung, das Quantil. Wer die vier einmal kennt, kann jede Verteilung in SciPy gleich benutzen: Das Modell zu wechseln heißt ein Wort zu wechseln.

Um Modelle zu vergleichen, braucht man eine Note und einen Test. Die Log-Likelihood log L=Σᵢlog f(rᵢ) addiert, wie wahrscheinlich die ganze Stichprobe unter dem Modell ist, und das Akaike-Kriterium AIC=2k-2log L, mit k der Zahl angepasster Parameter, verlangt für jeden zusätzlichen Parameter einen Preis: kleiner ist besser. Der Kolmogorov-Smirnov-Test misst die größte Lücke zwischen der kumulierten Kurve der Stichprobe und der des Modells. stats.kstest(r, dist.cdf, args=params) liefert sie mit einem p-Wert, und ein winziger p-Wert sagt, dass die Stichprobe nicht wie eine Ziehung aus diesem Modell aussieht. Weil die Parameter an derselben Stichprobe angepasst wurden, ist der p-Wert geschönt: Nutzen Sie ihn zum Vergleich von Modellen, nicht als Endurteil. Schließlich wird das Modell zur Risikozahl: Der Ein-Tages-VaR ist minus das Quantil, -dist.ppf(alpha, *params), und die erwartete Zahl schlechter Tage ist der Stichprobenumfang mal dist.cdf(-level, *params).

Was die echten Daten sagenSPY hat von September 2016 bis August 2026 2.500 Tagesrenditen. Die Student-t-Anpassung ergibt ν≈2,6, einen sehr dicken Rand, und ein AIC, das 867 Punkte unter dem der Normalverteilung liegt. Der KS-Test verwirft die Normalkurve (p-Wert etwa 10⁻²⁵), die t nicht (0,19). Der 1-%-VaR beträgt 2,57% unter der Normalverteilung und 3,12% unter der t. Sechs Tage fielen um mehr als 5 %: Eine Normalkurve erwartet in zehn Jahren 0,01 solcher Tage, das t-Modell 7,9. Über 3 % sind es 32 gegen 8,6 bei der Normalverteilung und 27 bei der t.
  • Überall dieselben vier Methoden: fit, logpdf, cdf und ppf gelten für jede Verteilung in scipy.stats, die Modelle sind austauschbar.
  • Erst bewerten, dann testen: Das AIC vergleicht Modelle mit einem Preis je Parameter, der KS-Test fragt, ob die Stichprobe überhaupt aus einem Modell stammen kann.
  • Randzählungen entlarven das Modell: Zählen Sie die Tage unter -5 % und vergleichen Sie sie mit n * cdf; eine Normalkurve liegt um den Faktor Hunderte daneben.

Lab: Was bewertet wird

  • Tagesrenditen einer Spalte10 Pkt.
  • Zwei angepasste Modelle15 Pkt.
  • Eine Log-Likelihood10 Pkt.
  • Modelle mit dem AIC vergleichen10 Pkt.
  • Ein Kolmogorov-Smirnov-p-Wert15 Pkt.
  • Ein VaR aus einem Quantil10 Pkt.
  • Beobachtete und erwartete extreme Tage10 Pkt.
  • Die gesamte Studie20 Pkt.
Explorer · lab-sp-12
▾ lab-sp-12
▾ data
…
bash · im Browser
learner@quantcraft:~/lab-sp-12$
Python noch nicht geladenPythonLn 1, Col 1Spaces: 4UTF-8

Dieses Thema zurücksetzen?

Alles in lab-sp-12 wird auf die Startdateien zurückgesetzt und das Terminal geleert. Ihre aktuelle Lösung geht verloren – das lässt sich nicht rückgängig machen.

Wird zurückgesetzt
  • main.py → Startcode
  • Terminal-Verlauf und Testausgabe
  • Nicht eingereichte Änderungen
Bleibt erhalten
  • Beste Lab-Punktzahl
  • Ihre XP und Ihre Serie
  • Vorlesungsfortschritt und Notizen

Melde dich an, um deinen Code auszuführen.

Alle Lektionen kannst du kostenlos lesen. Erstelle ein Konto oder melde dich an, um Code auszuführen, Tests zu starten und dieses Lab abzugeben.

  • IDE im Browser mit Bash-Terminal — nichts zu installieren
  • Sofortige Bewertung, XP und dein Platz auf der Skill
Konto erstellenAnmelden
ODER
Weiter mit GitHub