Симуляция портфеля — Часть I
В следующих нескольких упражнениях вы рассчитаете ожидаемую доходность инвестиционного портфеля и оцените степень её неопределённости.
Предположим, вы вложили 10 000 долларов в портфель, состоящий из нескольких акций, и хотите оценить его результаты за 10 лет. Вы можете задавать ожидаемую ставку доходности и волатильность (стандартное отклонение ставки доходности). Будем считать, что ставка доходности подчиняется нормальному распределению.
Для начала напишем функцию, которая принимает на вход начальный капитал (первоначальные инвестиции), количество лет, ожидаемую ставку доходности и волатильность, а возвращает итоговую стоимость портфеля через 10 лет.
По завершении упражнения у вас будет готовая функция для оценки эффективности портфеля.
Это упражнение является частью курса
Статистическое моделирование на Python
Инструкции к упражнению
- В определении функции укажите четыре аргумента: количество лет
yrs, ожидаемую ставку доходностиavg_return, волатильностьsd_of_returnи начальный капиталprincipal. - Смоделируйте ставки доходности
ratesдля каждого года как нормальную случайную величину. - Инициализируйте переменную
end_returnзначениемprincipal. В циклеforувеличивайтеend_returnна величину ставки доходности за каждый год. - Используйте функцию
portfolio_return(), чтобы вычислить и вывести на экран результатresult.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# rates is a Normal random variable and has size equal to number of years
def portfolio_return(____):
np.random.seed(123)
rates = ____(loc=avg_return, scale=sd_of_return, size=yrs)
# Calculate the return at the end of the period
end_return = ____
for x in rates:
end_return = end_return*(1+____)
return end_return
result = portfolio_return(yrs = 5, avg_return = 0.07, sd_of_return = 0.15, principal = 1000)
print("Portfolio return after 5 years = {}".format(____))