ПочатиПочніть безкоштовно

Часовий ряд дохідності портфеля

У попередній вправі ви створили змінну returns на основі щоденних цін акцій Apple і Microsoft. У цій вправі ви створите два портфелі, використовуючи створені раніше ряди дохідності. Портфелі відрізнятимуться в одному — у вагових коефіцієнтах активів.

В останньому відео ви познайомилися з двома стратегіями зважування: стратегією «купити й утримувати» та щомісячним ребалансуванням. У цій вправі ви створите один портфель без ребалансування та один із щомісячним ребалансуванням. Потім візуалізуєте дохідність обох портфелів.

Для обчислень ви скористаєтеся функцією Return.portfolio(). Для цієї функції потрібно надати три аргументи: R, weights і rebalance_on. R — це часовий ряд дохідності, weights — вектор ваг активів, а rebalance_on визначає календарний період ребалансування. Якщо потрібна допомога, обов'язково перегляньте документацію, натиснувши на назву функції!

У цій вправі ви працюватимете з даними returns, які вже завантажено у ваш робочий простір.

Ця вправа є частиною курсу

Вступ до аналізу портфеля в R

Переглянути курс

Інструкції до вправи

  • Створіть вектор ваг для двох однаково зважених активів під назвою eq_weights. Пам'ятайте, що сума ваг має дорівнювати 1.
  • Створіть портфель за стратегією «купити й утримувати» за допомогою Return.portfolio(). Зверніть увагу: період ребалансування вказувати не потрібно. Назвіть його pf_bh.
  • Створіть портфель зі щомісячним ребалансуванням ваг. Використайте Return.portfolio() з аргументом rebalance_on = "months". Назвіть його pf_rebal.
  • Побудуйте часовий ряд кожного портфеля за допомогою plot.zoo(). Код par(mfrow = c(2, 1), mar = c(2, 4, 2, 2)) використовується для організації створюваних графіків. Не змінюйте цей код.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create the weights
eq_weights <- c(___, ___)

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

# Create a portfolio rebalancing monthly 


# Plot the time-series
par(mfrow = c(2, 1), mar = c(2, 4, 2, 2))
plot.zoo(___)
plot.zoo(___)
Редагувати та запускати код