Dem Oppositus
Dem Oppositus личный блог
04 декабря 2016, 15:49

Калькулятор портфелей Марковица

Всем привет. Я немного вынырнул из небытия. Извиняюсь, что прервал тему про опционы, просто к ней охладел. 

А так — презентую новый проект, Калькулятор доходности портфелей по Марковицу.  Многие видели подобные картинки и знают, что это такое:
Калькулятор портфелей Марковица

Для тех, кто не знает — это кривая риск-доходность портфеля, составленного из 2 инструментов. Марковиц доказал (за что получил Нобеля по экономике), что эта кривая всегда выгнута влево-вверх, и никогда вправо-вниз. То есть, добавление в портфель рисковых высокодоходных инструментов может уменьшить риск портфеля при увеличении прибыльности. Отсюда пошла быть современная портфельная теория.

А теперь можно считать и рисовать на дому! И совершенно бесплатно, в смысле даром! 

Давайте по-порядку.

1. Качаем версию с Гитхаба (ссылка в конце поста), распаковываем. Проверяем на вирусы или читаем исходный код, убеждаемся, что все безопасно. Разблокируем calcaa.cmd через свойства файла и запускаем программу. Да, работает под Виндой и Линуксом. На Маках тоже должно, но не проверял из-за наличия отсутствия.

2. Видим примерно такое:
Калькулятор портфелей Марковица



Добавление данных руками пока не доделано (зато удаление работает! гггг), да и не нужно, думаю. Жмем «Открыть» и открываем CSV файл с данными по инструментам. Рядом с программой лежат примеры. Ниже буду показывать «портфель лежебоки», про который многие тоже слышали.

Все примеры данных я сохранил в таком в таком формате:
Калькулятор портфелей Марковица

Разделитель; текст в " десятичная точка, и 1-м столбце везде даты (в примерах).

3. После открытия файла можно посмотреть и подредактировать данные в таблице, посмотреть корреляции и ковариации (вдруг понадобится?).
Калькулятор портфелей Марковица



4. С неинтересной частью закончили, начинаем рисовать! По кнопке «Портфели (Ctrl+Enter)» открывается окно построения графиков. Жамкаем «Нарисовать»!
Калькулятор портфелей Марковица


И видим характеристики портфелей, составленных с разным процентным соотношением инструментов. По горизонтали — риск портфеля (волатильность), по вертикали — доходность.

5. Режим «Только граница» показывает только портфели на границе эффективности. Те, у которых максимальная доходность при данном риске.
Калькулятор портфелей Марковица



6. Режим «Ребалансировки». Мы ведь не просто покупаем постоянный портфель типа «60% акций + 40% облигаций», но и ребалансируем его (скажем, раз в год) для восстановления пропорций активов. И тут есть такой момент, что портфель на границе эффективности вовсе не обязательно самый доходный с учетом ребалансировок. Вот эта кнопка и позволяет раскрасить график и посмотреть доходность портфелей с учетом ребалансировок:
Калькулятор портфелей Марковица


7. Задание ограничений. В таблице над кнопками можно указать минимальные и максимальные веса инструментов для расчета. Допустим, мы «строго по Грэхему» хотим в портфеле акции и облигации в пределах 25-75% каждые. И не более 15% золота на всякий случай. Вводим и смотрим, что получается:
Калькулятор портфелей Марковица

9. Сравнение портфелей и ограничение срока графика. Если такая неприятная штука. Корреляции инструментов в будущих периодах будут не такие, как на истории. Поэтому портфель, который сейчас находится на границе эффективности, в будущем с этой границы уйдет. Допустим, мы в 2005-м году провели расчет и получили такие данные (это уже данные по индексам MSCI развитых рынков — см msci_year_dm.csv). Выбрали портфель на границе эффективности и хотим посмотреть, как он себя повел бы:
Калькулятор портфелей Марковица


Вводим параметры этого портфеля в стоку таблицы «Сравнить» и снова жмем «Нарисовать». Получится так (портфель из строки «Сравнить» нарисован черным):
Калькулятор портфелей Марковица


Теперь меняем даты, и смотрим, как этот портфель повел бы себя с 2006-го по 2015-й:
Калькулятор портфелей Марковица


Видно, что портфель уже больше не на границе, а довольно далеко от нее. 

Более подробно, с рисунками и обсуждением, у меня в ЖЖ: http://oppositus.livejournal.com/409878.html
http://oppositus.livejournal.com/410305.html
http://oppositus.livejournal.com/410911.html

10. Напоследок, если кликнуть по портфелю в графике портфелей, можно посмотреть его доходность:
Калькулятор портфелей Марковица


11. Кнопка «Прогноз» (с картинки выше) сравнивает реальную доходность с расчетной. Кнопка «Ребалансировки» переключает график в режим сравнения доходности портфеля «просто купил-и-держу» с портфелем, который ребалансируется раз в период:
Калькулятор портфелей Марковица



Вот основные функции калькулятора на сегодня. Остальное в справке на Гитхабе: https://github.com/Oppositus/CalculatorAA

Качать отсюда: https://github.com/Oppositus/CalculatorAA/tree/master/builds Старые билды качать не имеет смысла, берите 1.5 или более свежие, когда появятся.

Лицензия MIT. Это значит, что можно использовать как угодно и где угодно, в том числе в коммерческой деятельности.

Вопросы, замечания, предложения — пишите сюда, или в ЖЖ. Баги тоже пишите, сюда или в багрекер на Гитхабе.

Надеюсь, кому-нибудь пригодится. Раз уж идут разговоры о том, «что в последнее время стало много инвесторов» — инвестируйте правильно. :)

Всем чмоки!
34 Комментария
  • baron_samedi
    04 декабря 2016, 16:45
    eto delo!
  • Григорий
    04 декабря 2016, 17:02
    Интересно, спасибо!
  • iddqd3n
    04 декабря 2016, 17:10
    Калькулятор — крут :) Хотя не так полезен, как его пиарят, из-за невозможности знать будущие параметры. Поэтому от года к году рекомендует разное. У меня аналог в электронной таблице зафигачен, но попроще.

    Портфель лежебоки — на 60% пиар. Это наглядное пособие по СПТ, у него есть вау-эффект, но период и инструменты… Дефолтный год у России + где-то 5 экономических кризисов в те годы (на которых золото и пёрло безоткатно) — это чит. Ещё можно было имхо вместо золота нефть брать, стрельнуло бы солиднее :)
  • Самокритичный трейдер
    04 декабря 2016, 17:26
    А теперь тоже самое и как для дебилов:)

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн