LoslegenKostenlos starten

Gewichtsbeschränkungen festlegen

Anleger sind oft durch maximale Werte für die Portfoliogewichte eingeschränkt. Diese Beschränkungen können tatsächlich ein Vorteil sein. Der Vorteil einer Obergrenze für Gewichte ist, dass das resultierende Portfolio weniger stark auf bestimmte Anlagen konzentriert ist. Es gibt jedoch auch einen Nachteil: Das gleiche Zielrendite-Niveau ist möglicherweise nicht mehr erreichbar oder wird nur auf Kosten einer höheren Volatilität erzielt.

Erinnere dich aus der vorherigen Übung: Die Funktion portfolio.optim() ermöglicht es dir, Gewichtsbeschränkungen über das Argument reshigh zu setzen. reshigh erwartet einen Vektor mit den maximalen Gewichten für jede Anlage.

In dieser Übung erstellst du drei Portfolios mit unterschiedlichen Obergrenzen für die Gewichte. Für diese Übung ist die Ausgabe der Funktion portfolio.optim() wichtig. Diese Funktion erzeugt eine Liste mit vier Komponenten: (i) $pw: die Portfoliogewichte, (ii) $px: die Renditen des Gesamtportfolios, (iii) $pm: die erwartete Portfoliorendite, (iv) $ps: die Standardabweichung der Portfoliorenditen.

Diese Übung ist Teil des Kurses

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

Übungsanweisungen

  • Erstelle drei Vektoren mit maximalen Gewichten für jede Anlage (Spalte) in returns mithilfe der Funktion rep(). Der erste Vektor enthält maximale Gewichte von 100 %, der zweite 10 % und der dritte 5 %. Nenne sie entsprechend max_weights1, max_weights2, max_weights3.
  • Erstelle ein optimales Portfolio mit maximalen Gewichten von 100 % und nenne es opt1.
  • Erstelle ein optimales Portfolio mit maximalen Gewichten von 10 % und nenne es opt2.
  • Erstelle ein optimales Portfolio mit maximalen Gewichten von 5 % und nenne es opt3.
  • Berechne für jedes Portfolio, wie viele Anlagen ein Gewicht von mehr als 1 % haben. Greife auf die Gewichte über $pw nach dem Portfolionamen zu.
  • Gib die Volatilitäten (Standardabweichungen $ps) der drei erstellten Portfolios aus.

Interaktive praktische Übung

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

# Create vectors of maximum weights
max_weights1 <- rep(1, ncol(returns))
max_weights2 <- ___
max_weights3 <- ___

# Create an optimum portfolio with max weights of 100%
opt1 <- portfolio.optim(___, reshigh = ___)

# Create an optimum portfolio with max weights of 10%


# Create an optimum portfolio with max weights of 5%


# Calculate how many assets have a weight that is greater than 1% for each portfolio
sum(opt1$pw > .01)
sum(___$pw > .01)
sum(___$pw > .01)

# Print portfolio volatilites 
opt1$ps
___$__
___$__

Code bearbeiten und ausführen