LoslegenKostenlos starten

Benutzerdefinierte Zielfunktion

Ein zentrales Merkmal von PortfolioAnalytics ist, dass der Name einer Zielgröße eine gültige R-Funktion ist. Das Paket wurde flexibel und modular entwickelt, und benutzerdefinierte Zielfunktionen sind ein gutes Beispiel dafür. Beim Definieren einer benutzerdefinierten Momentenfunktion solltest du ein paar Richtlinien beachten:

  • Die Zielfunktion muss einen einzelnen Wert zurückgeben, den der Optimierer minimiert oder maximiert.
  • Es wird nachdrücklich empfohlen, R für die Asset-Renditen und weights für die Portfoliogewichte zu verwenden.

Diese Argumentnamen werden automatisch erkannt und effizient verarbeitet. Alle weiteren Argumente für die Zielfunktion kannst du als benannte Liste über arguments in der Funktion add.objective() übergeben.

Diese Übung ist Teil des Kurses

<Kurs>Fortgeschrittene Portfolioanalyse in R</Kurs>
Kurs ansehen

Übungsanweisungen

  • Definiere eine benutzerdefinierte Zielfunktion, die die annualisierte Standardabweichung des Portfolios berechnet.

Interaktive praktische Übung

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

# Custom annualized portfolio standard deviation
pasd <- function(___, ___, sigma, scale = 12){
  sqrt(as.numeric(t(___) %*% ___ %*% ___)) * sqrt(scale)
}
Code bearbeiten und ausführen