Začněte nyníZačněte zdarma

Odhady výběrových momentů

Výchozí metodou pro odhadování momentů portfolia je výběrová metoda. Momenty se vypočítávají v optimize.portfolio() vyhodnocením funkce předané argumentu momentFUN. Výchozí hodnotou pro momentFUN je set.portfolio.moments(), která standardně počítá výběrové momenty. Tyto momenty pak slouží jako vstupy pro účelové funkce. To, které momenty je třeba odhadnout, závisí na zvolených cílech. Například cíl minimalizovat směrodatnou odchylku portfolia vyžaduje pouze odhad druhého momentu. Naproti tomu cíl maximalizovat Sharpeho poměr vyžaduje odhad prvního i druhého momentu. Výběrové odhady momentů mají svá úskalí – patří mezi ně chyba odhadu a prokletí dimenzionality. S rostoucím počtem aktiv a odhadovaných parametrů se riziko chyby odhadu zvyšuje.

Toto cvičení je součástí kurzu

Intermediate Portfolio Analysis in R

Zobrazit kurz

Pokyny k cvičení

  • Přidej výnosový cíl s názvem "mean" jako názvem účelové funkce.
  • Vypočítej výběrové momenty pomocí set.portfolio.moments. Výsledek přiřaď do proměnné moments.
  • Ověř, zda se první moment rovná výběrovému odhadu průměrných výnosů.
  • Přidej rizikový cíl s názvem "StdDev" jako názvem účelové funkce.
  • Vypočítej výběrové momenty pomocí set.portfolio.moments. Výsledek přiřaď do proměnné moments.
  • Ověř, zda se druhý moment rovná výběrovému odhadu matice rozptylu a kovariance.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Add a return objective with "mean" as the objective name
port_spec <- add.objective(portfolio = port_spec, type = ___, name = ___)

# Calculate the sample moments
moments <- set.portfolio.moments(R = ___, portfolio = ___)

# Check if moments$mu is equal to the sample estimate of mean returns
moments$mu == colMeans(asset_returns)

# Add a risk objective with "StdDev" as the objective name
port_spec <- add.objective(portfolio = port_spec, type = ___, name = ___)

# Calculate the sample moments using set.portfolio.moments. Assign to a variable named moments.
moments <- set.portfolio.moments(R = ___, portfolio = ___)

# Check if moments$sigma is equal to the sample estimate of the variance-covariance matrix
moments$sigma == cov(asset_returns)
Upravit a spustit kód