LoslegenKostenlos starten

Das mean-variance-effiziente Portfolio finden

Ein mean-variance-effizientes Portfolio erhältst du, indem du die Portfoliovarianz minimierst, unter der Nebenbedingung, dass die erwartete Portfoliorendite einer Zielrendite entspricht. Eine praktische R-Funktion dafür ist portfolio.optim() aus dem R-Paket tseries. Die Standardimplementierung findet die mean-variance-effizienten Portfoliogewichte unter der Bedingung, dass die Portfoliorendite der Rendite des gleichgewichteten Portfolios entspricht. Das einzige benötigte Argument sind die monatlichen Renditedaten der Portfoliokomponenten, für die die Gewichte bestimmt werden sollen.

Die Variable returns mit den monatlichen Renditen der DJIA-Aktien ist bereits in der Konsole geladen.

Diese Übung ist Teil des Kurses

<Kurs>Einführung in die Portfolioanalyse in R</Kurs>
Kurs ansehen

Übungsanweisungen

  • Lade die Library tseries.
  • Erstelle mit der Standardeinstellung von portfolio.optim() ein mean-variance-effizientes Portfolio auf Basis monatlicher Renditen, das auf die Rendite des gleichgewichteten Portfolios abzielt, und weise die Ausgabe der Variable opt zu.
  • Erstelle einen Vektor mit Gewichten aus deinem optimierten Portfolio. Die Portfoliogewichte findest du in opt$pw. Nenne diesen pf_weights.
  • Vergib die Namen der Assets mit dem bereitgestellten Code.
  • Wähle aus pf_weights die optimalen Gewichte aus, die größer oder gleich 1 % sind, und nenne sie opt_weights.
  • Verwende barplot(), um die Verteilung von opt_weights zu visualisieren.
  • Gib die erwartete Portfoliorendite (opt$pm) und die Volatilität (opt$ps) des optimierten Portfolios aus.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Load tseries


# Create an optimized portfolio of returns
opt <- portfolio.optim(___)

# Create pf_weights
pf_weights <- ___$pw

# Assign asset names
names(pf_weights) <- colnames(returns)

# Select optimum weights opt_weights
opt_weights <- pf_weights[___ >= 0.01]

# Bar plot of opt_weights


# Print expected portfolio return and volatility
___$pm
___$ps
 
Code bearbeiten und ausführen