Optimalizace s periodickým rebalancováním
Spuštění optimalizace s periodickým rebalancováním a analýza výsledků backtestu mimo trénovací období je důležitým krokem k lepšímu pochopení a případnému upřesnění omezení a cílů. Funkce optimize.portfolio.rebalancing() podporuje optimalizaci s periodickým rebalancováním (backtesting) pro zkoumání výkonnosti mimo trénovací data. Kromě argumentů funkce optimize.portfolio() je nutné zadat frekvenci rebalancování pomocí rebalance_on, počet období pro trénovací data při první optimalizaci pomocí training_period a šířku okna optimalizace pomocí rolling_window. Pokud je rolling_window nastaveno na NULL, každá optimalizace využije všechna data dostupná v daném období.
Aby se zkrátil výpočetní čas, je v tomto cvičení sada náhodných portfolií rp vygenerována s 50 permutacemi a parametr search_size, tedy počet testovaných portfolií, je nastaven na 1000. Při skutečné optimalizaci vlastních portfolií budeš pravděpodobně chtít testovat více portfolií (výchozí hodnota search_size je 20 000)!
Toto cvičení je součástí kurzu
Intermediate Portfolio Analysis in R
Pokyny k cvičení
- Spusť optimalizaci s čtvrtletním rebalancováním. Nastav trénovací období a šířku okna na 60 period. Datová sada obsahuje měsíční data, takže pracujeme s 5 lety historických dat. Výsledek optimalizace ulož do proměnné
opt_rebal. - Vypiš výsledky optimalizace.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Run the optimization backtest with quarterly rebalancing
opt_rebal <- optimize.portfolio.rebalancing(R = ___, portfolio = ___, optimize_method = ___, rp = rp, trace = TRUE, search_size = 1000, rebalance_on = ___, training_period = ___, rolling_window = ___)
# Print the output of the optimization backtest