Научная статья на тему 'Использование методов машинного обучения для построения оптимального портфеля ценных бумаг'

Использование методов машинного обучения для построения оптимального портфеля ценных бумаг Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1592
273
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НЕЙРОННЫЕ СЕТИ / СЕТЬ ХОПФИЛДА / ОПТИМАЛЬНЫЙ ПОРТФЕЛЬ / ПОРТФЕЛЬ МАРКОВИТЦА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Галкина Светлана Андреевна

Для задачи построения оптимального портфеля ценных бумаг выработано множество методов, многие из которых так или иначе опираются на классическую модель Марковитца. В последние годы возрастающую популярность для решения широкого круга задач приобретают методы машинного обучения, в частности, нейронные сети. Целью данной работы является сравнение эффективности данных методов, а также сопоставление полученных портфелей с рыночным портфелем, сформированным с помощью экспертных оценок

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Использование методов машинного обучения для построения оптимального портфеля ценных бумаг»

Использование методов машинного обучения для построения оптимального портфеля ценных бумаг

Галкина Светлана Андреевна

Аннотация—Для задачи построения оптимального портфеля ценных бумаг выработано множество методов, многие из которых так или иначе опираются на классическую модель Марковитца. В последние годы возрастающую популярность для решения широкого круга задач приобретают методы машинного обучения, в частности, нейронные сети. Целью данной работы является сравнение эффективности данных методов, а также сопоставление полученных портфелей с рыночным портфелем, сформированным с помощью экспертных оценок.

Ключевые слова—нейронные сети, сеть Хопфилда, оптимальный портфель, портфель Марковитца

I. Введение

Для задачи построения оптимального портфеля ценных бумаг в научной литературе найдено множество решений, многие из которых, так или иначе, базируются на классической модели Марковитца. В последние годы становится популярной техника машинного обучения, в частности, нейронные сети, предоставляющие широкие возможности для решения задач оптимизации, к классу которых и относится задача построения оптимального портфеля.

В данной области уже предпринято множество попыток решения данной задачи с помощью нейронных сетей. При этом исследования такого рода можно разбить на два класса: в одном случае авторы рассматривают эффективность портфеля, построенного с помощью спрогнозированных (а не фактических) значений курсов акций бумаг, входящих в портфель (прогноз, как правило, строится с помощью сетей обратного распространения либо комбинации этого метода с классическими эконометрическими методами). Эффективность этой методики обосновывается в достаточном количестве работ и не является предметом изучения в данной статье [1] [2]. В ином качестве нейронные сети используются для непосредственного построения портфеля, то есть для нахождения весов, с которыми ценные бумаги входят в портфель. Для

Статья получена 18 мая 2014 года. Статья представляет собой результат работы над магистерской диссертацией.

Галкина Светлана, Московский Государственный Университет им. М. В. Ломоносова, факультет вычислительной математики и кибернетики (e-mail: [email protected]).

решения данной задачи хорошо подходит так называемая сеть Хопфилда, имеющая несколько иную структуру, чем широко используемый многослойный перцептрон. Обучение сети происходит в один этап, далее сеть не переобучается. При обучении сети нейронные веса задаются таким образом, чтобы обеспечить минимальное значение энергетической функции, основной характеристики сети.

Научная новизна данной работы состоит в объединении двух описанных выше подходов. Сначала для курсов ценных бумаг, выбранных для построения портфеля, строится прогноз на несколько периодов вперёд, чтобы обеспечить уже доказанную в предыдущих работах по данной тематике более высокую эффективность полученного портфеля. Затем строятся два портфеля: с помощью модели Марковитца и путём построения нейронной сети Хопфилда с предпосылками, несколько иными, нежели в классической модели Марковитца. Полученные портфели сравниваются между собой, а также с индексом отрасли, играющим роль рыночного портфеля, по показателям средней доходности и стандартного отклонения.

Исследование проводится на примере российского рынка телекоммуникаций.

II. Описание метода

А. Портфель Марковитца

Пусть Y - случайная величина, которая может принимать значения у2.........ул- с вероятностями

Р1' Й....

Математическое ожидание Y:

* = }Г1Й + Л й + ■ + >'*й

Дисперсия Y:

