Categories:

Лытдыбр

Последние пару недель делаю эксельку для расчета риска и прибыли портфелей с учетом ребалансировк – в итоге получается еще и «оптимизатор по-Марковицу с возможностью учета ребалансировок» (что очень важно, и ради чего всё и делалось!). Всё получается, и получается прям крутая игрушка – такого, по-моему, еще никто не делал. «Оптимизаторов по-Марковицу» в интернете – тьма тьмущая, но ни один из них не учитывает ребалансировки портфеля – а ведь это очень важно!

Я еще позже об этом напишу, а пока хочу поделиться забавным наблюдением по ходу процесса.

Если делать перебор по 6 активам по всем портфелям с шагом расчета 10%, то получается:
- чуть более 3 тысяч возможных портфелей,
- файлик объемом 2,3 Мб (в общем, нормально)
- при изменении входных параметров график перерисовывается мгновенно
В общем, все замечательно.

Но стоило мне попробовать уменьшить шаг расчета с 10% до 5%, как я получил:
- более 53 тысяч возможных портфелей
- файлик объемом 24,8 Мб (через интернет уже не просто переслать!)
- при изменении входных параметров график перерисовывается по несколько секунд
- и, что самое ужасное, каждое размножение (копирование) формулы по таблице протяжкой мышки сверху-вниз занимает минут пять. ☹️☹️☹️

И это у меня довольно хороший ноутбук, что будет на более старом компе – боюсь даже предполагать.

А всего-то хотел в два раза увеличить точность. 😊

Так что нефига выбирать активы в портфелях с шагом менее 10! С точки зрения итоговых доходностей и рисков разница между расчетом с шагом долей активов в портфеле 10% и шагом долей активов в портфеле 5% оказывается всего лишь в десятые-сотые доли процента. И эта разница заведомо существенно меньше, чем разница, возникающая вследствие погрешности тех данных (доходностей, рисков, корреляций), которые табличка получает на входе. Однако, сложность расчетов при этом увеличивается экспоненциально!

Мораль: в попытках увеличивать точность важно вовремя остановиться! 😊