Автор: Пользователь скрыл имя, 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
Другие программные продукты, реализующие нейросетевые принципы, менее известны и не получили большого распространения. Таким образом, можно заключить, что типичный программный продукт российского рынка нейросетевых программ, предназначенный исключительно для прогнозирования финансовых рынков, оценивается производителями примерно в $2000-$3000. Указанная цена по российским меркам достаточно высока (учитывая заработную плату в среднем по территории Российской Федерации), однако, относительно потенциальных прибылей, которые можно получить с использованием рассмотренных программных продуктов при торговле на финансовых рынках, это очень незначительная сумма.
СПЕЦИАЛЬНАЯ ЧАСТЬ
Как было отмечено в подразделе 1.3.5, задача прогнозирования с использованием ИНС сводится к задаче аппроксимации многомерных функций, т.е. к задаче построения многомерного отображения. В зависимости от типа выходных переменных, аппроксимация функций может принимать вид: классификации или регрессии. В задаче прогнозирования финансовых рынков можно выделить две крупные подзадачи: построение модели, обучение нейронных сетей реализующих решение задачи (т.е. фактически построение аппарата отображения).
В результате изучения предметной области исследователем должна быть разработана модель прогнозирования, ключевыми составляющими которой должны быть: набор входных переменных; метод формирования входных признаков x; метод формирования обучающего правила y; архитектура нейросети (ей); метод обучения нейросети (ей).
Для решения задачи прогнозирования необходимо найти: такую нейронную сеть или комитет нейроэкпертов, который бы наилучшим образом строил отображение F: xÞy, обобщающее сформированный на основе ценовой динамики набор примеров {xt, yt}. Поиск такой нейронной сети или комитета нейроэкспертов осуществляется при помощи одного или нескольких алгоритмов «обучения».
Здесь можно заметить, что нейросетевое моделирование в чистом виде базируется лишь на исходных данных (временном ряде).
Нейронные сети можно применять для одномерного и многомерного анализа, должным образом сформировав множество независимых входов и зависящих от них выходов. Как правило, модель строится для того, чтобы предсказывать значения временного ряда для одной целевой переменной, однако, в принципе, модель может предсказывать значения и нескольких переменных (например, доходы по акциям на различное время вперед), если в сеть добавить дополнительные выходные элементы.
При этом, однако, исследования в области прогнозирования временных рядов при помощи сетей продолжаются и в настоящее время, и никаких стандартных методов здесь пока не выработано. В нейронной сети многочисленные факторы взаимодействуют весьма сложным образом, и успех пока приносит только эвристический подход. Типичная последовательность действий при решении задачи прогнозирования финансовых показателей с помощью нейронных сетей показана на рис. 2.1.
1. Определение временного интервала. Формирование базы данных. |
2. Определение входных
величин. Определение |
3. Формирование входных множеств (обучающего, тестового) |
4. Выбор архитектуры нейросетей |
5. Обучение нейросетей |
6. Адаптивное предсказание и принятие решений |
Рис. 2.1. Блок-схема технологического цикла предсказаний рыночных временных рядов на основе нейросетей
Далее кратко рассмотрим некоторые моменты этой технологической цепочки. Хотя общие принципы нейромоделирования применимы к задаче прогнозирования в полном объеме, предсказание финансовых временных рядов имеет свою специфику.
На первом этапе исследователем определяются базовые характеристики данных, которые определяются торговой стратегией. Формируется база данных.
На втором этапе определяется набор входных и прогнозируемых величин, производятся анализ и очистка базы данных. Для этих целей используются оптимизационные, статистические и другие методы.
На третьем этапе производится формирование образов, подаваемых непосредственно на выходы нейросетей, с последующим созданием обучающих и тестовых множеств.
Архитектура нейросети зависит от поставленной задачи, в большинстве случаев используются сети типа многослойный перцептрон.
На пятом этапе с
Прогнозирование (шестой этап) осуществляется по тому же принципу, что и формирование обучающей выборки. При этом на этапе адаптивного предсказания и принятия решений выделяются две возможности: одношаговое и многошаговое прогнозирование.
Подзадача получения входных образов
для формирования входного множества
в задачах прогнозирования
При прогнозировании валютных рынков при помощи ИНС в качестве входной информации могут выступать: ценовая динамика и ее производные (значения индикаторов, значимые уровни и т.п.) и рыночные (часто макроэкономические) показатели. В рамках данной работы ставится задача прогнозирования финансовых временных рядов, таким образом, в качестве входной информации будет использоваться ценовая динамика.
В первую очередь, необходимо отметить, что перед тем как начать тренировать ИНС, входную информацию необходимо должным образом подготовить, т.е. в качестве входов и выходов нейросети не следует выбирать сами значения котировок [37]. Каждый набор входных переменных обучающего, тестового и рабочего множеств, составляющих «образ», должен обладать свойством инвариантности. Выходные сигналы, формирующиеся на выходах скрытых и выходных нейронов и подающиеся на выходы нейронов следующих слоев, лежат в интервале их активационных функций. Таким образом, логично полагать, что и входные сигналы должны также лежать в интервале активационных функций нейронов 1-го скрытого слоя.
Рассмотрим простейший способ формирования входных образов для обучения ИНС. Основным понятием при работе с рассматриваемым здесь видом входной информации является «окно» («глубина погружения»), т.е. то количество периодов времени, которое попадает в «образ», формируемый на входе сети. При работе с часовой динамикой курсов окно размером n будет означать, что исследователя интересует динамика курса за последние n часов. Чтобы ИНС работала с «образами» такого окна, при проектировании архитектуры сети необходимо выделить n входных нейронов.
Суть метода формирования входных
образов заключается в
(2.1) |
После такого преобразования каждый «образ», состоящий из n последовательных цен, нормируется так, что все значения «образа» лежат в интервале от 0 до 1. При этом истинные значения утрачиваются, и все входные записи укладываются в гиперкуб [0,1]n. (см. рис. 2.2).
Рис. 2.2. Результаты нормирования различных входных образов
Таким образом, при любом уровне
цен гарантируется
Как было сказано выше, в качестве входов и выходов нейросети не следует выбирать сами значения котировок, которые обозначим Ct. Действительно значимыми для предсказаний являются изменения котировок (DCt - изменение котировки в периоде t). Поскольку эти изменения, как правило, гораздо меньше по амплитуде, чем сами котировки, поэтому между последовательными значениями курсов имеется большая корреляция - наиболее вероятное значение курса в следующий момент равно его предыдущему значению: <Ct+1> = Ct + <DCt> = Ct. Между тем, для повышения качества обучения следует стремиться к статистической независимости входов, то есть к отсутствию подобных корреляций.
Поэтому в качестве входных переменных логично выбирать наиболее статистически независимые величины, например, изменения котировок DCt или логарифм относительного приращения log(Ct/ Ct-1) » DCt/ Ct-1. Хорошую информацию об изменениях курса дают дельты котировок: DCt = Ct-Ct-1. Легко заметить, что: если Ct>Ct-1, то DCt>0, если Ct<Ct-1, то DCt<0.
Рассмотрим формирование образов обучающего множества на примере часовой динамики курса евро/доллар за 1999 год. Наглядное представление о характере информационной насыщенности дельт котировок дает график, изображенный на рисунке 2.3. Ряд приращений котировок характеризуется островершинным нормальным распределением, т.е. энтропия образов - мера информационной насыщенности - недостаточно велика.
Первый образ обучающего множества, составленный из 24 изменений котировок, будет иметь вид, представленный на рисунке 2.4. Однако образы, сформированные подобным методом, еще пока не пригодны для подачи на входы ИНС, т.к. обладают слишком малой амплитудой колебаний, что связано с незначительными часовыми изменениями котировок твердых валют - в среднем 40 пунктов, т.е. 0.0040. Кроме того, по теории входная информация для ИНС должна лежать в интервале активационных функций нейронов.
Рис. 2.3. Наглядное представление «приращений котировок» в виде графика
Рис. 2.4. Пример первого «образа» из обучающего множества
Наибольшей энтропией обладает
равномерное распределение [37]
Сегодня известно множество способов преобразования входной информации применимых к задачам прогнозирования, например, можно воспользоваться следующей схемой: DC1t = DCt*1000, т.е. на первом шаге домножаем изменения котировок на константу, а на втором шаге используем самый естественный способ «перекодировать» непрерывные данные в интервал активационных функций ИНС, т.е. применяем к данным преобразование функцией-сигмоидом, используемой в первом скрытом слое ИНС: DC2t = 1/(1+EXP(-1.5*DC1t))-0.5 [37].
Измененный по такой схеме первоначальный «образ» представлен на рис. 2.5.
Рис. 2.5. Пример готового к подаче на
входы нейросети первого «
из обучающего множества
Сформированные по описанной схеме «образы» составляют обучающее множество. Таким образом, обучающее множество, построенное на часовой динамике курса евро/доллар, почти равномерно распределено, хотя его значения больше тяготеют к среднему и экстремальным значениям (рис. 2.6).
Рис. 2.6. Распределение значений на 1-м входном нейроне ИНС
В качестве поступающих на входы ИНС данных могут выступать как приращения цен одного типа, например цен закрытия, так и комбинации приращений разных типов цен в пределах одного временного интервала. Например, информация, содержащаяся в «свече», а именно, цены: открытия, максимальная, минимальная, закрытия, может подаваться на 4 входных нейрона. Очевидно, что при таком подходе к описанию рыночной ситуации появляются трудности при попытке охватить достаточное количество интервалов времени в прошлом. Для кодирования информации о 24 последних интервалах (сутки на часовом графике), например, понадобится 96 входных нейронов. Задача с такой размерностью входной информации может быть решена качественно лишь при наличии специального оборудования (нейроплат, нейрочипов).
Тем не менее, такая постановка задачи имеет смысл, если пытаться найти зависимость на основе небольшого окна. На рисунке 2.7 показана процедура формирования входного образа для задачи с окном 3 периода. В качестве входных данных выступают приращения максимальных, минимальных цен и цен закрытия периода. Такой подход к прогнозированию можно рассматривать как нейросетевой аналог анализа «японских свечей», поскольку прослеживается прямая аналогия с попытками некоторых трейдеров найти закономерности в комбинациях последних «японских свечей», образовавшихся на графике.
Информация о работе Прогнозирование финансовых рынков с использованием искусственных нейронных сетей