Funcție obiectiv personalizată
Una dintre caracteristicile-cheie ale PortfolioAnalytics este că numele unui obiectiv trebuie să fie o funcție R validă. Pachetul a fost conceput să fie flexibil și modular, iar funcțiile obiectiv personalizate sunt un exemplu excelent în acest sens. La definirea unei funcții moment personalizate, trebuie respectate câteva reguli:
- Funcția obiectiv trebuie să returneze o singură valoare, pe care optimizatorul să o minimizeze sau să o maximizeze.
- Este recomandat să folosești
Rpentru randamentele activelor șiweightspentru ponderile portofoliului.
Aceste nume de argumente sunt detectate automat și procesate eficient. Orice alte argumente pentru funcția obiectiv pot fi transmise ca listă cu nume în arguments, în cadrul funcției add.objective().
Acest exercițiu face parte din cursul
Analiză intermediară a portofoliului în R
Instrucțiuni pentru exercițiu
- Definește o funcție obiectiv personalizată pentru a calcula deviația standard anualizată a portofoliului.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Custom annualized portfolio standard deviation
pasd <- function(___, ___, sigma, scale = 12){
sqrt(as.numeric(t(___) %*% ___ %*% ___)) * sqrt(scale)
}