Автор: Пользователь скрыл имя, 24 Апреля 2013 в 18:42, дипломная работа
Целью данной работы является изучение опыта специалистов в области прогнозирования финансовых рынков с использованием искусственных нейросетей, а также разработка собственных подходов к прогнозированию рынка FOREX и проектированию торговых систем, пригодных для использования в торговом зале.
Для достижения поставленной цели в дипломной работе решаются следующие задачи:
а) проведение обзора специализированной литературы, ресурсов глобальной сети Интернет, а также рынка программных средств, реализующих нейросетевые принципы для решения задач прогнозирования;
б) постановка и выполнение оптов с целью определения этапов процесса решения задачи прогнозирования, которые нуждаются в автоматизации; сделать выводы по результатам опытов
ВВЕДЕНИЕ 7
1. ПРОГНОЗИРОВАНИЕ ФИНАНСОВЫХ РЫНКОВ 10
1.1. СОВРЕМЕННЫЕ ФИНАНСОВЫЕ РЫНКИ. МЕЖДУНАРОДНЫЙ ВАЛЮТНЫЙ РЫНОК FOREX 10
1.2. ПРОГНОЗИРОВАНИЕ ФИНАНСОВЫХ РЫНКОВ 12
1.2.1. Прогноз и цели его использования 12
1.2.2. Основные понятия и определения проблемы прогнозирования 13
1.2.3. Методы прогнозирования финансовых рынков 17
1.2.4. Использование систем с искусственной «памятью» для решения задач прогнозирования 22
1.3. ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ 24
1.3.1. Биологические нейронные сети 24
1.3.2. Математическая модель нейрона, искусственные нейросети 26
1.3.3. Основополагающие принципы нейровычислений 29
1.3.4. Обучение искусственных нейронных сетей 31
1.3.5. Задача прогнозирования с использованием технологии нейровычислений 33
1.4. ОБЗОР ПРОГРАММНЫХ СРЕДСТВ, РЕАЛИЗУЮЩИХ АЛГОРИТМЫ НЕЙРОВЫЧИСЛЕНИЙ ДЛЯ РЕШЕНИЯ ЗАДАЧ ПРОГНОЗИРОВАНИЯ 35
2. ПРОГНОЗИРОВАНИЕ РЫНКА FOREX С ИСПОЛЬЗОВАНИЕМ ИСКУССТВЕННЫХ НЕЙРОСЕТЕЙ 42
2.1. ПОСТАНОВКА ЗАДАЧИ ПРОГНОЗИРОВАНИЯ ФИНАНСОВЫХ РЫНКОВ С ИСПОЛЬЗОВАНИЕМ ИСКУССТВЕННЫХ НЕЙРОСЕТЕЙ 42
2.2. ОПИСАНИЕ ТЕКУЩЕЙ РЫНОЧНОЙ СИТУАЦИИ. ПРЕДСТАВЛЕНИЕ ВХОДНЫХ ДАННЫХ 45
2.2.1. Перемасштабирование графика цены в единичный интервал 45
2.2.2. Описание рыночной ситуации при помощи приращений котировок 47
2.2.3. Обобщение значений индикаторов технического анализа 51
2.3. ПРОГНОЗИРУЕМЫЕ ВЕЛИЧИНЫ. ПРЕДСТАВЛЕНИЕ ВЫХОДНЫХ ДАННЫХ 53
2.3.1. Классификация рыночных ситуаций. Шаблон максимальной прибыли 53
2.3.2. Аппроксимация прогнозируемых величин. Сглаженный шаблон максимальной прибыли 58
2.3.3. Классификация рыночных ситуаций по достижимости значимых уровней. 61
2.2.4. Аппроксимация отношения текущего положения цены к коридору будущих цен 62
2.4. ОБУЧЕНИЕ ИСКУССТВЕННЫХ НЕЙРОСЕТЕЙ. АНАЛИЗ РЕЗУЛЬТАТОВ 63
2.4.1. Нейросетевой индикатор для прогнозирования рынка евро/доллар 63
2.4.2. Классификация рыночных ситуаций 76
2.4.3. Оценка положения текущей цены в коридоре будущих котировок 80
2.4.4. Оценка достижимости ценой значимых уровней 82
2.4.5. Прогнозирование максимального и минимального уровней цены на один период вперед 85
2.4.6. Выводы 87
2.5. КОНЦЕПТУАЛЬНАЯ СХЕМА СИСТЕМЫ ПРОГНОЗИРОВАНИЯ 89
ЗАКЛЮЧЕНИЕ 96
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 98
ПРИЛОЖЕНИЯ 102
Рис. 2.17. Пример применения индикатора (красная линия)
Торгуя по такой системе в январе 2000 года на рынке евро/доллар, можно было заработать 488 пунктов (или 4,8 «фигуры» на лексиконе трейдеров), что составляет 57% годовых (12*4,8) для «немаржинальной» торговли (рис. 2.18). Стрелками на графике отмечены моменты открытия и закрытия позиций (длинных и коротких соответственно), внизу красной линией изображен индикатор (рис. 2.18).
Как правило, торговые системы практикующих
трейдеров гораздо более
Рис. 2.18. Результат торговли в январе
2000 г. на рынке евро/доллар
(красная линия вверху)
При разработке нейросетевого индикатора попытаемся в качестве входных данных использовать производные ценовой динамики, а именно - сигналы индикаторов технического анализа (ТА). Очевидные достоинства применения входных данных такого рода описаны выше.
Цель опыта: сформировать комитет нейроэкпертов, который бы решал задачу аппроксимации MPP, сглаженного 6-типериодной скользящей средней, по сигналам индикаторов технического анализа. База для формирования входной информации: часовая динамика курса евро/доллар. Входная информация: значения индикаторов ТА. Выходная информация: сглаженный 6-типериодной скользящей средней MPP.
При отборе индикаторов в обучающее
множество будем
Из множества индикаторов ТА для обучающей выборки отберем следующие двенадцать:
а) Williams' %R (14);
б) Dynamic Momentum Index;
в) Price ROC (24);
г) Chande Momentum Oscillator (20);
д) Chaikin A/D Oscillator;
е) CCI-Standard;
ё) Forecast Oscillator;
ж) Swing Index;
з) Stochastic Oscillator;
и) Relative Momentum Index;
й) Binary Wave Composite (as trend);
к) MACD (as trend).
Обучение каждой сети производилось до тех пор, пока MSE не переставала заметно уменьшаться. Результаты обучения 10-ти нейросетей представлены в таблице 2.2.
В качестве результирующего значения будем использовать мнение комитета указанных 10 нейросетей. Мнение комитета получается путем нахождения взвешенного по результирующей ошибке среднего мнения каждой сети, в результате чего хуже обученные сети имеют меньше шансов влиять на общее мнение комитета.
Полученное среднее мнение комитета можно использовать для построения индикатора. Значения среднего мнения комитета зашумлены, что затруднят использование индикатора, кроме того, в результате усреднения выходных значений ИНС уменьшилась амплитуда колебаний рассматриваемой величины. Интервал колебаний уменьшился с [-0.5;0.5] до [-0.3;0.3].
Таблица 2.2.
Характеристики нейросетей, задействованных в эксперименте
Сеть |
Архитектура |
MSE |
Доля верно распознаваемых образов |
EUR1 |
(12-25-20-8-1) |
0.1905 |
51,17 |
EUR2 |
(12-24-16-8-1) |
0.1860 |
51,82 |
EUR3 |
(12-24-18-12-1) |
0.1900 |
49,69 |
EUR4 |
(12-24-18-12-1) |
0.1870 |
48,57 |
EUR5 |
(12-24-24-24-16-8-1) |
0.1630 |
59,56 |
EUR6 |
(12-24-18-12-1) |
0.1803 |
51,01 |
EUR7 |
(12-24-20-16-1) |
0.1800 |
51,86 |
EUR8 |
(12-24-20-16-1) |
0.1813 |
50,28 |
EUR9 |
(12-28-24-1) |
0.1670 |
48,48 |
EUR10 |
(12-28-24-1) |
0.1756 |
48,42 |
Таким образом, конечные значения индикатора получены путем сглаживания мнения комитета 3-хпериодной скользящей средней и домножения на коэффициент (в нашем примере 1,5).
Проверить «качество» индикатора можно на данных, которые не использовались при обучении ИНС. Протестируем обученные ИНС на часовой динамике курса евро/доллар за январь 2000. Для анализа «качества» индикатора построим точечную диаграмму, на которой по оси абсцисс будем откладывать желаемые «идеальные значения», а по оси ординат - соответствующие значения полученного индикатора (рис. 2.19). Точками красного цвета показано «желаемое» соотношение ожидаемых и фактически полученных выходных значений.
Как видно из диаграммы, значения полученного индикатора испытывают большие отклонения от «идеальных» значений (среднее отклонение составило 0.2053, что меньше, правда, чем в предыдущем опыте). Кроме того, сигналам на продажу можно доверять больше, чем сигналам на покупку (концентрированное облако из синих точек в левом нижнем углу).
Рис.2.19. Диаграмма, отражающая качество
распознавания комитетом
Потенциальную прибыльность торговли по сигналам полученного индикатора оценим по результатам простейшей торговой стратегии:
а) пересечение индикатором
б) пересечение индикатором
в) пересечение индикатором
Для получения лучших стратегий уровни необходимо подбирать оптимизационными методами. В рассматриваемом здесь опыте эти уровни были установлены в следующих местах: верхний (0.25), серединный (0), нижний (-0.25), при интервале индикатора [-0.5;0.5] (см рис. 2.20). При пересечении значимых уровней моделируются сигналы на покупку или продажу. На рисунке 2.20 сглаженный MPP изображен синей линией в нижней части рисунка, индикатор комитета - красной.
Торгуя по избранной системе в январе 2000 года на рынке евро/доллар, можно было заработать 580 пунктов (или примерно 6 фигур), что составляет 69,6% годовых (12*5,8) для «немаржинальной» торговли и 6960% годовых (12*5,8*100) для «маржинальной» торговле с плечом 100, но без учета комиссионных. Моменты открытия и закрытия позиций (длинных и коротких соответственно) отмечены стрелками на рисунке 2.21, в нижней части рисунка красной линией изображен индикатор комитета нейроэкспертов.
Рис. 2.20. Пример применения индикатора (красная линия)
Рис. 2.21. Результат торговли в январе
2000 г. на рынке евро/доллар
(красная линия вверху).
Результаты проведенного опыта оказались более успешными в сравнении с предыдущим. Большинство ИНС «научились» распознавать около половины предъявленных при обучении образов. MSE на выходах ИНС также оказалась меньше, чем в предыдущем опыте.
В двух предыдущих опытах в качестве прогнозируемой величины была использована величина сглаженного MPP, другим словами решалась задача нелинейной регрессии при помощи ИНС. Фактически предпринималась попытка при помощи комитета нейроэкспертов получить максимально приближенную к «идеальной» кривую. Однако, как упоминалось выше, нейронные сети могут быть использованы также в качестве классификатора, необходимо лишь правильно закодировать значения классов.
Рассмотрим процедуру
Цель опыта: сформировать комитет нейроэкпертов, который бы решал задачу классификации рыночных ситуаций (на основе MPP) по сигналам индикаторов технического анализа, базирующихся на часовой динамике курса евро/доллар. Входная информация: значения индикаторов ТА. Выходная информация: значения классов образов: «Покупка», «Продажа», «Ожидание».
Рис. 2.22. Распределение ожидаемых значений при постановке задачи классификации рыночных ситуаций по сигналам MPP (евро/доллар 1999 г.)
В рамках решения поставленной задачи было обучено 21 ИНС (результаты обучения см. в приложении 1). Для обучения нейросетей был использован метод, базирующийся на генетических алгоритмах, что сказалось на качестве обучения. MSE нейросетей, задействованных в эксперименте, в среднем оказалась меньше, чем в предыдущих опытах. В качестве результирующего значения будем использовать мнение комитета обученных нейросетей. Поскольку MSE нейросетей различаются мало (см. приложение 1), при расчете среднего мнения комитета воспользуемся формулой простой средней. Полученное среднее мнение комитета можно использовать как непосредственно для классификации ситуаций, так и для построения индикатора. Тестирование, как и в предыдущих опытах, будем проводить на входных данных, построенных на основе динамики курса евро/доллар за январь 2000 г.
Полученные при тестировании предсказываемые значения, как и в прошлых опытах, изобразим в виде точечной диаграммы. В целях обеспечения базы сравнения по оси абсцисс отложим значения MPP, сглаженные 6-типериодной скользящей средней (рис. 2.23).
Рис. 2.23. Диаграмма, отражающая качество
распознавания комитетом
Поскольку в качестве активационной функции нейронов ИНС была использована функция типа «сигмоид», значения, получаемые на выходном нейроне сетей, не будут дискретными. Поэтому относить образ (рыночную ситуацию) к тому или иному классу необходимо по некоторому правилу, например, по признаку попадания выходного значения ИНС в интервал класса Dxi. По результатам тестирования была получена следующая статистика:
а) 300 - количество верно предсказанных ситуаций из 618 (48,54%);
б) 415 - количество ситуаций с верно предсказанным направлением движением рынка - «скорее покупать» или «скорее продавать» (67,15%);
в) 446 - количество ситуаций с верно предсказанным действием «ожидание», всего ситуаций с продолжением «ожидание» - 466 (72,17% к общему количеству ситуаций; 95,71% к общему январскому количеству ситуаций с действием «ожидать»);
г) 6 из 152 (»4%) - абсолютно точно предсказанных сигналов на «торговлю» (покупка или продажа);
д) 104 из 152 (68,42%) - верно предсказанных
направлений рынка для
е) 0,1736 - среднее отклонение выходных значений от сглаженного 6-типеродной скользящей средней MPP.
В целом, обобщая полученный результаты,
можно говорить о наличии внутренних
зависимостей в ценовой динамике,
почти в 70% случаев однозначно было
предсказано будущее
Кроме непосредственно классификации полученные прогнозные значения можно использовать для построения индикатора (см. рис. 2.24). Стрелками на графике отмечены моменты открытия и закрытия позиций по избранной системе торговли (длинных и коротких соответственно). Индикатор комитета изображен красной линией в нижней части, результат торговли - красной линией в верхней части рисунка.
Как и в предыдущих опытах, для моделирования торговли построим простейшую торговую систему. После процесса оптимизации значимые уровни расставим следующим образом:
а) открытие «длинных позиций» - пересечение уровня +0,15 вверх;
б) открытие «коротких позиций» - пересечение уровня -0,15 «вниз».
Рис. 2.24. Индикатор комитета и результат
торговли
в январе 2000 г. на рынке евро/доллар
Как видно из рисунка, результат торговли в январе 2000 г. по курсу евро/доллар составил +780 пунктов (или 7,8 «фигур»), с учетом того, что по выбранной системе, торговля с ожидаемым сигналом принесла доход в размере +1428 пунктов (14,28 «фигур») - максимум, который можно было заработать в январе 2000 г.
Цель опыта: сформировать комитет нейроэкпертов, решающий задачу нелинейной регрессии величины, задающей относительное положение текущей цены в будущем коридоре цен, по сигналам индикаторов ТА. База для формирования входной информации: часовая динамика курса евро/доллар за 1999 год. Входная информация: сигналы индикаторов ТА (обучающая выборка, рассмотренная в подразделе 2.4.1). Выходная информация: величина, рассмотренная в подразделе 2.3.4.
Для решения поставленной задачи было обучено 45 ИНС, из которых в комитет были отобраны 30 лучших по величине последней MSE. Поскольку для обучения был использован метод, базирующийся на генетических алгоритмах, задействованные в эксперименте ИНС на обучающем множестве показали неплохие результаты (см. приложение 2). Средняя MSE ИНС комитета на обучающей выборке составила 0,1398. Для анализа пригодности использования полученной величины проведем тестирование комитета ИНС на тестовом множестве, сформированном по данным часовой динамики курса евро/доллар за январь 2000 г.
По результатам тестирования была построена диаграмма (рис. 2.25), на которой наглядно изображается отклонение (рассеивание) прогнозируемой величины от ожидаемой. Как и в предыдущих опытах, по оси абсцисс откладывались значения ожидаемых («идеальных») значений, по оси ординат - преобразованное среднее мнение комитета нейроэкспертов. Как видно из диаграммы, прогнозируемая величина сильно рассеивается относительно ожидаемых значений (линия из красных точек). В числовом измерении среднее отклонение по проверочной выборке составило 0,2639.
Информация о работе Прогнозирование финансовых рынков с использованием искусственных нейронных сетей