Развитие методов прогнозирования цен акций

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

Рубрика Финансы, деньги и налоги
Вид дипломная работа
Язык русский
Дата добавления 27.08.2018
Размер файла 2,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ «ВЫСШАЯ ШКОЛА ЭКОНОМИКИ»

Факультет экономических наук

Образовательная программа «Финансовые рынки и финансовые институты»

МАГИСТЕРСКАЯ ДИССЕРТАЦИЯ

выпускная квалификационная работа по направлению подготовки 38.04.08 Финансы и кредит

Развитие методов прогнозирования цен акций

Выполнил: студент группы МФР161

Ермаков Николай Сергеевич

Научный руководитель:

доцент, к.э.н. Галанова Александра Владимировна

Москва 2018

Оглавление

цена акция машинный прогнозирование

Введение

1. Методы машинного обучения и особенности их использования

1.1 Классические модели машинного обучения

1.2 Нейронные сети, их развитие и применение в прогнозировании динамики цен акций

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

2.1 Классические модели машинного обучения в работе Э. Герлейна и М. МакГиннити

2.2 Другие работы, посвященные применению машинного обучения в финансовых предсказаниях

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

3.1 Выбор модели, подбор данных и признаков

3.2 Описание процесса обучения, предобработка данных и настройка параметров модели

3.3 Оценка эффективности полученной модели

Заключение

Приложение

Введение

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

Однако, технологии не стоят на месте. Сейчас уже никого нельзя удивить программами для анализа данных логистической регрессией, пусть они и существенно облегчают жизнь во многих ситуациях. Но пока ученые бьются над идеей воплощения искусственного интеллекта, все остальные сферы постепенно приспосабливают их наработки под свои нужды. Так, самой популярной и самой «гибкой» для интеграции в любую отрасль является идея машинного обучения (МО). Эта программная отрасль связана с алгоритмами, позволяющими искать зависимости в данных, основываясь только на самих данных. Распространенный пример - оценка стоимости квартиры в зависимости от площади, отделки, расположения и прочих критериев. Технология машинного обучения (а конкретнее, «обучение с учителем») позволяет на нескольких примерах квартир и их цен понять взаимосвязь и ценность критериев, и впоследствии, если мы подадим на вход набор характеристик квартиры, программа сможет с большой вероятностью оценить ее стоимость, основываясь на своих «знаниях» из примеров.

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

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

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

Объект исследования -цены акций на рынке.

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

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

1. Рассмотреть существующие методы машинного обучения;

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

3. Подготовить данные для корректного последующего анализа с помощью всех удовлетворяющих требованиям задачи методов машинного обучения;

4. Провести прогнозирование, определить, какие показатели оно демонстрирует;

5. Проанализировать показатели, составить сравнительную характеристику, выявить лучшие результаты и критерии, повлиявшие на их достижение;

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

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

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

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

Гипотеза 2. Сложная композиционная модель машинного обучения дает большую прогнозную точность, чем простые модели по отдельности.

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

Гипотеза 3. С помощью точных машинных предсказаний трендов можно увеличить прибыль.

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

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

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

Практическая значимость: Результаты данного исследования будут полезны аналитикам при работе с большим объемом данных на финансовом рынке и помогут быстро находить зависимость тренда от большого числа признаков.

Структура работы может быть представлена следующим образом.

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

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

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

1. Методы машинного обучения и особенности их использования

1.1 Классические модели машинного обучения

До 90% имеющейся научной литературы, посвященной исследованию взаимосвязи систем искусственного интеллекта и анализа фондового рынка, связаны с нейронными сетями; тем не менее, существует еще несколько подотраслей машинного обучения, которые могли бы помочь нам в прогнозировании цен акций. В этом параграфе нашего исследования мы рассмотрим классические В действительности понятия «классические модели машинного обучения» не существует. Данный термин был необходим для того, чтобы разграничить понятия базовых (поскольку вся остальная теория МО базируется на них) моделей и, собственно, нейросетей, о которых пойдет речь дальше. Для удобства различения понятий базового алгоритма и базовой модели было принято решение заменить термин на «классические». понятия машинного обучения, поясним принципы их работы и постараемся разобраться, какие из них лучше подойдут для нашего анализа.

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

