GARCH-Modelle in R
Kris Boudt
Professor of finance and econometrics
Wenn zwei Anlagenrenditen $R_{1,t}$ und $R_{2,t}$ Korrelation $\rho$ und zeitvariable Volatilitäten $\sigma_{1,t}$ und $\sigma_{2,t}$ haben, dann ist ihre Kovarianz:
$$ \sigma_{12, t} = \rho \sigma_{1, t} \sigma_{2, t} $$
Schritt 1: Verwende ugarchfit(), um das GARCH-Modell für jede Renditereihe zu schätzen.
msftgarchfit <- ugarchfit(data = msftret, spec = garchspec)
wmtgarchfit <- ugarchfit(data = wmtret, spec = garchspec)
Schritt 2: Verwende residuals(), um die standardisierten Renditen zu berechnen.
stdmsftret <- residuals(msftgarchfit, standardize = TRUE)
stdwmtret <- residuals(wmtgarchfit, standardize = TRUE)
Schritt 3: Verwende cor(), um $\rho$ als Stichprobenkorrelation der standardisierten Renditen zu schätzen.
msftwmtcor <- as.numeric(cor(stdmsftret, stdwmtret)) # equals 0.298795
Schritt 4: Berechne die GARCH-Kovarianz durch Multiplikation der geschätzten Korrelation und Volatilitäten
msftwmtcov <- msftwmtcor * sigma(msftgarchfit) * sigma(wmtgarchfit)

Varianz eines Zwei-Asset-Portfolios mit Gewicht $w_{1,t}$ in Asset 1 und $(1-w_{1,t})$ in Asset 2:
$$ \sigma^{2}_{p, t} = w^{2}_{1, t} \sigma^{2}_{1, t} + (1 - w_{1, t})^{2} \sigma^{2}_{2, t} + 2 w_{1, t} (1 - w_{1, t}) \sigma_{12, t} $$
Es gibt viele Definitionen für optimales $w_{1,t}$. Ein Ansatz setzt $w_{1,t}$ so, dass die Portfoliovarianz $\sigma_{t}^2$ minimiert wird.
Bedingung erster Ordnung für das Minimum-Varianz-Portfolio:
$$ \frac{\partial \sigma^{2}_{p, t}}{\partial w_{1, t}} = 2 w_{1, t} (\sigma^{2}_{1, t} + \sigma^{2}_{2, t} - 2 \sigma_{12, t}) - 2 (\sigma^{2}_{2, t} - \sigma_{12, t}) = 0 $$
Lösung: 
Berechnung in R:
msftvar <- sigma(msftgarchfit) ^ 2
wmtvar <- sigma(wmtgarchfit) ^ 2
msftwmtcov <- msftwmtcor * sigma(msftgarchfit) * sigma(wmtgarchfit)
msftweight <- (wmtvar - msftwmtcov) / (msftvar + wmtvar - 2 * msftwmtcov)

Die Schätzung des Aktien-Beta misst das systematische Risiko einer Aktie.
Definiert als Kovarianz der Aktienrendite mit der Marktrendite, geteilt durch die Varianz der Marktrendite
$$ \beta_{t} = \frac{\textnormal{Kovarianz zwischen Aktienrendite und Marktrendite}}{\textnormal{Varianz der Marktrendite}} $$
Wird zur Berechnung der Risikoprämie benötigt. Je höher, desto riskanter die Aktie und desto höher die geforderte Rendite.
Für US-Aktien ist die Marktrendite die Rendite des S&P 500.
Berechne die Kovarianz zwischen MSFT- und S&P-500-Renditen
msftsp500cor <- as.numeric(cor(stdmsftret, stdsp500ret))
msftsp500cov <- msftsp500cor * sigma(msftgarchfit) * sigma(sp500garchfit)
Berechne die Varianz der S&P-500-Renditen
sp500var <- sigma(sp500garchfit) ^ 2
Berechne das Beta
msftbeta <- msftsp500cov / sp500var

GARCH-Modelle in R