ÎncepețiÎncepe gratuit

Ajustarea distribuției t la date

O distribuție t Student se potrivește, în general, mult mai bine randamentelor zilnice, săptămânale și lunare decât o distribuție normală.

Poți crea una folosind funcția fit.st() din pachetul QRM. Modelul ajustat rezultat conține o componentă cu estimările parametrilor, par.ests, care poate fi atribuită unei liste tpars pentru a stoca valorile nu, mu și sigma în vederea utilizării ulterioare:

> tfit <- fit.st(ftse)
> tpars <- tfit$par.ests
> tpars
          nu           mu        sigma
2.949514e+00 4.429863e-05 1.216422e-02

În acest exercițiu, vei ajusta o distribuție t Student la log-randamentele zilnice ale indicelui Dow Jones din perioada 2008–2011, conținute în djx. Apoi, vei reprezenta grafic o histogramă a datelor și vei suprapune o linie roșie care arată densitatea t ajustată. Datele djx și pachetul QRM au fost deja încărcate.

Acest exercițiu face parte din cursul

Managementul Cantitativ al Riscului în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește fit.st() pentru a ajusta o distribuție t Student la datele din djx și atribuie rezultatele lui tfit.
  • Atribuie componenta par.ests a modelului ajustat lui tpars, iar elementele lui tpars lui nu, mu și, respectiv, sigma.
  • Completează hist() pentru a reprezenta o histogramă a lui djx.
  • Completează dt() pentru a calcula densitatea t ajustată la valorile djx și atribuie rezultatul lui yvals. Consultă videoclipul pentru această ecuație.
  • Completează lines() pentru a adăuga o linie roșie la histograma lui djx, care să arate densitatea t ajustată.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Fit a Student t distribution to djx
tfit <- ___(___)

# Define tpars, nu, mu, and sigma
tpars <- ___
nu <- ___
mu <- ___
sigma <- ___

# Plot a histogram of djx
hist(___, nclass = 20, probability = TRUE, ylim = range(0, 40))

# Compute the fitted t density at the values djx
yvals <- dt((___ - ___)/___, df = ___)/___

# Superimpose a red line to show the fitted t density
lines(___, yvals, col = "red")
Editează și rulează codul