Рассмотрим случайные величиныНк. Их линейная комбинация R:

И - + а2И2+... +иЛ-ЯЛ-

тоже является случайной величиной. Её математическое ожидание:

Дисперсия:

где с.; - коэффициент ковариации между І?,- и .

Предположим, что - доход, получаемый от ьй

ценной бумаги. Пусть - математическое ожидание И.;

Ну - коэффициент ковариации между Д, и (таким образом, 17ц - дисперсия #>). Пусть Щ - доля, которую 1я ценная бумага занимает в портфеле инвестора. Тогда доход от портфеля в целом выражается как:

Я

В дальнейшем будем рассматривать как случайную величину. не является случайной величиной - доля актива в портфеле выбирается и фиксирована инвестором. Таким образом, для целей дальнейшего анализа целесообразно ввести следующие условия:

щ > о

Из предыдущих наблюдений получаем математическое ожидание и дисперсию портфеля:

■те

Таким образом, задачу формирования оптимального портфеля можно свести к задаче линейного программирования [10]. При этом в зависимости от характера ценных бумаг, в которые осуществляется инвестирование, следует решать либо задачу максимизации доходности (выраженной здесь математическим ожиданием дохода от портфеля), либо задачу минимизации риска (т.е. дисперсии дохода от портфеля ценных бумаг).

В. Нейронные сети

Центральная нервная система имеет клеточное строение. Единицей ЦНС является нервная клетка,

называемая нейроном. Биологический нейрон имеет следующие основные свойства:

1. Является динамической системой. Это заключается

в смене внутреннего состояния с течением времени---

нейрон реагирует на входные сигналы и формирует выходные воздействия, при этом происходит рассеивание энергии (т.е. сумма выходных сигналов не равна сумме входных)

2. Нейрон связан с другими нейронами, имеется множество таких связей. Контакты для передачи информации между нейронами называются синапсами.

3. Биологические нейроны взаимодействуют путём обмена электрохимическими сигналами двух видов: электротоническими, которые распространяются с затуханием, и нервными импульсами (спайками), распространяющимися без затухания.

Существуют два подхода к созданию искусственных нейронных сетей. Информационный подход заключается в том, что можно пренебречь тем, какие механизмы лежат в основе работы биологических нейронных сетей. При моделировании необходимо обращать внимание лишь на информационные процессы и их подобность биологическим. Биологический подход заключается в том, чтобы соблюсти биоподобие и детально воспроизвести работу единичного нейрона.

С. Многослойный перценптрон

Формальные нейроны могут объединяться в сети различным образом. Самым распространенным видом сети стал многослойный перцептрон [3]. Многослойный перцептрон - нейронная сеть, состоящая из произвольного количества слоёв нейронов. Слои делятся на три группы:

• сенсорный, или входной, слой;

• внутренние скрытые, или ассоциативные, слои;

• результативный, или выходной, слой.

Нейроны каждого слоя соединяются с нейронами последующего и предыдущего слоёв по принципу "каждый с каждым".

Количество нейронов в слоях может быть произвольным. Обычно во всех скрытых слоях одинаковое количество нейронов.

Таким образом, мы имеем:

• вектор исходных значений X , подаваемых на входной слой

• результирующее значение для данного входного вектора

Работу многослойного перцептрона можно описать формулами:

*УС!+1] — К,

где индексом 1 обозначается номер входа, ] — номер нейрона в слое, 1 — номер слоя.

- входной сигнал от 1-го нейрона слоя 1-1 к ]-му нейрону слоя 1. Вектор Хр - вектор входных значений для слоя 1;

- весовой коэффициент сигнала от 1-го нейрона СЛОЯ 1-1 К ]-Му нейрону СЛОЯ 1 . Вектор - вектор весовых коэффициентов входных значений для слоя 1;

■ ;; - суммарный входной сигнал для ]-го нейрона слоя

1, значение которого передаётся на нелинейный элемент;

- пороговый уровень ]-го нейрона в слое 1;

- выходной сигнал для ]-го нейрона слоя 1.

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

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

О. Сеть Хопфилда