Базовая терминология теории машинного обучения. Представим акции как некую совокупность исчерпывающих данных о них, и посмотрим, что можно сделать с этой информацией. Начнем с классической модели обучения с учителем и множества его подтипов. Необходимо ввести основные понятия Mitchell T. Machine Learning. -- McGraw-Hill Science/Engineering/Math, 1997:

Признак - элемент, несущий информацию об объекте. В случае с акциями в качестве признаков можно выбрать ее стоимость в различные моменты времени, название (и другие сведения) компании-эмитента, название биржи, где торгуются акции, и прочие.

Объект - определенная комбинация признаков. В нашем случае объектом является каждая акция (ее признаки отбираются в зависимости от модели обучения).

Ответ - параметр, который предсказывается при обучении - стоимость акции, пригодность района для проживания, вероятность дефолта при выдаче кредитов и займов и прочее в зависимости от объекта исследования. Пространство ответов имеет какую-либо метрику:

- бинарная классификация (изменится цена акции или нет?).

- многоклассовая классификация (к какому типу относятся акции?).

- многоклассовая классификация «с возвратом» / с пересечениями (присваивание одновременно нескольких характеристик к акциям).

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

Существуют несколько моделей обучения с учителем. Зависимость ответа алгоритма от набора признаков задается как:

,(1)

где - i-ый признак, - вес каждого признака для выравнивания зависимости.

Для того, чтобы вектор весов обновлялся на каждом шаге алгоритма, определяется оптимизационная задача; минимизируется функционал ошибки (он же - функционал качества):

Нетрудно заметить, что функционал ошибки - это не что иное, как разность ответов алгоритма и реальных ответов в обучающей выборке. В простейшей модели линейной регрессии решается задача минимизации средней ошибки для улучшения качества алгоритма Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. М.: ВЦ РАН, 2010. 60 с.

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

Задача классификации - распределение объектов по k классам; объекты внутри класса максимально схожи, между классами - максимально различны.

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

(3)

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

,(4)

то есть не что иное, как знак этой разницы. Функционал качества для такого алгоритма будет выглядеть как:

(5)

т.е. минимизируем количество неправильных классификаций.

Заметим, что функционал дискретен относительно весов, а потому поиск его минимума изрядно затрудняется. Заметим также, что проверить равенство знаков можно, введя функционал и проверив его знак; если у прогнозируемого ответа и реального знаки отличаются, то M < 0, и наоборот. Теперь, чтобы свести задачу к минимизации привычного гладкого функционала, достаточно оценить имеющую пороговую функцию сверху какой-либо подходящей гладкой (рис.1):

S - сигмоидальная функция:

H - кусочно-линейная: max (0, -M)

V - кусочно-линейная: max (0, 1-M)

L - логистическая: log()

E - экспоненциальная:

Рис. 1 Примеры гладких функционалов для приближения порогового

Источник: составлено автором

Выбранный гладкий функционал минимизируется уже известными методами - например, градиентного спуска.

Следующий функционал, применяющийся при бинарной классификации акций на повышающиеся/понижающиеся - функционал ошибки логистической регрессии Hastie, T., Tibshirani, R., Friedman, J. The Elements of Statistical Learning, 2nd edition. -- Springer, 2009. -- 533 p. С его помощью определяется вероятность принадлежности каждой акции классу «+1»:

(6)

где <w,x> = скалярное произведение вектора весов на вектор объектов. Формула взята с минусом, поскольку без него она представляет собой функцию правдоподобия; правдоподобие привычнее максимизировать, а функционал ошибки - минимизировать. Тогда вероятность принадлежности классу «+1» равна .

Теперь, когда алгоритм обучился на обучающей выборке, необходимо каким-то образом проверить корректность обучения на данных, которые алгоритм еще не видел. Для этого используется метод отложенной контрольной выборки: обучающая выборка разделяется на две части, алгоритм обучается на одной из них, а затем получившаяся функция зависимости «тестируется» на второй, контрольной, выборке. Алгоритм столкнется с этими данными впервые, однако ответы известны заранее (ведь эта выборка была частью обучающей); таким образом, можно определить, какой процент еще неизвестных данных выверенный алгоритм классифицирует корректно. Если процент правильно классифицированных данных удовлетворяет потребности задачи, можно сказать, что алгоритм смог извлечь близкую к действительности закономерность из данных.

Дополнительные идеи машинного обучения с учителем для повышения качества прогнозирования. Чтобы избежать зависимости от того, как именно выборка разбивается на обучение и контроль, принято начинать с кросс-валидации. Обучающая выборка разделяется на k равных блоков, k базовых алгоритмов (не обязательно различных) обучаются на выборке: i-ый алгоритм - на всех блоках данных, кроме i-ого. Таким образом, для каждого алгоритма останется блок данных, который ему еще не знаком; тогда качество i-ого алгоритма можно протестировать на i-ом блоке, чтобы проверить его корректность. Результаты усредняются:

(7)

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

Рис. 2 Примеры приближения реальной зависимости данных моделями различной сложности: а) линейной функцией; б) многочленом 4-ой степени; в) многочленом степени 15

Источник: составлено автором

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

Композиции алгоритмов. Практически все «классическое» машинное обучение базируется на идее предельной минимизации ошибки путем всего большего усложнения алгоритмов и рандомизации там, где это возможно. Что сейчас мешает качественному приближению исходной тенденции? Очевидно, все упирается в выбор базового алгоритма. Семейство, из которого он выбирается, достаточно разнообразное, чтобы каждый раз, заново запуская автомат, получать разное качество оценки. Рассмотрим способы минимизировать зависимость от выбора базового алгоритма, а именно композиции.

Среди композиций алгоритмов можно выделить два подхода: бэггинг и бустинг. Бэггинг подразумевает построение нескольких независимых моделей, а затем усреднение их показаний. Бустинг преследует более интересную идею. В первой задаче построения линейной регрессии алгоритм настраивался на разность предсказания и истинного ответа. Эта разность (а точнее, ее квадрат) минимизировалась - получалась среднеквадратическая ошибка. Однако, несмотря на то, что ошибка минимальна, она все еще не равна нулю; до истинного ответа ей не хватает ровно ее значения. В таком случае действуют следующим образом. Берется еще один базовый алгоритм, но теперь он настраивается так, чтобы выдавать ответ, наиболее близкий к нашей известной ошибке. Теперь, при сложении этих двух ответов, получается результат, который еще более близок к истинному - на новую ошибку ближе. Формально эта идея Mason L., Baxter J., Bartlett P., Frean M. Boosting algorithms as gradient descent. -- Advances in Neural Information Processing Systems. -- MIT Press, 2000. -- T. 12. -- 512-518 с. выглядит следующим образом. Первый алгоритм:

(8)

Тогда первый остаток , которого алгоритму не хватает для того, чтобы стать истинным ответом , это не что иное, как:

(9)

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

(10)

Каждый следующий алгоритм обучается на ошибке предыдущего (вместо вектора ответов):

(11)

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

(12)

Основные преимущества классических методов машинного обучения (обозначим их как КММО) для прогнозирования цен акций:

1. КММО позволяют обрабатывать большие объемы данных за раз, причем делать это достаточно оперативно, под стать быстрому темпу динамики котировок;

2. С помощью отложенной выборки и кросс-валидации КММО контролируют качество прогнозирования на используемых алгоритмах (чего не скажешь, к примеру, о нейронных сетях);

3. С помощью регуляризации можно избавляться от незначащих признаков, сокращая зависимость от незначащих параметров.

4. КММО позволяют использовать несколько различных методов классификации для того, чтобы проверить результат и сделать его надежнее;

5. Бустинг помогает существенно минимизировать вероятность ошибки, позволяя эффективнее взаимодействовать с рынком, сокращая риски.

1.2 Нейронные сети, их развитие и применение в прогнозировании динамики цен акций

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

Этапы становления и эволюции нейронных сетей. Несмотря на то, что уже доподлинно известно, что «нейронные сети» не имеют ничего общего с настоящими нейронами в человеческом мозге, на самом деле эти системы корректнее называть «графами вычислений», не будет ошибкой продолжать называть их исторически сложившимся и устоявшимся термином. Дело в том, что область нейронных сетей является одной из самых «древних» среди методов искусственного интеллекта (далее ИИ). Изначально ИИ развивался из двух отраслей: моделирования активности человеческого мозга и эвристического программирования. Последняя раскрывала проблемы поведения человека и его моделирования. Лоуренс Дж. Фогель, который ввел этот термин (как и, впрочем, все основополагающие исследования в этой отрасли), однако, полагал, что эвристическое программирование невозможно без моделирования внутренних процессов, происходящих в клетках человеческого мозга; эти две отрасли должны быть неразрывно связаны. С этим заявлением он выступает в 1960 году с докладом в Конгрессе США U.S. Pаtеnt 2,920,138, “Systеm fоr Imprоving Intеlligibility,” Jаnuаry 5, 1960; U.S. Pаtеnt 2,966,549, “Аppаrаtus fоr Imprоving Intеlligеnсе Undеr High Аmbiеnt Nоisе Lеvеls,” Dесеmbеr 27, 1960, а в 1964 году защищает докторскую диссертацию «О происхождении интеллекта» Lаwrеnсе J. Fоgеl "Оn thе Оrgаnizаtiоn оf Intеllесt", 1964 в области электротехники.

Результаты, достигнутые Л. Дж. Фогелем, подтолкнули других ученых к более доскональным исследованиям в этой области. Однако еще за два года до блестящей презентации его исследования перед Конгрессом американский нейрофизиолог Ф. Розенблатт предложил первую систему, способную распознавать рукописные образы, подобно человеческому глазу. Перцептрон - так был назван комплекс первых искусственно воспроизведенных аналогов нейронов - по сей день приводится в пример для самого облегченного понимания устройства нейронных сетей. Кроме того, принято считать, что Розенблатт исследовал только один тип будущих нейросетей (однослойный, как считают многие); в действительности же под громкое название перцептрона в настоящее время подходит описание любого искусственного графа вычислений Kussul E., Baidyk T., Kasatkina L., Lukovich V., Перцептроны Розенблатта для распознавания рукописных цифр, 2001. (рис. 3).

Рис. 3 Решение перцептроном Розенблатта задачи нахождения XOR'а

Источник: «Перцептрон Розенблатта -- что забыто и придумано историей?» https://habr.com/post/140301/

В 60-70ые годы XX века на смену кибернетического уклона в изучении и развитии искусственного интеллекта пришел логический подход. Булева алгебра, языки программирования по типу Пролога - все свидетельствовало о том, что нейронауку стараются стремительно «математизировать», вогнать в жесткие рамки крепкого логического базиса и свести к конкретным алгоритмам поведения. Так, наконец-то был выведен алгоритм обратного распространения ошибки (до сих пор является одним из основополагающих принципов построения нейронных сетей) в докторской диссертации П. Вербоса. Более того, именно под влиянием этих идей возникла мысль о моделировании экспертных знаний в так называемых экспертных системах. Они крайне быстро приспособились под разные сферы и обрели небывалую популярность среди специалистов. Нейрокибернетика и инжиниринг тоже не стояли на месте; так, в 1976 году была сформированная первая самостоятельно организующаяся нейросеть. К сожалению, как научное исследование она «выстрелит» только в следующем десятилетии. Однако эти два открытия положили начало большинству известных сегодня типов графов вычислений.

Именно в эту пору нейросети и экспертные системы приобрели особую популярность в первых попытках автоматизированного прогнозирования цен акций на фондовом рынке. В то время как экспертные системы отлично проявляют себя на сложных, но уже известных алгоритмах, нейронные сети способны восстанавливать зависимость между большим количеством признаков. В чем-то класс задач, решаемых графами вычислений, схож с теми, что решаются «классическими» методами machine learning - они также не требуют знания «правил игры», а способны «восстановить» их самостоятельно, если имеется достаточное количество примеров.

Схема работы нейросетевого предсказателя временных рядов (Рис. 4).

Рис. 4 Схема нейросетевого предсказателя временных рядов

Источник: «Технический анализ и нейронные сети» http://pca.narod.ru/lecture5.htm

На первом этапе работы нейросети основополагающим инструментом является теорема Такенса: если временной ряд порожден динамической системой, то существует такая глубина погружения d, обеспечивающая однозначное предсказание следующего значения ряда. M. Casdagli, T. Sauer, J. Yorke, Embedology, Journal of Statistical Physics, 1991. 65, 579-616

Этот факт играет важную роль, поскольку теперь можно утверждать, что при достаточно большом d можно однозначно гарантировать зависимость следующего значения ряда от всех предыдущих во временном ряде. Из этого, в свою очередь, следует, что нейросетевое предсказание будет решать задачу интерполяции функции многих переменных методом погружения ряда в многомерное пространство, что позволит существенно надежнее восстанавливать зависимость. Neil A. Gershenfield, Andreas S. Weigend, Times series prediction: Forecasting the future and understanding the past, Addison-Wesley, 1994

Данный метод позволяет измерить предсказуемость количественно, а значит, проверить гипотезу эффективности рынка. Тогда при одинаковом распределении случайных величин разброс точек по лаговому пространству также будет одинаков, а при хаотической динамике наблюдения будут располагаться вдоль некой гиперповерхности Заметим, что размерность формируемого множества в последнем случае будет меньше размерности лагового пространства, а, значит, необходимо уметь ее корректно оценивать. Для этого используется box-counting: он основан на факте, что при размерности Х множества А его (множества) разбиение на покрытия кубиками со стороной е дает количество этих кубиков, равное . Тогда размерность считается по темпу возрастания числа “боксов” (boxes) со всеми точками множества.

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

(13)

где - энтропия .

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

Этапы работы нейронной сети. Для начала определяется, как именно должны выглядеть признаки, подающиеся на вход нейросети. Ограничения для входных данных очевидны - они должны быть максимально статистически независимы друг от друга. Таким образом, гораздо лучше подойдут последовательные «дельты» - изменения между котировками, нежели сами цены акций: цену на следующем шаге можно выразить через цену на текущем:

(14)

тогда как изменение цены (или логарифм относительного приращения ) на каждом шаге никак не скореллирован с предыдущей «дельтой». При таком выборе вида признаков понижение размерности избираемого пространства можно осуществить при помощи вейвлетного (wavelet) разложения G. Kaiser, A Friendly Guide to Wavelets, Birk, 1995.

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

Пример (рис. 5): из 30 главных компонент в 100-мерном лаговом пространстве методом ортогонализации были выбраны 7 наиболее значимых ортогональных линейных комбинаций-признаков.

Рис. 5 Предсказуемость знака изменения котировок индекса S&P500 методом box-counting (а) и она же после учетверения количества примеров растяжением по оси цен (b)

Источник: «Метод искусственных примеров» http://pca.narod.ru/lecture5.htm

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

Рис. 6 Схема строения и передачи данных между слоями в нейронной сети

Источник: «Искусственная нейронная сеть» http://wiki.witology.com/index.php/Искусственная_нейронная_сеть

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

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

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

Последний этап системы - адаптивное принятие решений - выполняется уже без подсчета ошибки; новые данные просто подаются на вход нейросети, и вычисляется ее ответ, который и принимается за предсказание.

Привлекательность нейросетей для задач прогнозирования цен акций. Здесь играют роль три ключевых пункта:

1) Они могут учитывать сразу огромное количество исходных данных (в отличие от людей-аналитиков);

