ÎncepețiÎncepe gratuit

Optimizare cu funcție obiectiv personalizată

Acest exercițiu se bazează pe exercițiul anterior: vom rula optimizarea folosind funcția obiectiv personalizată care calculează deviația standard anualizată a portofoliului. Deoarece o funcție obiectiv poate fi orice funcție R validă, adăugăm un obiectiv de risc pentru funcția pasd(). Funcția set.portfolio.moments() nu va recunoaște numele obiectivului pasd(), astfel că trebuie să creăm o funcție de momente personalizată pentru a calcula momentul de ordinul doi, sigma. Vom rezolva problema utilizând portofolii aleatorii ca metodă de optimizare.

Acest exercițiu face parte din cursul

Analiză intermediară a portofoliului în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Adaugă funcția obiectiv personalizată creată în exercițiul anterior la obiectul de specificare a portofoliului.
  • Afișează obiectul de specificare a portofoliului pentru a vedea constrângerile și obiectivul.
  • Rulează optimizarea. Numele funcției de momente personalizate este set_sigma.
  • Afișează rezultatele optimizării.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.


# Add custom objective to portfolio specification
port_spec <- add.objective(portfolio = ___, type = ___, name = ___)

# Print the portfolio specificaton object


# Run the optimization
opt <- optimize.portfolio(R = ___, portfolio = ___, momentFUN = ___, optimize_method = "random", rp = rp)

# Print the results of the optimization

Editează și rulează codul