Для решения задачи нахождения оптимального портфеля при задании образцового хорошо подходит нейронная сеть Хопфилда [9]. При построении такой сети определяется функционал энергии, и её состояние определяется путём расчёта минимума такого функционала. Сеть была предложена Джоном Хопфилдом в 1982 году.

Нейронная сеть Хопфилда состоит из N искусственных нейронов. Являясь нейронами с пороговой функцией активации, нейроны данной сети могут инициировать только два выходных значения: 1 или -1.

Нейрон подаёт на выход значение 1, если значение функции активации превышает некоторое значение 0; и -1 в обратном случае.

Алгоритм обучения сети Хопфилда существенно отличается от таких классических алгоритмов обучения перцептронов, как метод коррекции ошибки или метод обратного распространения ошибки. Отличие заключается в том, что вместо последовательного приближения к нужному состоянию с вычислением ошибок, все коэффициенты матрицы рассчитываются за один цикл, после чего сеть сразу готова к работе. Вычисление коэффициентов основано на следующем правиле: для всех запомненных образов Х1 матрица связи должна удовлетворять уравнению

Х^ = шХ{

поскольку именно при этом условии состояния сети X| будут устойчивы.

Это приводит нас к простому неитерационному методу расчёта параметров сети.

^ £ **** н: = 1_,т

где w - матрица, составленная из весов нейронов, а ш

- количество запоминаемых образов.

Матрица взаимодействия w является симметричной (нейрон і действует на нейрон ] так же, как нейрон ] на нейрон і), при этом для исключения влияния нейронов на самих себя главная диагональ матрицы заполнена нулями.

Можно определить понятие энергии сети, как:

“ 2 1 1

Каждому запомненному образу в таком случае соответствует локальный энергетический минимум.

Функция активации нейронов имеет вид:

ч =

Тогда:

= (—1, >0, 1, в,- < О

Входной образ присваивается сети, как начальное приближение. Затем начинается итерационная процедура, которая в некоторых (не во всех) случаях сходится к устойчивому состоянию. Таким устойчивым состоянием, в большинстве случаев будет один из запомненных образов.

III. Эмпирическое исследование

Данное исследование посвящено сравнению эффективности различных методик нахождения оптимального портфеля.

В решении задачи нахождения оптимального портфеля можно выделить следующие подзадачи:

1. построение прогноза для будущих значений активов. Обзор предыдущих исследований данной тематики показал, что портфель, построенный с помощью анализа спрогнозированных временных рядов, показывает себя лучше, чем тот, что построен по историческим значениям цен активов;

2. построение оптимального по Марковицу портфеля (решение задачи минимизации риска);

3. построение оптимального портфеля путём использования нейронной сети Хопфилда.

Таким образом , можно сравнить три портфеля:

• портфель Марковитца;

• портфель, полученный с помощью нейронной сети Хопфилда;

• рыночный портфель.

Для построения прогноза был использован следующий метод.

Модель, описывающую временной ряд, можно представить как:

У1 = ^ + N.

где Ь( - линейная компонента уравнения, а ЛГГ -нелинейная [8].

После того, как мы построим модель ARIMA для временного ряда, полученная регрессия будет содержать в себе линейный компонент, следовательно остатки содержат нелинейный.

* = Уг ~ Ь

Для моделирования остатков используем нейронную сеть обратного распространения.

Для построения портфеля будут использованы следующие ценные бумаги:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1. Ростелеком (привилегированные акции)

2. Ростелеком (обыкновенные акции)

3. АФК «Система»

4. МТС

5. Таттелеком

Данные взяты с недельной периодичностью, за период с 1 марта 2010 года по 1 марта 2014 года.

A. Обработка данных

На этапе обработки данных предполагается исключить такие искажения данных как сезонная компонента, тренд, случайные выбросы. Для этого необходимо пройти следующие этапы:

• Приведение рядов к одной периодичности.

• Сезонная корректировка.

• Выявление и исключение выбросов.

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

• Кроме того, ряды следует нормализовать, например, путем логарифмирования ряда или деления каждого члена ряда на среднее значение ряда с прибавлением 100 к каждому члену.

Приведение рядов к периодичности не понадобилось, поскольку полные данные по дневным котировкам акций находятся в открытом доступе. Далее ряды были нормализованы и очищены (разложены на составляющие) для получения циклической компоненты каждого из них, участвующей в дальнейшем анализе. Процесс декомпозиции рядов проводился с помощью программного пакета R и включал в себя следующие этапы:

1. Выделение сезонной составляющей;

2. Сглаживание и выделение тренда с помощью фильтра Ходрика-Прескотта.

B. Моделирование линейной компоненты

Для выделения линейной компоненты воспользуемся моделью ARIMA. Каждый анализируемый временной

ряд с помощью модели ARIMA(p,d,q) будет представлен в виде:

р |?

А* = а + щ +. гг

Для подбора параметров модели воспользуемся методологией Бокса-Дженкинса [11], состоящей из трёх этапов.

В первую очередь, необходимо получить стационарный ряд. Ряд может быть проверен на стационарный путём следующих действий:

• визуальный анализ графика временного ряда (обнаружение тренда, сезонности и т.д.);

• визуальный анализ графиков автокорреляционной функции ^СБ) и выборочной автокорреляционной функции (PACF);

• проведение тестов на единичные корни.

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

Для полученного ряда строятся его ACF и PACF, которые позволяют сформулировать гипотезы о возможных порядках авторегрессии (р) и скользящего среднего ^).

