Участник:Reshetov/Песочница
Материал из MachineLearning.
Содержание |
Принципы математической модели R-Portfolio
Предположим, что у нас есть OHLC котировки ценных бумаг за некий длительный период в виде таймфрема (таймфрейм – более мелкие периоды, например, за одну торговую сессию).
Создадим таблицу, где столбцы – это ценные бумаги, строки – это элементарные периоды таймфрейма, а пересечения строк и столбцов – доход ценной бумаги за элементарный период таймфрейма в денежных единицах, например, разница цен открытия между текущим и предыдущим периодом.
Очевидно, что вышеуказанная таблица является платежной матрицей для антагонистической игры двух лиц с нулевой суммой из математической теории игр, где игрок по столбцам – это инвестор, а игрок по строкам – остальные участники рынка, принимавшие участие в ценообразовании ценных бумаг, включенных в платёжную матрицу.
Не менее очевидно, что если решить платежную матрицу для максимизации стратегии игрока по столбцам, мы получим оптимизированный по MiniMax инвестиционный портфель длинных ценных бумаг.
Перенормируем стратегию игрока по столбцам, т.е. взяв количество отдельной ценной бумаги и разделив её на сумму всех бумаг в портфеле, получим долю инвестиций для данной ценной бумаги в денежных единицах.
Первоначальная версия
Первая версия метода R-Portfolio была создана по вышеуказанному алгоритму. В качестве программной реализации вычисления стратегий по платёжной матрице использовался метод Брауна-Робинсон.
Усовершенствование алгоритма
Основным недостатком первой версии метода R-Portfolio, являлась невозможность вычисления стратегии таким образом, чтобы в инвестиционный портфель можно было включить не только длинные, но и короткие ценные бумаги.
Проблема была решена элементарно, а именно таблица по количеству столбцов была расширена вдвое, т.е. для каждой отдельной ценной бумаги выделялся дополнительный столбец, все значения в котором были отрицательны (умножены на минус единицу) по отношению к значениям первоначальных столбцов.
После получения максимизирующей стратегии для игрока по столбцам, количество ценных бумаг, полученных для дублирующего столбца с отрицательными значениями для ценной бумаги, вычиталось из значения первоначального столбца для этой же ценной бумаги.
Этот метод в точности соответствует аналогии взаимозачётов, принятой на биржевых площадках, когда после завершения торговой сессии, все открытые объемы коротких контрактов для одного и того же трейдера и одного и того же финансового инструмента вычитаются из объемов открытых коротких контрактов того же самого трейдера и по тому же самому финансовому инструменту. Результирующий после вычитания объем, является оставшимся (фактическим) объемом открытых контрактов для трейдера по финансовому инструменту (если значение положительно, то позиция длинная, если отрицательный – то короткая). После этого взаимоперекрывающиеся длинные и короткие открытые контракты на счету трейдера закрываются. В результате такого взаимозачета прибыль оставшихся открытых контрактов в точности равна прибыли по всем прежним открытым контрактам до взаимозачёта. Т.е. суть не меняется, а меняется только объем контрактов в меньшую сторону, за счёт закрытия лишних контрактов.
Точно также и в R-Portfolio, взаимоперекрывающиеся длинные и короткие объемы для одной и той же ценной бумаги являются лишними и они удаляются из портфеля.
Дальнейшее усовершенствование R-Portfolio
При внимательном рассмотрении платежной матрицы, можно заметить, что если ориентироваться на доход ценной бумаги, то оптимальность инвестиций портфеля не является корректной. Причиной тому является игнорирование начальной стоимости ценных бумаг.
Например, две ценные бумаги с разными начальными стоимостями имеют одинаковый доход за некий период времени. В этом случае выгоднее инвестировать в бумагу с меньшей начальной стоимостью, т.к. её доходность, т.е. отношение прибыли к объему инвестиций заведомо выше.
По этой причине в последующей версии R-Portfolio было решено заполнять платежную матрицу не размером дохода ценных бумаг за период времени, а размером доходности по формуле:
Profitable = (Pricet+1 – Pricet) / Pricet
Где: Profitable - доходность ценной бумаги за период времени от t до t+1 Pricet – стоимость спроса ценной бумаги для периода времени t по цене открытия бара для заданного таймфрейма.
Достоинства и недостатки R-Portfolio
Недостатки:
- Оптимальность по MiniMax игнорирует доходность портфеля.
- Финансовые рынки по определению являются нестационарными средами, из-за чего любая математическая модель оптимизированная на исторических данных может оказаться непригодной в будущем по причине переобучения. По этой причине необходимо дополнительно тестировать портфель по методу скользящего контроля.
Достоинства:
- Поскольку оптимальность по MiniMax сводится к максимизации наиболее худшего показателя для портфеля, то в данном случае вычисленный инвестиционный портфель является наименее рискованным за расчетный период времени.
Зарубежные аналоги
Наиболее распространенным зарубежным аналогом является эконометрическая модель CARM (Capital Asset Pricing Model), предложенная Уильямом Шарпом.
Также в портфельном менеджменте используется модифицированная от CARM модель ICARM (Intertemporal CAPM), предложенная Робертом Мертоном.
Литература
- Sharpe, William F. (1964). "Capital Asset Prices - A Theory of Market Equilibrium Under Conditions of Risk". Journal of Finance XIX (3): 425–42.
- Merton, R.C., (1973), An Intertemporal Capital Asset Pricing Model. Econometrica 41, Vol. 41, No. 5. (Sep., 1973), pp. 867–887
Ссылки
Сайт программной реализации метода R-Portfolio на sourceforge.net (лицензия GPL)