σμ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 2 · Kurven und Integrale›Thema 2.2·~45 Min.Mittelstufe

Eine Zinskurve und ihre Terminzinsen interpolieren

Position in der SkillModul 2 von 3 · Thema 2 von 5
2.2 Eine Zinskurve und ihre Terminzinsen interpolieren
—Lab-Punkte— / 100XP gesamt—Serie—

Die Lücken zwischen den Notierungen füllen

Das Treasury notiert zehn Laufzeiten, alles andere wird interpoliert. scipy.interpolate bietet die Standardwerkzeuge. np.interp verbindet die Notierungen mit Geraden: einfach und ohne Überschwingen, aber die Steigung springt an jeder Notierung. CubicSpline(x, y, bc_type='natural') verbindet sie mit einer glatten Kurve, deren erste und zweite Ableitung stetig sind; der Preis der Glattheit ist, dass sie zwischen Notierungen überschwingen kann und außerhalb des notierten Bereichs davonläuft, man sollte sie also nicht extrapolieren. PchipInterpolator(x, y) ist ebenfalls glatt, bewahrt aber die Form: Wo die Daten steigen, steigt sie, sie kann also keinen Buckel erfinden. Alle drei gehen durch jede Notierung; sie unterscheiden sich dazwischen und in dem, was sie mit allem aus der Kurve Abgeleiteten tun.

Die Unterschiede zählen, weil abgeleitete Größen sie verstärken. Ein Diskontfaktor ist D(t)=e^(-y(t) t/100), und der Terminzins zwischen zwei Terminen ist die Steigung seines Logarithmus, f=-Δln D/Δt×100. Ein kleiner Knick der Rendite wird zu einem sichtbaren Sprung des Terminzinses. Am 9. Oktober 2026 beträgt die 15-Jahres-Rendite 5,445% bei linearer Interpolation, 5,464% beim natürlichen kubischen Spline und 5,493% bei PCHIP, und der größte Sprung zwischen benachbarten Terminzinsen auf einem 120-Punkte-Gitter beträgt 0,91 Punkte für die lineare Kurve und etwa 0,21 für die Splines. Auf der inversen Kurve vom 3. Januar 2000 sinken die Terminzinsen der Splines auf 4,76% und 4,63%, die linearen bleiben bei 5,63%. Es gibt keine beste Methode, nur eine bewusste Wahl: glatte Terminzinsen zum Bewerten, Formtreue fürs Risiko, einfache Geraden, wenn nichts erfunden werden darf.

  • Alle drei gehen durch die Notierungen: Sie unterscheiden sich dazwischen und in den implizierten Terminzinsen.
  • Terminzinsen sind die Steigung der Log-Diskontfaktoren: Jeder Knick der Rendite zeigt sich als Sprung.
  • Einen kubischen Spline nicht extrapolieren: nur zwischen den Notierungen benutzen.

Lab: Was bewertet wird

  • Drei Interpolationen20 Pkt.
  • Diskontfaktoren10 Pkt.
  • Die Terminzinskurve20 Pkt.
  • Rauigkeit10 Pkt.
  • Die Methoden vergleichen15 Pkt.
  • Ein echter Tag25 Pkt.
Explorer · lab-sp-17
▾ lab-sp-17
▾ data
…
bash · im Browser
learner@quantcraft:~/lab-sp-17$
Python noch nicht geladenPythonLn 1, Col 1Spaces: 4UTF-8

Dieses Thema zurücksetzen?

Alles in lab-sp-17 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