С. Моделирование нелинейной компоненты Полученные в прошлой модели остатки будут использованы для моделирования нелинейной компоненты временного ряда.

Для построения прогноза остатков модели ARIMA была использована нейронная сеть обратного распространения с характеристиками (8, 24, 3), то есть во входном слое находится 8 нейронов, в скрытом - 24, и в выходном - 3. Для уточнения коэффициентов каждая сеть проходила примерно 200 итераций.

О. Нахождение оптимального по Марковитцу портфеля

Спрогнозированные значения курсов акций используем для построения оптимального по Марковитцу портфеля. Были получены следующие веса:

Е. Нахождение оптимального портфеля с помощью сети Хопфилда Внесём изменения в модель Марковитца, позволяющие нам лучше описать задачу формирования оптимального портфеля. Для снижения общего риска инвестиций в набор каких-либо активов долю каждого актива имеет смысл ограничить сверху и снизу (ни один из выбранных активов не должен занимать в портфеле слишком много или слишком мало места). Кроме того, мы можем установить прямое ограничение на количество активов в портфеле. Таким образом,

МТ8 42.8853

Система 5.0725

Ростелеком (АО) 16.0931

Ростелеком (АП) 11.0855

Т аттел 24.8635

модифицированная задача оптимизации будет выглядеть следующим образом.

ними более сглажена.

" Лг ' ■ Лг ■

+ а - л) -Уцх,

і«і ТГі ] 1-1 ■

— т:л

^ = 1

£ < X. <5

I

где:

>~;ъ - веса активов, входящих в портфель;

^ - доходность актива 1;

с.. - коэффициент корреляции между активами 1 и ];

У

А - коэффициент, демонстрирующий степень неприятия риска, А е [0, 1|;

£ - нижняя грань веса актива в портфеле;

5 - верхняя грань веса актива в портфеле.

Для решения задачи в данной формулировке нет чёткого алгоритма. При этом её можно сформулировать в терминах сети Хопфилда. Преобразуем целевую функцию в следующий вид:

*1 к*#!!)*; ~ £( 1 “ ™п

Эта функция и энергетическая функция классической сети Хопфилда устроены сходным образом.

ЬіХі

Тогда:

Чтобы удовлетворить ограничению х е Гс'» ■6'], в качестве функции активации используем функцию

6-І

1 + 9-Ъ

поскольку её область определения лежит на данном интервале. Для данной задачи I = 0.1, £ = 0.3.

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

Сравним доходности данных портфелей с доходностью рыночного портфеля (индекса ММВБ Т елекоммуникации).

МТ8 23.9072

Система 21.8256

Ростелеком (АО) 14.8029

Ростелеком (АП) 19.5737

Т аттел 19.8905

На первый взгляд, доходности всех трёх портфелей демонстрируют похожую динамику. Сравним их статистические характеристики.

шах шіп Средняя Стандартное отклонение

Марковитц 0.076 -0.105 0.0016 0.027

Хопфилд 0.079 -0.104 0.0012 0.028