2) Легко приспосабливаются, восстанавливая даже неординарные зависимости (а ведь фондовый рынок - сугубо динамическое явление, где просто необходимо быстро ориентироваться);

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

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

Отличным решением может показаться «ментор» - человек, который бы контролировал настройку графа вычислений, а заодно на основе своего опыта мог бы корректировать его ответы. Однако для выполнения такой работы необходим высококвалифицированный специалист, вот только этот класс людей и сам прекрасно справляется с фондовой аналитикой. Тем более, это потребует от него двойных трудозатрат: ведь, помимо собственного анализа перманентно изменяющегося состояния рынка, ему необходимо каким-то образом анализировать происходящее внутри нейросети, что невозможно, ибо в алгоритме формирования нейросетевого прогноза присутствует некоторая доля рандомизации. Вдобавок, количество связей между нейронами исчисляется тысячами (в зависимости от количества слоев, безусловно), а потому проследить их взаимодействие даже на компьютеризированном уровне не представляется возможным. Володин С. Н. Эволюция систем искусственного интеллекта для прогнозирования динамики цен акций // Вестник Самарского государственного экономического университета. 2009. № 7(57). С. 22-25.

Нейронные сети уже претерпевали попытки использования для предсказания трендов акций. Так, турецкие исследователи Сельчукского Университета получили максимально 75,7% точности предсказания Kara, Y., Acar Boyacioglu, M., Kaan Baykan, O. Predicting direction of stock price index movement using artificial neural networks and support vector machines: The sample of the Istanbul Stock Exchange, Expert Systems with Applications 38 (2011).

Таблица 1

Точность предсказания для модели Кара и Байкана в сравнении с предыдущими исследователями той же области

Еще одна команда турецких экономистов также использовала нейронные сети для предсказания цен акций, однако не получила впечатляющих результатов Guresen, E. Kayakutlu, G., Daim, T. U., Using artificial neural network models in stock market index prediction, Expert Systems with Applications 38, 2011. График реальных значений тренда и предсказанных можно проследить на рисунке 7.

Рис. 7 Реальный и прогнозируемый тренд акций работы Гуресела и Даима

Выводы по главе 1

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

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

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

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

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

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

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

2.1 Классические модели машинного обучения в работе Э. Герлейна и М. МакГиннити

Основой этого параграфа станет исследование «Evaluating machine learning classification for financial trading: an empirical approach» 2016 года. Эта статья также посвящена применению методов машинного обучения для предсказаний трендов на финансовом рынке, однако цель данной работы несколько другая: Герлейн и МакГиннити хотели продемонстрировать, что для эффективного предсказания трендов (эффективное предсказание = лучшее, нежели рандомное или выполненное вручную) можно обойтись простыми моделями машинного обучения (без задействования нейросетей или программируемого метода опорных векторов). Для этой цели авторы тестировали шесть различных подходов низкой сложности.

Данная статья интересна для нашего исследования по двум причинам. Во-первых, в ней рассматриваются те же модели, что и у нас. Это модели «классического» машинного обучения низкой сложности - а именно, алгоритмы OneR, C4.5, JRip, Logistic Model Tree, KStar и Naпve Bayes (о математической составляющей каждого из них мы расскажем далее). Во-вторых, авторы «Evaluating machine learning classification…» не только рассмотрели несколько различных моделей сразу, но и подобрали к каждой оптимальные характеристики для обучения, тестируя различные комбинации параметров и выборки. Изучение опыта других исследователей конкретно в этой части поможет нам лучше организовать наше дальнейшее исследование и поиск необходимых данных.

Принцип работы модели Герлейна и МакГиннити. Авторы используют так называемую «мультиагентную» (multyagent) систему, позволяющую поддерживать непрерывную «торговлю» (естественно, имитацию процесса) на протяжении двухгодичного периода. Шестичасовые временные промежутки позволяют измерять цены открытия/закрытия четыре раза в сутки и используются для резкого увеличения скачков цен (по сравнению с одночасовыми).

