Обчислення динамічної дисперсії портфеля
У цій вправі ви попрактикуєтеся обчислювати дисперсію простого портфеля з двох активів із динамічною коваріацією GARCH.
Сучасна теорія портфеля стверджує, що існує оптимальний спосіб формувати портфель, щоб скористатися ефектом диверсифікації. Завдяки цьому можна отримати бажаний рівень очікуваної дохідності за мінімального ризику. Цей ефект особливо помітний, коли коваріація між доходностями активів є від'ємною.
Припустімо, у вас є портфель лише з двох активів: валютні пари EUR/USD і CAD/USD. Їхні дисперсії з моделей GARCH збережено в variance_eur та variance_cad, а коваріацію обчислено й збережено в covariance. Обчисліть загальні дисперсії портфеля, змінюючи ваги двох активів, і візуалізуйте відмінності.
Ця вправа є частиною курсу
Моделі GARCH у Python
Інструкції до вправи
- Задайте вагу EUR/USD
Wa1у портфелі a як 0.9, аWb1у портфелі b як 0.5. - Обчисліть дисперсію
portvar_aдля портфеля a за допомогоюvariance_eur,variance_cadіcovariance; виконайте те саме, щоб обчислитиportvar_bдля портфеля b.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define weights
Wa1 = ____
Wa2 = 1 - Wa1
Wb1 = ____
Wb2 = 1 - Wb1
# Calculate portfolio variance
portvar_a = Wa1**2 * ____ + Wa2**2 * ____ + 2*Wa1*Wa2 *____
portvar_b = Wb1**2 * ____ + Wb2**2 * ____ + 2*Wb1*Wb2*____
# Plot the data
plt.plot(portvar_a, color = 'green', label = 'Portfolio a')
plt.plot(portvar_b, color = 'deepskyblue', label = 'Portfolio b')
plt.legend(loc = 'upper right')
plt.show()