Индекс ММВБ 0.068 -0.142 0.0013 0.030

IV. Выводы

В портфеле, полученном с помощью сети Хопфилда, веса ранжированы тем же образом, что и в оптимальном портфеле Марковитца, однако за счёт введённых ограничений на долю актива в портфеле, разница между

Характеристики трёх портфелей достаточно близки, однако можно сделать некоторые выводы. Наиболее рискованным (с наибольшим стандартным отклонением) является индекс ММВБ Телекоммуникации. Лучшие показатели по соотношению риск/прибыль демонстрирует оптимальный по Марковитцу портфель. При этом портфель, построенный с помощью нейронной сети Хопфилда, показывает в целом

удовлетворительные результаты (средняя доходность, близкая к индексу ММВБ Т елекоммуникации, и рискованность ниже, чем у индекса).

V. Заключение

В данной работе были представлены различные методики построения оптимального портфеля ценных бумаг. Портфель, построенный с помощью классической теории Марковитца, сравнивался с портфелем, построенным с помощью разработанного автором алгоритма, использующего нейронную сеть Хопфилда, позволяющую решать задачи оптимизации, плохо поддающиеся иному способу решения. Кроме того, для алгоритма с использованием нейронной сети Хопфилда использовались спрогнозированные значения курсов акций, что, как показывают предыдущие исследования в данной области, улучшает показатели соотношения риска и доходности полученного портфеля.

Было выявлено, что портфель Марковитца показывает в целом лучшие характеристики, однако доходности портфелей очень близки, а также модель, построенная с помощью сети Хопфилда, более гибка и позволяет вносить изменения в исходные предпосылки с большей лёгкостью.

[11] Магнус Я.Р., Катышев П.К., Пересецкий А.А. «Эконометрика. Начальный курс» 6-е изд., перераб. и доп. - М.: Дело, 2004. — 576 с.

Библиография

[1] Fabio D. Freitas, Alberto F. De Souza, Ailson R. de Almeida. Prediction-based portfolio optimization model using neural networks. Journal Neurocomputing 72 (2009) 2155-2170.

[2] Akhter Mohiuddin Rather. Optimization of predicted portfolio using various autoregressive neural networks. International Conference on Communication Systems and Network Technologies (2012).

[3] Alberto Fernandez, Sergio Gomez. Portfolio selection using neural networks. Computers & Operations Research 34 (2007) 1177-1191.

[4] Reza Raei. Risky Portfolio Selection through Neural Networks. Irainan Accounting & Auditing Review 46 (2006) 70-83.

[5] Vesna Bogojevic Arsic. Application of Artificial Intelligence Approach to Portfolio Selection and Management. 1st International Conference on Applied Operational Research (2008).

[6] Qingshan Liua , Zhishan Guob, Jun Wang. A one-layer recurrent neural network for constrained pseudoconvex optimization and its application for dynamic portfolio optimization. Neural Networks 26 (2012) 99-109.

[7] Ayodele Ariyo Adebiyi, Aderemi Oluyinka Adewumi, Charles Korede Ayo. Comparison of ARIMA and Artificial Neural Networks Models for Stock Price Prediction. Journal of Applied Mathematics 2014 (2014).

[8] Xiping Wang, Ming Meng. A Hybrid Neural Network and ARIMA Model for Energy Consumption Forecasting. Journal of Computers 7 (2012).

[9] J.J.Hopfield. Neural networks and physical systems with emergent collective computational abilities. Proc. NatL Acad. Sci. USA 79 (1982).

[10] Markowitz, H.M. (March 1952). "Portfolio Selection". The Journal of Finance 7 (1): 77-91.

Optimal Portfolio Selection Using Machine Learning Techniques

Svetlana Galkina

Annotation—There are a lot of methods invented for solving a problem of optimal portfolio selection. Most of it is based on the classic Markowitz model. More and more problems are solved using machine learning techniques and particularly neuron networks on the last years. The object of this paper is comparison of effectiveness of above-mentioned techniques and an effectiveness of the market portfolio, which is selected using experts’ evaluation.

Key words—neural networks, Hopfield network, optimal portfolio, Markowitz portfolio

i Надоели баннеры? Вы всегда можете отключить рекламу.