Рис. 8 Схема торговой модели-мультиагента

Источник Gerlein E.A., Mcginnity M., Belatreche A., Coleman A., Evaluating machine learning classification for financial trading: an empirical approach, Expert Systems With Applications (2016).

На рисунке 8 представлена обзорная схема работы торговой модели - она состоит из двух основных блоков: торгового агента (красных блок) и агент рынка (пурпурный блок). Агент рынка кодирует финансовые данные, полученные из графиков «японских свечей» (минимумы, максимумы, цены открытия, закрытия в предустановленный шестичасовой диапазон) исторических данных обмена валютной парой USD/JPY. Затем зашифрованная информация передается торговому агенту.

Торговый агент, в свою очередь, выполняет препроцессинг - предобработку сырых данных (формирует некоторые признаки из данных, полученных от агента рынка, или подсчитывает параметры, впоследствии принимаемые за признаки). Сформированная выборка передается в модуль классификатора (внутри торгового агента); классификатор - один из выбранных алгоритмов - на основе полученных данных выдает предсказание тренда (бинарная классификация - повысится или снизится цена на следующем промежутке В данном исследовании предполагается, что цена изменяется на каждом измеренном промежутке времени.). На основе предсказания торговый агент решает, что нужно делать на данном шаге, продавать или покупать актив (short trade и long trade, соответственно) - эта информация вновь передается агенту рынка (он также ведет «журнал заказов» - «order book»).

Набор данных и выбор атрибутов. Подбор параметров базируется на работе Барбосы и Бело Barbosa, R. P., & Belo, O. Algorithmic Trading Using Intelligent Agents. In H. R. Arabnia & Y. Mun (Eds.), Proceedings of the 2008 Int. Conf. on Artificial Intelligence, ICAI 2008 (pp. 136-142). Las Vegas, Nevada, USA: CSREA Press. и предлагает формирование девяти признаков и двух выборок из сырых данных.

Таблица 2

Описание обучающей и тестовой выборки и атрибутов, используемых в мультиагентной модели Герлейна и МакГиннити

Из таблицы 2 можно увидеть, что симулятор торговли обучается на рыночных данных за промежуток в 4 года (2002-2006) и затем предсказывает тренды на тестовой выборке за два года (2007-2009), сформированной из не попавших в обучающую выборку поздних записей. Для тестового набора данных (off-sample data) торговый агент пересчитывает атрибуты на каждом круге цикла торговой симуляции.

Вкратце опишем формируемые из сырых данных атрибуты:

1. HOUR - время суток в терминах 6-часовых периодов. Принимает только значения 0, 6, 12 или 18.

2. DAY_OF_WEEK - день недели.

3. CLOSING_PRICE - числовой параметр, характеризующий цену закрытия на момент окончания торгового периода.

4. PERCENTAGE_PRICE_CHANGE - относительное изменение цены за конкретный торговый период. Исчисляется по формуле:

(15)

5. LAGGED_PERCENTAGE_PRICE_CHANGE - отложенное относительное изменение цены. Используется в анализе временных рядов для интеграции с предыдущими значениями.

6. LAGGED_PERCENTAGE_PRICE_CHANGE_MOVING_AVERAGE - среднее изменение цены за предыдущие n периодов. Исчисляется по формуле:

7.

(16)

8. WILLIAMS_%R - параметр, принимающий значения от -100 до 0. Если Williams_%R принимает значение ниже -80 или выше -20, это значит, что актив (соответственно) перепродан или перекуплен. Сравнивает текущую цену закрытия с минимальной и максимальной за последние N периодов и исчисляется по формуле:

9. RELATIVE_STRENGTH_INDEX - сравнивает недавнюю прибыль с недавними убытками для определения условий перекупки или перепродажи. Принимает значения от 0 до 100. Если RSI принимает значение больше 70, то актив завышен, а потому будет ожидаться падение цены на него; если RSI меньше 30, то наоборот. Исчисляется по формуле:

(18)

