Нашим проектом являлся подсчёт
Также важно уточнить, что мы использовали исторический метод подсчёта, потому что этот метод дает меньше всего ограничений на рассматриваемую выборку и в предосталенных данных распределение доходностей дискретно и взято из уже прошедших лет, то есть до 2022 года включительно.
Перед тем, как начать работу с кодом, мы подключили билиотеки:
-
$openpyxl$ (для чтения файла формата$xslx$ ) -
$pandas$ (для работы с датасетом) -
$numpy$ (для математических выражениях на массивах)
Чтобы воспользоваться датасетом, находящимся в файле формата
df = pd.read_excel('dataset.xlsx', sheet_name='1')
Следующие строчки в этом блоке кода видоизменяют таблицу загруженную в программу (меняют названия колонок, удаляют пустые клетки и двигают индексы). Это было сделано, чтобы упростить и сделать более понятной дальнейшую работу с таблицей.
Перед тем как подсчитать
После подсчета
Алгоритм работы функции:
-
Подсчитывается количество данных в
$ret$ - переменная count -
Находится позиция c номером
$p$ процентов от$count$ - переменная$pos$ -
Берётся среднее значение всех чисел с меньшей позицией (сами значения тоже меньше, чем число, стоящее на
$pos$ благодаря сортирвоке) - это$CVaR$
В итоге получилась функция, которая подсчитывает
Запустив функцию на самом встречаемой вероятности риска (0.01), мы получили результат: 0.9048620951800836
В приложенных файлах можно увидеть написанный код н python.