Das Minimum-Varianz- und das Maximum-Sharpe-Ratio-Portfolio
In den vorherigen Übungen hast du die effiziente Grenze mit einem Raster aus Zielrenditen berechnet. Das Ergebnis deiner Berechnung war eine Reihe aus zwei Vektoren, vpm (Vektor der Portfoliomittelwerte) und vpsd (Vektor der Standardabweichungen bzw. Volatilitäten), sowie eine Gewichtungsmatrix namens mweights. Du wirst diese Ergebnisse nutzen, um die Portfolios mit der geringsten Volatilität und der höchsten Sharpe-Ratio zu identifizieren und anschließend ihre Gewichtsallokationen zu visualisieren.
Zur Erinnerung: Die Sharpe-Ratio erhältst du, indem du die Überschussrenditen (über dem risikofreien Zinssatz) durch die Portfoliovolatilität teilst.
Diese Übung ist Teil des Kurses
<Kurs>Einführung in die Portfolioanalyse in R</Kurs>Übungsanweisungen
- Erstelle
weights_minvar, also die Zeile inmweights, in der die Standardabweichung minimiert wird(vpsd == min(vpsd)). - Berechne die Sharpe-Ratio der Portfoliorenditen, wenn der risikofreie Zinssatz 0,75 % beträgt. Nenne dies
vsr. - Erstelle
weights_max_srals die Zeile inmweights, die dem Portfolio mit der maximalen Sharpe-Ratio invsrentspricht. Das lässt sich analog zur ersten Anweisung lösen. - Erstelle ein Säulendiagramm der Gewichte, die im
weights_minvar-Portfolio größer als 1 % sind, und erstelle ein Säulendiagramm der Gewichte, die imweights_max_sr-Portfolio größer als 1 % sind.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Create weights_minvar as the portfolio with the least risk
weights_minvar <- mweights[___ == min(___), ]
# Calculate the Sharpe ratio
vsr <- (___ - ___) / vpsd
# Create weights_max_sr as the portfolio with the maximum Sharpe ratio
weights_max_sr <- mweights[___ == max(___)]
# Create bar plot of weights_minvar and weights_max_sr
par(mfrow = c(2, 1), mar = c(3, 2, 2, 1))
barplot(weights_minvar[weights_minvar > 0.01])
barplot(___[___ > 0.01])