Zacznij terazZacznij za darmo

Szereg czasowy wag

W poprzednim ćwiczeniu poznałeś funkcję Return.portfolio() i utworzyłeś portfele z zastosowaniem dwóch strategii. Ustawiając argument verbose = TRUE w funkcji Return.portfolio(), możesz jednak uzyskać nie tylko zwroty z portfela i wkłady poszczególnych aktywów, ale też listy wag i wartości na początku okresu (BOP) oraz na końcu okresu (EOP).

Dostęp do tych danych uzyskasz z obiektu listy zwracanego przez Return.portfolio(). Lista zawiera następujące elementy: $returns, $contributions, $BOP.Weight, $EOP.Weight, $BOP.Value oraz $EOP.Value.

W tym ćwiczeniu ponownie zbudujesz portfele z poprzedniego ćwiczenia, tym razem rozszerzając obliczenia o pełną listę wyników za pomocą verbose = TRUE. Następnie zwizualizujesz wagi akcji Apple na koniec okresu.

Obiekt returns jest już wczytany do twojego środowiska pracy.

To ćwiczenie jest częścią kursu

Wprowadzenie do analizy portfela w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Zdefiniuj wektor eq_weights dla dwóch aktywów o równych wagach.
  • Utwórz portfel zwrotów, stosując strategię kup i trzymaj, z ustawieniem verbose = TRUE. Nazwij go pf_bh.
  • Utwórz portfel zwrotów, stosując strategię miesięcznego rebalansowania, z ustawieniem verbose = TRUE. Nazwij go pf_rebal.
  • Utwórz nowy obiekt o nazwie eop_weight_bh, używając wag na koniec okresu z pf_bh.
  • Utwórz nowy obiekt o nazwie eop_weight_rebal, używając wag na koniec okresu z pf_rebal.
  • Wykreśl wagi akcji Apple na koniec okresu z eop_weight_bh za pomocą plot.zoo(), a następnie wagi akcji Apple na koniec okresu z eop_weight_rebal za pomocą plot.zoo(). Kod par(mfrow = c(2, 1), mar = c(2, 4, 2, 2)) służy do rozmieszczenia wykresów – nie zmieniaj go.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Create the weights
eq_weights <-

# Create a portfolio using buy and hold
pf_bh <- Return.portfolio(returns, weights = eq_weights, ___ )

# Create a portfolio that rebalances monthly
pf_rebal <- Return.portfolio(returns, weights = eq_weights, rebalance_on = "months", ___ )

# Create eop_weight_bh


# Create eop_weight_rebal


# Plot end of period weights
par(mfrow = c(2, 1), mar=c(2, 4, 2, 2))
plot.zoo(___$AAPL)
plot.zoo(___$AAPL)
Edytuj i uruchom kod