Исследование динамики финансовых рынков нейросетевыми методами
СОДЕРЖАНИЕ
ВВЕДЕНИЕ………………………………………..……………
ГЛАВА 1
ПОНЯТИЕ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ
- Искусственный нейрон: понятие, особенности структуры……….7
- Искусственные нейронные сети: их свойства и классификация..12
- Обучение нейронных сетей………………………………………..19
ГЛАВА 2
ПРИМЕНЕНИЕ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ
2.1. Особенности
применения искусственных
2.2. Применение нейронных сетей в биржевой деятельности………..28
2.3. Ограничения и недостатки, связанные с использованием нейронных сетей на бирже……………………………………………….33
ГЛАВА 3
ИССЛЕДОВАНИЕ ДИНАМИКИ ФИНАНСОВЫХ РЫНКОВ НЕЙРОСЕТЕВЫМИ МЕТОДАМИ
- Задачи и методы нейросетевого анализа и прогнозов…………...38
- Нейросетевые прогнозы доходностей…………………………….44
ЗАКЛЮЧЕНИЕ……………………………………………………
СПИСОК
ИСТОЧНИКОВ……………………………………………………
ВВЕДЕНИЕ
Искусственные нейронные сети, подобно биологическим, являются вычислительной системой с огромным числом параллельно функционирующих простых процессоров с множеством связей. Несмотря на то, что при построении таких сетей обычно делается ряд допущений и значительных упрощений, отличающих их от биологических аналогов, искусственные нейронные сети демонстрируют удивительное число свойств, присущих мозгу, – это обучение на основе опыта, обобщение, извлечение существенных данных из избыточной информации.
Нейронные сети могут менять свое поведение в зависимости от состояния окружающей их среды. После анализа входных сигналов они самонастраиваются и обучаются, чтобы обеспечить правильную реакцию. Обученная сеть может быть устойчивой к некоторым отклонениям входных данных, что позволяет ей правильно «видеть» образ, содержащий различные помехи и искажения. Сегодня существует большое число различных конфигураций нейронных сетей с различными принципами функционирования, которые ориентированы на решение самых разных задач. Они активно применяются там, где обычные алгоритмические решения оказываются неэффективными или вовсе невозможными. Практика использования нейросетей показала их эффективность в таких областях, как прогнозирование, выявление зависимостей, ситуационное управление. Все это применимо на финансовых рынках. Этот инструментарий позволяет выявлять и получать новые знания о динамике стоимости ценных бумаг, об изменениях показателей экономической активности и о колебаниях обменного курса валют, включая, государственные облигации. На базе этих знаний можно выявить взаимозависимости, существующие между этими характеристиками, что в свою очередь позволяет существенным образом повысить надежность прогнозирования.
В настоящее время применение нейронных сетей к задачам биржевой деятельности особенно актуально, поскольку традиционные, ставшие уже классическими, подходы были разработаны для описания относительно устойчивого, медленно эволюционирующего и не радикально изменяющегося мира, мира – который еще не сильно отклонился от состояния равновесия. По самой своей сути эти методы и подходы не были предназначены для описания и моделирования быстрых изменений, непредсказуемых скачков и сложных взаимодействий отдельных составляющих современного мирового рыночного процесса.
Как известно, украинский рынок ценных бумаг за свою новейшую постсоветскую историю пережил много хороших и плохих времен. Финансовый кризис 1998 года почти разрушил этот сектор экономики. Однако следует понимать, что без развитого рынка ценных бумаг построить рыночную экономику невозможно. Одним из важнейших направлений развития Украины должно стать принципиальное изменение роли рынка ценных бумаг в финансовой системе государства и его хозяйственном механизме в целом. Огромные усилия государства должны быть направлены на повышение доверия инвесторов к украинской экономике. Одной из важных задач на пути стабилизации фондового рынка Украины является привлечение частных лиц для инвестирования в предприятия и крупные компании нашей страны. Для инвесторов особо необходимым и актуальным является возможность прогнозирования ситуации на рынке ценных бумаг. Прогнозирование предполагает научно-обоснованное суждение о возможных состояниях экономической системы в будущем, об альтернативных путях и сроках его осуществления, оно должно предполагать получение качественных оценок этих состояний при помощи математических и инструментальных средств реализации.
Наряду с крупными национальными фондовыми, фьючерсными, валютными биржевыми рынками, появились рынки мирового масштаба. Типичный пример – современный финансовый рынок FOREX, сегодня представляет собой всемирную сеть банков, инвестиционных фондов и брокерских домов, которая включает в себя связанную компьютерную инфраструктуру, обслуживающую клиентов, торгующих валютами, заключающих спекулятивные сделки для того, чтобы получить прибыль от ежесекундно изменяющихся курсов валют. Уже сейчас ежедневный оборот на рынке FOREX превышает один триллион долларов (что ощутимо даже в масштабах страны), а согласно прогнозам экспертов он будет увеличиваться и дальше. Известно, что примерно 99% всех сделок на финансовых рынках – спекулятивные, т.е. заключаемые исключительно с целью извлечения прибыли по схеме "купить дешевле – продать дороже". Все они основаны на предсказаниях изменений котировок участниками рынка. Для эффективного анализа рынка требуются соответствующие современным требованиям экономико-математические методы. Сегодня огромное количество "западных" ученых работают в области разработки методов прогнозирования финансовых рынков. Таким образом, исследования в области биржевых рынков – актуальное и перспективное направление деятельности и будет оставаться таковым в течение длительного периода времени.
Целью нашей работы является подробное изучение применения нейронных сетей к задачам биржевой деятельности, доказательство их эффективности в управлении капиталом и анализе финансовых рынков.
Для достижения поставленной цели необходимо решить следующие задачи: ознакомится со структурой нейронных сетей, правилами и принципами их функционирования; возможностью их применения при решении проблем предсказания, классификации, моделирования финансовых временных рядов, а также оптимизации в области финансового анализа и управления риском.
Объектом исследования является использование систем, базирующихся на искусственных нейронных сетях, активно используемых для прогнозирования финансовых рынков.
Предметом – нейронная сеть, прогнозирующая дневную динамику таких финансовых инструментов: курс доллар США – немецкая марка (обозначен как DM); ставка процента ЛИБОР по евродолларам (ED); фондовый американский индекс Стэндарт-энд-Пурс S&P500 (SP).
В курсовой работе рассмотрена способность искусственных нейронных сетей к обучению (к процессу настройки архитектуры сети и весов синаптических связей) для эффективного решения поставленной задачи, различные области их применения и использования.
В первой главе описано понятие нейрона, нейронной сети. Подробно описаны принципы работы искусственных нейронных сетей, дана их классификация.
Вторая глава даёт детальное представление этого подхода, а также его отличие от стандартных методов. Оно состоит в его способности сделать систему самообучающейся, что особенно важно для трудноформализуемых задач. Благодаря возможности работы с «зашумленными» данными (нечеткие нейроны) система получается гибкой и, хотя обычно не решает задачу со 100%-ной точностью, может принести значительную прибыль в финансовой сфере.
Третья глава демонстрирует способность интеллектуальных систем на основе искусственных нейронных сетей с успехом решать задачи прогнозирования. При этом показано, что наиболее предсказуемо направление хода цены. Более сложной задачей является прогнозирование длины хода.
Таким образом, при анализе и предсказании сложных финансовых систем в настоящее время нельзя обойтись без такого мощного инструмента как нейросетевые технологии. Нейронные сети находят все новые успешные применения в практике управления и принятия решений, в том числе – в финансовой и торговой сферах. Лежащая в их основе теория нелинейных адаптивных систем доказала свою полезность при выработке прогнозов в целом ряде отраслей экономики и финансов.
ГЛАВА
1. ПОНЯТИЕ ИСКУССТВЕННОЙ
НЕЙРОННОЙ СЕТИ
- Искусственный нейрон: понятие, особенности структуры
Под нейронными сетями подразумеваются вычислительные структуры, которые моделируют простые биологические процессы, обычно ассоциируемые с процессами человеческого мозга. Они представляют собой распределенные и параллельные системы, способные к адаптивному обучению путем анализа положительных и отрицательных воздействий. Элементарным преобразователем в данных сетях является искусственный нейрон или просто нейрон, названный так по аналогии с биологическим прототипом.
К настоящему времени предложено и изучено большое количество моделей нейроподобных элементов и нейронных сетей.
Искусственный нейрон является основой любой искусственной нейронной сети. Нейроны представляют собой относительно простые, однотипные элементы, имитирующие работу нейронов мозга. Каждый нейрон характеризуется своим текущим состоянием по аналогии с нервными клетками головного мозга, которые могут быть возбуждены и заторможены.
Искусственный нейрон, также как и его естественный прототип, имеет группу синапсов (входов), которые соединены с выходами других нейронов, а также аксон – выходную связь данного нейрона – откуда сигнал возбуждения или торможения поступает на синапсы других нейронов.
Общий
вид нейрона представлен на рисунке
1.1., где yj – сигнал, поступающий
от нейрона j; sk – скалярное произведение
вектора входных сигналов и вектора весов;
fk – функция возбуждения; yk
– выходной сигнал нейрона.
Рис. 1.2. Искусственный нейрон – простейший элемент искусственной нейронной сети
Источник: [7, с. 22]
Таким образом, нейрон состоит из элементов трех типов: умножителей (синапсов), сумматора и нелинейного преобразователя. Синапсы осуществляют связь между нейронами, умножают входной сигнал на число, характеризующее силу связи (вес синапса). Сумматор выполняет сложение сигналов, поступающих по синаптическим связям от других нейронов, и внешних входных сигналов. Нелинейный преобразователь реализует нелинейную функцию одного аргумента - выхода сумматора. Эта функция называется функцией активации или передаточной функцией нейрона. Нейрон в целом реализует скалярную функцию векторного аргумента. Математическая модель нейрона:
S= + b (1.1)
Y= f(s) (1.2)
где Wt – вес синапса, i = 1...n; b – значение смещения; s – результат суммирования; X1 – компонент входного вектора (входной сигнал); i = 1...n; у – выходной сигнал нейрона; n – число входов нейрона; f – нелинейное преобразование (функция активации).
В общем случае входной сигнал, весовые коэффициенты и смещение могут принимать действительные значения, а во многих практических задачах – лишь некоторые фиксированные значения. Выход (у) определяется видом функции активации и может быть как действительным, так и целым.
Синаптические связи с положительными весами называют возбуждающими, с отрицательными весами – тормозящими.
Описанный вычислительный элемент можно считать упрощенной математической моделью биологических нейронов. Чтобы подчеркнуть различие нейронов биологических и искусственных, вторые иногда называют нейроноподобными элементами или формальными нейронами.
На входной сигнал (s) нелинейный преобразователь отвечает выходным сигналом f(s), который представляет собой выход у нейрона. Основные разновидности активационных функций, применяемых в
нейронных сетях, представлены на рис. 1.2.
Рис. 1.2. Активационная функция
а) пороговая; b) полулинейная; c) сигмоидальная
Источник: [2, с. 45]
В качестве активационной функции часто используется сигмоидальная (s-образная или логистическая) функция, показанная на рис. 1.2 с. Эта функция математически выражается по формуле
f(x) = (1.3)
При уменьшении α сигмоидальная функция становится более пологой, в пределе при α=0 вырождаясь в горизонтальную линию на уровне 0,5; при
увеличении α сигмоидальная функция приближается по внешнему виду к функции единичного скачка с порогом T в точке x=0. Из выражения для сигмоидальной функции видно, что выходное значение нейрона лежит в диапазоне [0,1]. Одно из полезных свойств сигмоидальной функции – простое выражение для ее производной:
f (x) = α f (x) (1- f (x)) (1.3)
Следует отметить, что сигмоидальная функция дифференцируема на всей оси абсцисс, что используется в некоторых алгоритмах обучения. Кроме того, сигмоидальная функция обладает свойством усиливать малые сигналы лучше, чем большие, тем самым предотвращая насыщение от больших сигналов, так как они соответствуют областям аргументов, где сигмоидальная функция имеет пологий наклон.
Выбор структуры нейронной сети осуществляется в соответствии с особенностями и сложностью задачи. Для решения некоторых отдельных типов задач уже существуют оптимальные, на сегодняшний день конфигурации, описанные, например, в [6, 7, 8]. Если же задача не может быть сведена ни к одному из известных типов, разработчику приходится решать сложную проблему синтеза новой конфигурации.
Теоретически число слоев и число нейронов в каждом слое нейронной сети может быть произвольным, однако фактически оно ограничено ресурсами компьютера или специализированной микросхемы, на которых обычно реализуется нейронная сеть. При этом, если в качестве активационной функции для всех нейронов сети используется функция единичного скачка, нейронная сеть называется многослойным персептроном.
В нейронных сетях, называемых персептронами, используется активационная функция единичного скачка.
Также
примерами активационных
функций являются: полулинейная, линейная,
логистическая (сигмоидальная), гиперболический
тангенс, экспоненциальная, синусоидальная,
сигмоидальная (рациональная), шаговая
(линейная с насыщением), пороговая, модульная,
знаковая (сигнатурная), квадратичная.
1.2. Искусственные нейронные сети: их свойства и классификация
Нейронная сеть представляет собой совокупность нейроподобных элементов, определенным образом соединенных друг с другом и с внешней средой с помощью связей, определяемых весовыми коэффициентами.
В зависимости от функций, выполняемых нейронами в сети, можно выделить три их типа:
• входные нейроны, на которые подается вектор, кодирующий входное воздействие или образ внешней среды; в них обычно не осуществляется вычислительных процедур, а информация передается с входа на выход путем изменения их активации;
• выходные нейроны, выходные значения которых представляют выходы нейронной сети; преобразования в них осуществляются по выражениям (1.1) и (1.2);
• промежуточные нейроны, составляющие основу нейронных сетей, преобразования в которых выполняются также по выражениям (1.1) и (1.2).
В большинстве нейронных моделей тип нейрона связан с его расположением в сети. Если нейрон имеет только выходные связи, то это входной нейрон, если наоборот – выходной нейрон. Однако возможен случай, когда выход топологически внутреннего нейрона рассматривается как часть выхода сети. В процессе функционирования сети осуществляется преобразование входного вектора в выходной, некоторая переработка информации. Конкретный вид выполняемого сетью преобразования данных обусловливается не только характеристиками нейроподобных элементов, но и особенностями ее архитектуры, а именно топологией межнейронных связей, выбором определенных подмножеств нейроподобных элементов для ввода и вывода информации, способами обучения сети, наличием или отсутствием конкуренции между нейронами, направлением и способами управления и синхронизации передачи информации между нейронами.
С точки зрения топологии можно выделить три основных типа нейронных сетей:
• полносвязные (рис. 1.4. а);
• многослойные или слоистые (рис. 1.4. б);
• слабосвязные (с локальными связями) (рис. 1.4. в).
Рис. 1.3. Архитектуры нейронных сетей
Источник: [12, с. 35]
В полносвязных нейронных сетях каждый нейрон передает свой выходной сигнал остальным нейронам, в том числе и самому себе. Все входные сигналы подаются всем нейронам. Выходными сигналами сети могут быть все или некоторые выходные сигналы нейронов после нескольких тактов функционирования сети.
В многослойных нейронных сетях нейроны объединяются в слои. Слой содержит совокупность нейронов с едиными входными сигналами. Число нейронов в слое может быть любым и не зависит от количества нейронов в других слоях. В общем случае сеть состоит из Q слоев, пронумерованных слева направо. Внешние входные сигналы подаются на входы нейронов входного слоя (его часто нумеруют как нулевой), а выходами сети являются выходные сигналы последнего слоя. Кроме входного и выходного слоев в многослойной нейронной сети есть один или несколько скрытых слоев. Связи от выходов нейронов некоторого слоя q к входам нейронов следующего слоя (q+1) называются последовательными.
Входной слой Скрытый слой Выходной слой
Рис 1.4. Многослойная (двухслойная) сеть прямого распространения
Источник: [15, с. 55]
В свою очередь, среди многослойных нейронных сетей выделяют следующие типы.
1) Монотонные. Это частный случай слоистых сетей с дополнительными условиями на связи и нейроны. Каждый слой кроме последнего (выходного) разбит на два блока: возбуждающий и тормозящий. Связи между блоками тоже разделяются на тормозящие и возбуждающие. Если от нейронов блока А к нейронам блока В ведут только возбуждающие связи, то это означает, что любой выходной сигнал блока является монотонной неубывающей функцией любого выходного сигнала блока А. Если же эти связи только тормозящие, то любой выходной сигнал блока В является невозрастающей функцией любого выходного сигнала блока А. Для нейронов монотонных сетей необходима монотонная зависимость выходного сигнала нейрона от параметров входных сигналов
2) Сети
без обратных связей. В таких сетях нейроны
входного слоя получают входные сигналы,
преобразуют их и передают
нейронам первого скрытого слоя, и так
далее вплоть до выходного,
который выдает сигналы для интерпретатора
и пользователя. Если не оговорено противное,
то каждый выходной сигнал q-го слоя
подастся на вход всех нейронов (q+1)-го
слоя; однако возможен
вариант соединения q-го слоя с произвольным
(q+р)-м слоем.
Среди многослойных сетей без обратных связей различают полносвязанные (выход каждого нейрона q-го слоя связан с входом каждого нейрона ((q+1)-го слоя) и частично полносвязанные. Классическим вариантом слоистых сетей являются полносвязанные сети прямого распространения (рис. 1.4).
3) Сети
с обратными связями. В сетях с обратными
связями информация с последующих слоев
передается на предыдущие.
Среди них, в свою очередь, выделяют следующие.
- Слоисто-циклические, отличающиеся тем, что слои замкнуты в кольцо, последний слой передает свои выходные сигналы первому; все слои равноправны и могут как получать входные сигналы, так и выдавать выходные;
- Слоисто-полносвязанные состоят из слоев, каждый из которых представляет собой полносвязную сеть, а сигналы передаются как от слоя к слою, так и внутри слоя; в каждом слое цикл работы распадается на три части: прием сигналов с предыдущего слоя, обмен сигналами внутри слоя, выработка выходного сигнала и передача к последующему слою.
- Полносвязанно-слоистые по своей структуре аналогичные слоисто-полносвязанным, но функционирующим по-другому: в них не разделяются фазы обмена внутри слоя и передачи следующему, на каждом такте нейроны всех слоев принимают сигналы от нейронов как своего слоя, так и последующих.
В слабосвязных нейронных сетях нейроны располагаются в узлах прямоугольной или гексагональной решетки. Каждый нейрон связан с четырьмя (окрестность фон Неймана), шестью (окрестность Голея) или восемью (окрестность Мура) своими ближайшими соседями.
Известные нейронные сети можно разделить по типам структур нейронов на гомогенные (однородные) и гетерогенные. Гомогенные сети состоят из нейронов одного типа с единой функцией активации, а в гетерогенную сеть входят нейроны с различными функциями активации.
Существуют бинарные и аналоговые сети. Первые из них оперируют только двоичными сигналами, и выход каждого нейрона может принимать значение либо логического ноля (заторможенное состояние) либо логической единицы (возбужденное состояние).
Еще одна классификация делит нейронные сети на синхронные и асинхронные. В первом случае в каждый момент времени лишь один нейрон меняет свое состояние, во втором – состояние меняется сразу у целой группы нейронов, как правило, у всего слоя. Алгоритмически ход времени в нейронных сетях задается итерационным выполнением однотипных действий над нейронами.
Сети можно классифицировать также по числу слоев. Теоретически число слоев и число нейронов в каждом слое может быть произвольным, однако фактически оно ограничено ресурсами компьютера или специализированных микросхем, на которых обычно реализуется нейронная сеть. Чем сложнее сеть, тем более сложные задачи она может решать.
Выбор структуры нейронной сети осуществляется в соответствии с особенностями и сложностью задачи. Для решения отдельных типов задач уже существуют оптимальные конфигурации, описанные в приложении. Если же задача не может быть сведена ни к одному из известных типов, приходится решать сложную проблему синтеза новой конфигурации При этом необходимо руководствоваться следующими основными правилами.
- Возможности сети возрастают с увеличением числа нейронов сети, плотности связей между ними и числом слоев.
- Введение обратных связей наряду с увеличением возможностей сети поднимает вопрос о динамической устойчивости сети.
- Сложность алгоритмов функционирования сети, введение нескольких типов синапсов способствует усилению мощности нейронной сети.
Вопрос о необходимых и достаточных свойствах сети для решения задач того или иного рода представляет собой целое направление нейрокомпьютерной науки. Так как проблема синтеза нейронной сети сильно зависит от решаемой задачи, дать общие подробные рекомендации затруднительно. В большинстве случаев оптимальный вариант получается на основе интуитивного подбора, хотя в литературе приведены доказательства того, что для любого алгоритма существует нейронная сеть, которая может его реализовать.
Многие задачи распознавания образов (зрительных, речевых), выполнения функциональных преобразований при обработке сигналов, управления, прогнозирования, идентификации сложных систем, сводятся к следующей математической постановке. Необходимо построить такое отображение X → У, чтобы на каждый возможный входной сигнал X формировался правильный выходной сигнал У. Отображение задается конечным набором пар (<вход>, <известный выход>). Число этих пар (обучающих примеров) существенно меньше общего числа возможных сочетаний значений входных и выходных сигналов. Совокупность всех обучающих примеров носит название обучающей выборки.
В задачах распознавания образов X - некоторое представление образа (изображение, вектор), У - номер класса, к которому принадлежит входной образ. В задачах управления X - набор контролируемых параметров управляемого объекта, У - код, определяющий управляющее воздействие, соответствующее текущим значениям контролируемых параметров. В задачах прогнозирования в качестве входных сигналов используются временные ряды, представляющие значения контролируемых переменных на некотором интервале времени. Выходной сигнал – множество переменных, которое является подмножеством переменных входного сигнала. При идентификации X и У представляют входные и выходные сигналы системы соответственно.
Вообще говоря, большая часть прикладных задач может быть сведена к реализации некоторого сложного функционального многомерного преобразования.
В результате отображения X → У необходимо обеспечить формирование правильных выходных сигналов в соответствии:
– со всеми примерами обучающей выборки;
–
со всеми возможными входными сигналами,
которые не вошли в обучающую выборку.
Второе требование в значительной степени
усложняет задачу формирования обучающей
выборки. В общем виде эта задача в настоящее
время ещё не решена, однако во всех известных
случаях может быть найдено частное решение.
- Обучение нейронных сетей
Способность к обучению является основным свойством мозга. Для искусственных нейронных сетей под обучением понимается процесс настройки архитектуры сети (структуры связей между нейронами) и весов синаптических связей (влияющих на сигналы коэффициентов) для эффективного решения поставленной задачи. Обычно обучение нейронной сети осуществляется на некоторой выборке [3]. По мере процесса обучения, который происходит по некоторому алгоритму, сеть должна все лучше и правильнее реагировать на входные сигналы.

- Исследование динамики цен на золото и прогнозирование в программе Minitab
- Исследование динамических характеристик системы автоматического регулирования
- Исследование дисциплинарной ответственности
- Исследование допустимости доказательств в суде
- Исследование дорожных условий
- Исследование драйвера ядра Linux для шины I2C
- Исследование древне-, средне- и новоанглийского языков с помощью сопоставительного метода
- Исследование деятельности туристского предприятия на примере ООО «Политек»
- Исследование динамики импорта овощей на 2 месяца на основе БД ТД в зоне ЮТУ
- Исследование динамики и синтез цифровых алгоритмов управления боковым движением летательного аппарата
- Исследование динамики механизма гидравлического привода, конвейерного опрокидывателя, поточно-цехового опрокидывателя
- Исследование динамики рынка слияний и поглощений за 2011-2013 гг.
- Исследование динамики сбалансированных состояний по инвестиционным товарам и материалам на отнове трехсекторной модели экономики
- Исследование динамики уровня тревожности у детей младшего школьного возраста