где - отношение средних для периодов, в которых цена поднималась, и в которых цена снижалась:

(19)

Где

(20)

(k - номера периодов, чьи цены закрытия были выше предыдущих цен закрытия)

(21)

(j - номера периодов, чьи цены закрытия были ниже предыдущих цен закрытия).

10. CLASS - значение предсказания классификатора. Принимает значения UP или DOWN - в зависимости от того, какой тренд предскажет модель.

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

В работе Герлейна и МакГиннити были выделены целых восемь различных метрик для оценки качества торгового симулятора:

1. Accuracy (%) - процент корректных предсказаний за весь торговый период;

2. UP_Accuracy (%) и DOWN_Accuracy (%) - процент верных предсказаний (для следующего торгового периода) движения тренда вверх и вниз соответственно;

3. Cumulative Return (%) - совокупный доход; процент дохода, накопленного к концу торгового цикла. Рассчитывается по формуле:

4. (22)

5. Maximum Drawdown - измеряет максимальный совокупный убыток торгового агента за время торговли;

6. Average Return per trade - средний доход, полученный во всех сделках на окончание торгового цикла;

7. Long_Accuracy (%) и Short_Accuracy (%) - процент сделок (предсказаний повышающегося и снижающегося тренда соответственно) с положительным профитом без учета торговых издержек.


Подобные документы

  • Возможности частного инвестора для вложения капитала и получения прибыли на рынке ценных бумаг. Капитализация и рыночная стоимость предприятия. Анализ динамики акций ОАО "Лукойл", показатели вариации курса акций. Построение интервального прогноза.

    курсовая работа [463,6 K], добавлен 18.04.2011

  • История развития финансового рынка России, сущность и виды акций. Фондовый рынок и крупнейшие эмитенты российского рынка акций, рынок акций "второго эшелона". Влияние мирового финансового кризиса на российский рынок, современное состояние рынка акций.

    курсовая работа [350,2 K], добавлен 18.04.2010

  • Дивидендная политика и возможность ее выбора. Регулирование курса акций. Порядок выплаты дивидендов. Анализ дивидендной политики ОАО "Печорская ГРЭС". Эмиссия акций предприятия. Дивидендная политика предприятия. Проблемы дробления и консолидация акций.

    курсовая работа [31,3 K], добавлен 30.03.2007

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

    контрольная работа [1,4 M], добавлен 27.06.2013

  • Теоретическое изучение основных методов оценки стоимости бизнеса и подходов компаний к оценке стоимости акций. Выявление и анализ особенностей оценки стоимости обыкновенных акций. Проведение оценки рыночной стоимости 100% пакета акций ОАО "Вертикаль".

    дипломная работа [322,7 K], добавлен 04.08.2012

  • Вложения в акции коммерческих банков. Основные методы оценки стоимости обыкновенных акций. Базовые модели дисконтирования дивидендов методом для вычисления цены акции или бизнеса. Оценка качества акций, а также их рейтинга на примере ОАО "Альфа-Банк".

    контрольная работа [384,2 K], добавлен 05.07.2013

  • Место и роль российского рынка акций в экономических отношения. Оценка динамики объема, состава и структуры фондовой системы. Анализ места рыночной концепции ценных бумаг в системе финансовых механизмов. Исследование капитализации компаний России.

    курсовая работа [607,8 K], добавлен 16.09.2017

  • Мотивы и интересы сторон в размещении акций, преимущества и недостатки, процедура проведения. Особенности вторичных размещений акций (SPO). Анализ долгосрочной доходности при проведении размещений акций российскими компаниями, обзор рынка в России.

    дипломная работа [2,0 M], добавлен 03.07.2017

  • Формы заимствования российскими компаниями денежных средств. Характеристика методов привлечения инвестиций. Преимущества и анализ практики проведения публичного размещения акций российскими компаниями. Размещение акций на зарубежных торговых площадках.

    дипломная работа [69,9 K], добавлен 19.02.2011

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

    реферат [231,4 K], добавлен 03.03.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.