ВВЕДЕНИЕ 3
1. АРХИТЕКТУРА НЕЙРОННОЙ СЕТИ И ФИГУРА «ДВОЙНОЕ ДНО»... 6
1.1 Архитектура нейронной сети 6
1.2 Фигура «двойное дно» 8
2. ФОРМИРОВАНИЕ ВХОДНЫХ ДАННЫХ И АЛГОРИТМ ОБУЧЕНИЯ 11
2.1 Формирование входных данных 11
2.2 Метод обратного распространения ошибки 15
3. РЕАЛИЗАЦИЯ ПРОГРАММ ПОДГОТОВКИ ДАННЫХ И НЕЙРОННОЙ СЕТИ 19
3.1 Реализация программы для подготовки входных данных 19
3.2 Реализация программы с нейронной сетью 21
3.3 Тестирование нейронной сети 28
ЗАКЛЮЧЕНИЕ 30
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ 31
ПРИЛОЖЕНИЕ
За последние несколько лет наблюдается возросший интерес к моделированию работы мозга человека. Человеческий мозг работает как очень сложное, нелинейное вычислительное устройство, которое каждую секунду обрабатывает огромное количество поступающей информации совсем иным способом, в отличие от компьютеров. Наиболее близкая и известная модель искусственного интеллекта - нейронная сеть.
Все чаще поднимается вопрос о применении искусственных нейронных сетей в решении прикладных задач, поскольку они являются действенным классом математических моделей. Нейронные сети используются в решении таких задач, как прогнозирование, классификация, распознавание, аппроксимация, кластеризация и т.д.
Области применения искусственных нейронных сетей различны, в том числе они используются и для финансовых рынков . На текущий момент существуют различные способы торговли акциями на фондовом рынке. Более доступным для обычного трейдера является технический анализ, построенный на математическом аппарате и поиске закономерностей на исторических данных.
Согласно последним исследованиям, шаблоны фондового рынка способны прогнозировать разворот цены. Таким образом, следя за графиком и следуя выбранной стратегии, трейдер совершает сделки. Вполне логично предположить, что автоматизация этой достаточно механической работы трейдера принесет свои плюсы. Более того автоматизированную систему можно настроить под конкретный рынок, объединить различные инструменты, которыми в совокупности человеку пользоваться затруднительно.
Популярность использования нейронных сетей для этих задач растет с каждым годом все больше и больше. В настоящее время Токийская фондовая биржа тестирует нейросетевой подход в распознавании шаблонов. Эксперименты проводятся удачно. Реализованной программы в сети нет, поэтому предполагается реализовать данный подход. Собственная реализация нейронной сети имеет возможности тонкой настройки под определенные требования, в отличие от библиотечных сетей.
Главная задача данной работы - исследовать использование нейросетевого подхода при прогнозировании цен фондового рынка. В качестве прогнозирования рассматривается распознавание разворотной фигуры «двойное дно» на временном ряду. Помимо выбора подходящей конфигурации нейронной сети, на ее эффективность большое влияние оказывают данные для обучения, требующие предварительной подготовки. Это важный первый этап данного исследования.
Объект исследования данной работы - нейронные сети для распознавания шаблона, прогнозирующего разворот цены.
Предмет исследования - анализ выбранной конфигурации нейронной сети для решения задачи распознавания фигуры.
Цель исследования в рамках проекта - предварительная обработка данных для обучения, создание нейронной сети для распознавания фигуры.
В ходе работы ставятся и решаются следующие задачи:
• Проанализировать экспортированные данные.
• Подготовить данные для обучения нейросети.
• Выявить архитектуру нейронной сети.
• Реализовать алгоритм обучения нейронной сети.
Используемые материалы для исследования - реальные данные, полученные с сайта крупнейшего брокера России «Финам», в виде котировок акций российской компании Газпром.
Практическая значимость данной работы - реализация прототипа нейронной сети, решающей задачу распознавания фигуры технического анализа и реализация эффективного метода представления финансовых временных рядов для искусственной нейронной сети.
В первой главе рассмотрена модель искусственного нейрона, определена архитектура нейронной сети. Изучена разворотная фигура «двойное дно».
Во второй главе рассмотрено формирование входных данных нейронной сети с использованием индикатора Zigzag. Выбрана ошибка обучения, изучен метод обратного распространения ошибки.
В третьей главе рассмотрена реализация программы подготовки входных данных для обучения нейронной сети, представлен ее интерфейс. Рассмотрена реализация программы, содержащая нейронную сеть, и ее интерфейс. Представлены результаты работы нейронной сети.
Распознавание образов с помощью нейронных сетей существенно упрощает работу человека. В связи с увеличением инструментов технического анализа становится тяжело уследить за рынком. Автоматическое распознавание шаблонов с помощью нейронных сетей упростит этот процесса для трейдера.
В ходе выполнения данной работы был исследован нейросетевой подход распознавания фигуры технического анализа. Изучено устройство многослойного персептрона, проанализированы экспортированные данные с котировками акций. Предложен и реализован метод подготовки данных для обучения нейронной сети.. Изучен алгоритм обратного распространения ошибки.
В практической части исследования была разработана система, состоящая из двух программ. Одна программа предназначена для подготовки обучающих данных, вторая - для реализации многослойного персептрона по Румельхарту и его тестирования. Реализация программ для подготовки данных и нейронной сети выполнена на языке программирования C# в Visual Studio 2015.
Согласно приведенным результатам работы реализованной нейронной сети, ее эффективность составила78%. Таким образом многослойный персептрон может использоваться в качестве инструмента для распознавания образов в техническом анализе.
Для повышения эффективности нейронной сети предполагаются дальнейшие исследования: ее модернизация, более тонкая настройка. Увеличение обучающего и тестового множеств положительным образом скажется на эффективности нейронной сети. Также стоит обратить внимание на изучение и разработку новых методов предварительной обработки обучающих множеств и задействовать другие методы обучения многослойного персептрона.
1. Воронов И.В., Политов Е.А., Ефременко В.М. Обзор типов искусственных нейронных сетей и методов их обучения // Вестник Кузбасского государственного технического университета. - 2007. - №3. С. 1-7.
2. Головачев С. С. Использование искусственных нейронных сетей для прогнозирования американского фондового рынка в период кризиса // Управление экономическими системами: электронный научный журнал. - 2012. - №47 С. 1 - 10.
3. Горбань А.Н. Обучение нейронных сетей. - М.: СП «Параграф», 1990 - 160 с.
4. Ефремова Е.А., Дунаев Е.В. Применение нейронных сетей для прогнозирования финансовых временных рядов. // Доклады ТУРСУРа, 2004. С. 150 — 155
5. Круглов В.В., Борисов В.В. Искусственные нейронные сети: Теория и практика. М.: Горячая линия - Телеком, 2002 - 382 с.
6. Мицель А. А., Ефремова Е. А. Прогнозирование динамики цен на
фондовом рынке // Известия Томского политехнического
университета. - 2006. - №8 1-5.
7. Хайкин С. Нейронные сети: полный курс. М.: Издательский дом Вильямс, 2006 — 1104 с.
8. Шагалова П.А.. Реализация системы распознавания образов на базе нейросетевого подхода для анализа временных рядов.
//Труды Нижегородского государственного технического
университета им. Р.Е. Алексеева. 2015. № 3(110) С. 85-90.
9. Шилдт Г. С# 6.0. Справочник. Полное описание языка. - М.: Издательский дом "Вильямс", 2017 - 1040 с.
10. Шумков Е.А., Ботин В.А., Карлов Д.Н. Распознавание фигур технического анализа с помощью нейронных сетей.
//Научный журнал КубГАУ. 2011. №65(01). С. 1 - 10.
11. Шумков Е.А. Структуры механических торговых систем.
// Научный журнал КубГАУ. 2012. №3(39). С. 5 - 11.
12. Алгоритм обучения многослойной нейронной сети методом
обратного распространения ошибки (Backpropagation). Получено из habrahabr:https://habrahabr.ru/post/198268/.
13. Нейронные сети для начинающих. Часть 1. Получено из Habrhabr: https://habrahabr.ru/post/313216/.
14. Нейронные сети для начинающих. Часть 2. Получено из Habrhabr: https://habrahabr.ru/post/312450/.
15. Нейронные сети - математический аппарат. Получено из Basegroup: https: //basegroup. ru/community/articles/math.
16. Руководство по программированию на c# . Получено из microsoft: https://docs.microsoft.com/ru-ru/dotnet/csharp/programming-guide/index.
17. Фигура Двойное дно. (б.д.). Получено из Tradexperts: 1.
https: //tradexperts .ru/T ehnicheskij -Analiz-Foreks/F oreks-Figury-
T ehnichesko go-Analiza/F i gura-Dvoj noe-dno.