Анализ фундаментальных факторов
Фундаментальные факторы являются ключевыми макроэкономическими показателями состояния национальной экономики, действующими в среднесрочной перспективе, воздействующими на участников валютного рынка и уровень валютного курса. Агентство Рейтер публикует специальную страницу прогноза основных экономических индикаторов развитых стран. Обычно это данные макроэкономической статистики, публикуемые национальными статистическими органами.
Отмечено, что на мировых валютных рынках, где 80% арбитражных операций проводятся с американским долларом, наибольшее влияние имеют данные по экономике США, что приводит к повышению или понижению курса доллара по отношению к остальным валютам.
Трейдеры, принимающие решения о покупке или продаже валюты, после появления на экранах мониторов сообщений о значении того или иного экономического индикатора, должны мгновенно ответить на ряд вопросов, от правильного решения которых зависит размер полученной прибыли или убытка. Появившиеся цифры могут быть такими, как ожидал рынок, или, наоборот, неожиданные. Поскольку трейдеры знают предварительный прогноз экономического показателя, в первую секунду после его публикации они сравнивают прогноз и реальное значение. В случае совпадения спрогнозированного и реального значения показателя сильного движения валюты, как правило, не происходит. Вышедшие данные могут быть положительными или отрицательными. Положительные данные приводят к росту курса валюты, отрицательные, наоборот, к его снижению. Принимается во внимание также показатель, учитывающий сезонную цикличность.
Выделяют следующие основные фундаментальные факторы: валютный курс по паритету (Purchasing Power Parity Rate - PPP Rate), валовой национальный продукт - ВНП (Gross National Product - GNP), уровень реальных процентных ставок (Real Interest Rate), уровень безработицы (Unemployment Rate), инфляция (Inflation), платежный баланс (Balance of Payment), индекс промышленного производства (Industrial Production), индекс главных показателей (Leading Indicators Index - LEI), индекс делового оптимизма.
Для трейдера универсальным правилом открытия позиции должно являться ориентирование на ожидания и настроения большинства участников рынка. Это достигается путем анализа ситуации по публикациям, при изучении обзоров состояния рынка в информационных системах, обмена мнениями с другими трейдерами. Таким образом, задача трейдера состоит в том, чтобы присоединиться к движению курса, продиктованному большинством участников рынка - "вскочить в лодку".
Аппроксимация отношения текущего положения цены к коридору будущих цен
Полезной в плане предсказания является величина, характеризующая положение цены в настоящий момент относительно коридора из максимальной и минимальной цен через некоторое количество периодов в будущем. Знание текущего положения цены в коридоре будущих цен позволило бы принимать решения о торговле при приближении значений прогнозируемой величины к максимальным и минимальным значениям ряда.
Рассмотрим результат расчета временного ряда, построенного по описанному правилу на основе динамики курса евро/доллар в 1999 году при прогнозировании на 24 часа вперед (см. рис. 2.14). Данный вид прогнозируемой информации на выбранном коридоре обладает распределением близким к равномерному, но при условии наличия в обучающей выборке данных о периодах роста, падения и застоя прогнозируемого инструмента в равной пропорции. В 1999 году евро больше падала в цене, и на диаграмме можно заметить, что значений прогнозируемой величины, показывающих потенциал снижения цены больше (количество значений близких к максимуму).
Рис. 2.14. Распределение ожидаемых значений при постановке задачи прогнозирования отношения текущего положения цены к коридору будущих цен (евро/доллар 1999 г.)
Аппроксимация прогнозируемых величин. Сглаженный шаблон максимальной прибыли
Рассмотрим перцептрон с одним выходным нейроном. Подавая на входы этого перцептрона любые числа x1, x2, ..., xn, получим на выходе значение некоторой функции F(x1, x2, ..., xn), которое является ответом (реакцией) сети. Очевидно, что ответ сети зависит как от входного сигнала, так и от значений ее внутренних параметров - весов нейронов.
Естествен вопрос: а может ли перцептрон реализовать достаточно сложную функцию? Этот вопрос, по своей сущности, математический - о представимости одних функций посредством других. Ученые занимались решением этой задачи долгое время и ответ был получен сравнительно недавно - в 1989 г. В результате продолжительных исследований несколькими учеными практически одновременно была сформулирована теорема, которая на языке нейросетей звучит так: «Любую непрерывную функцию нескольких переменных можно с любой точностью реализовать с помощью обычного трехслойного перцептрона с достаточным количеством нейронов в скрытом слое». Это означает, что с помощью стандартного перцептрона в принципе возможно решать любые задачи прогнозирования и оценки, в которых существуют функциональные зависимости. Здесь указывается «в принципе», так как теорема не указывает, каким способом можно подобрать веса каждого нейрона, используя набор примеров.
Если на рынке существуют функциональные зависимости, то успех решения задачи аппроксимации, кроме всего прочего, во многом будет зависеть от выбора прогнозируемой величины - обучающего правила. Рассмотрим пример формирования величины, достоверный прогноз которой позволял бы получать максимальную прибыль при торговле на рынке.
Как показано выше, в качестве обучающего правила можно взять MPP. Однако, MPP в чистом виде содержит дискретные данные, что делает задачу достаточно сложной. Кроме того, как показывает практика, для ведения оптимальной торговли, большую часть времени на рынке приходится ожидать возможности «войти в рынок». Построенная для такого рынка MPP будет содержать большое количество сигналов на «ожидание» покупки или продажи.
При обучении по такому правилу ИНС начнет «тяготеть» к формированию на выходе тех сигналов, которые чаще встречаются в обучающем множестве. Рассмотрим ряд MPP, построенный для динамики курса евро/доллар за 1999 год (см. рис. 2.11).
Рис. 2.11. Распределение желаемых выходных значений ИНС при применении в качестве обучающего правила «необработанного» MPP
Как показывает опыт, при прогнозировании по графическим образам добиться от сети точных данных на выходе невозможно, попытаемся облегчить для сети задачу обучения, а именно, сгладим значения MPP 6-типериодной скользящей средней. Гистограмма распределения выходного сигнала, таким образом, примет вид, изображенный на рисунке 2.12. Фактически график значений обучающего правила примет вид, изображенный на рисунке 2.9 (красная линия).
Особо хочется отметить тот факт, что обучающее множество желательно формировать таким образом, чтобы распределение выходных сигналов тяготело к равномерному, как показывает практика. Это позволит существенно уменьшить среднеквадратическую ошибку ИНС. В нашем случае (рис. 2.12), не смотря на некоторое приближение распределения сглаженного MPP к равномерному, распределение полученной после преобразования величины далеко до равномерного.
Рис. 2.12. Распределение значений на выходе последнего нейрона ИНС при применении в качестве обучающего правила сглаженного (6-типериодной скользящей средней) MPP (база - евро/доллар 1999)
Кроме того, в течении 1999 года евро больше падала в цене, следовательно сигналов на продажу и ожидание продажи в обучающей выборке получится больше, чем сигналов на покупку и ожидание покупки. Сразу можно говорить о том, что обученные по такому правилу ИНС будут «тяготеть» к сигналу «ожидание продажи». Необходимо использовать алгоритм формирования обучающей выборки, который бы позволял избегать излишнего доминирования отдельных выходных значений.
Возможными прогнозируемыми величинами при реализации задачи прогнозирования могут являться: доходность и ценовые показатели, то есть средневзвешенная цена, цены закрытия и открытия, максимальная и минимальная цены.Причем прогнозироваться могут как показатели, определенные для целой группы инструментов или некоторого рынка в целом, так и показатели, определенные только для одного инструмента финансового рынка. В некоторых пакетах нейросетевого анализа финансовых рынков встроены модели, позволяющие прогнозировать максимальные и минимальные значения цены на один или несколько шагов вперед.
Биологические нейронные сети
Сеть нейронов человеческого мозга представляет собой высокоэффективную комплексную систему с параллельной обработкой информации. Она способна организовать (настрорить) нейроны таким образом, чтобы реализовывать восприятие образа, его распознавание во много раз быстрее, чем эти задачи будут решены самыми современными компьютерами. Так распознавание знакомого лица происходит в мозге человека за 100-120 мс, в то время как компьютеру для этого необходимы минуты и даже часы.
Сегодня, как и 40 лет назад, не подвергается сомнению то, что мозг человека работает принципиально иным образом и более эффективно, чем любая вычислительная машина, созданная человеком. Именно этот факт в течение ряда лет побуждает и направляет работы ученых по созданию и исследованию искусственных нейронных сетей.
К первым попыткам раскрыть секреты анатомической организации мозга можно отнести исследования Сантьяго Рамон-и-Кахаля (1911). Применив метод окраски нейронов солями серебра, разработанный ранее Камилло Гольджи (серебро избирательно проникает в нейроны, но не пропитывает другие клетки мозга), Кахаль увидел, что мозг имеет клеточную архитектуру. Кахаль описал нейроны как поляризованные клетки, которые получают сигналы сильно разветвленными отростками, получившими названия дендритов, а посылают информацию неразветвленными отростками, названными аксонами. Аксон контактирует с дендритами других нейронов через специальные образования - синапсы, которые влияют на силу импульса (см. рис. 1.1).
Рис. 1.1. Схема биологического нейрона.
Окрашивание по Гольджи позволило выявить огромное разнообразие нейронов по форме тела, разветвленности дендритной части и длине аксона. Кахаль выявил различия между клетками с короткими аксонами, взаимодействующими с соседними нейронами, и клетками с длинными аксонами, проецирующимися в другие участки мозга. Несмотря на различия в строении, все нейроны проводят информацию одинаково.
Связи между нейронами опосредуются химическими передатчиками - нейромедиаторами - выделяющимися из окончаний отростков нейронов в синапсах.
Можно считать, что при прохождении через синапс сила импульса меняется в определенное число раз, которое будем называть весом синапса. Импульсы, поступившие к нейрону одновременно по нескольким дендритам, суммируются. Если суммарный импульс превышает некоторый порог, нейрон возбуждается, формирует собственный импульс и передает его далее по аксону. Важно отметить, что веса синапсов могут изменяться со временем, а значит, меняется и поведение соответствующего нейрона.
Еще в начале века нейрофизиологам стала ясна исключительно важная роль синапсов в обучении. Действительно, сигналы мозга, проходя через них, могут в разной степени усиливаться или ослабляться. Обращает на себя внимание и такой факт. Мозг новорожденного и взрослого человека содержат примерно одинаковое количество нейронов. Но только у взрослого человека он отличается упорядоченностью межнейронных синаптических связей. По-видимому, обучение мозга и есть процесс изменения архитектуры нейронной сети, сопровождаемый настройкой синапсов.
Использование систем с искусственной «памятью» для решения задач прогнозирования
Люди, использующие в своей повседневной работе технический анализ, приняли за аксиому утверждение о том, что история на рынке повторяется, что финансовые рынки поддаются прогнозированию. Это утверждение, однако, оспаривается приверженцами теории "Случайности цен", которая утверждает, что картина цен на биржевых и финансовых рынках - произвольные хаотичные изменения. Естественно, в действиях "биржевой" толпы - как всякого столпотворения - немало случайного. Однако наблюдатель может выявить повторяющиеся модели поведения толпы и на их основе сделать ставку на сохранение или на разворот тенденции. Человеку дана память. В памяти трейдеров - прежние курсы валют, и это влияет на их сегодняшние решения о купле и продаже. Благодаря памяти существуют явления поддержки (support) - пола цен - и сопротивления (resistance), или их потолка. Однако теоретики "случайности цен" упускают из виду тот факт, что память о прошлом влияет на поведение человека в настоящем.
В ценах заложена информация о спросе и предложении. Участники финансовых рынков используют эту информацию для принятия решений о купле и продаже. Обычные люди приобретают больше товара на распродаже и меньше, когда цены на него высоки. На финансовом рынке игроки не уступают им в практичности. Каждая цена - это сиюминутное соглашение о ценности достигнутое всеми участниками рынка, каждая цена отражает действия или их отсутствие - всех участников рынка. Таким образом, график можно представить как глазок в психологическое нутро толпы. Анализ графиков - анализ поведения участников рынка.
Специалисты по графикам изучают поведение рынка, пытаясь выявить текущие модели цен (price patterns - ценовые шаблоны, образы). В соответствии с аксиомой о "повторении истории на рынке" их цель - найти выигрышный вариант при повторении данных моделей. На обучение "качественному" выявлению моделей на графиках у трейдера может уйти от нескольких месяцев до нескольких лет практической и теоретической работы.
Если предположить, что история на рынке повторяется, следовательно, имеет смысл разработать систему, способную «запоминать» прошлые рыночные ситуации и соответствующие им последствия (т.е. их продолжения) с целью последующего сопоставления со складывающимися на рынке ситуациями. Каким образом такую систему можно реализовать? Простейшим решением такой задачи будет база данных, в которую можно записывать закодированные определенным образом рыночные ситуации. Для составления прогноза необходимо было бы просматривать все записи, которых для достижения прогноза необходимой точности должно быть огромное количество. Данная идея по причинам сложности доступа к данным, сложности критериев сопоставления информации и проч. представляется не конструктивной.
Способность к "запоминанию" свойственна системам реализующим нейросетевые принципы обработки данных. Известно, что прогнозирующую систему на базе искусственных нейронных сетей (ИНС) можно обучать довольно большим объемам информации, в которой система может выявлять зависимости, не поддающиеся обнаружению при использовании других методов обработки информации.
Идея ИНС развивается уже около полувека. Сегодня, по этому направлению, накоплена большая теоретическая база. На практике, прогнозирующие системы, базирующиеся на нейросетевых технологиях, внедряются все большими темпами (по большей части в США).
Экономико-математические методы
Статистические методики включают в себя проверенные классические методы - регрессионный, корреляционный анализ и т.п. Однако работа с подобными системами для прогноза оперативно меняющейся внутридневной информации для неспециалиста (человека без образования в области статистики) сопряжена с некоторыми трудностями, как при выборе метода анализа, так и при трактовке результатов. Это представляется довольно существенным недостатком, поскольку скорость прогноза внутридневного хода торгов очень важна.
Эволюционное программирование - сегодня является довольно динамично развивающимся направлением анализа данных. Идеей метода является запись предварительных гипотез на некотором внутреннем языке программирования. Далее система находит программу, максимально точно выражающую искомую зависимость, и начинает самостоятельно ее корректировать, после чего из множества модифицированных программ отбирает наиболее удачную. При всей перспективности методики оперативный прогноз не является ее сильной стороной, да и программная реализация эволюционного программирования пока еще не совершенна.
"Деревья решений" - метод весьма условно может быть отнесен к системам прогноза быстро меняющихся финансовых показателей, являясь скорее системой классификаций. Однако для анализа оперативных финансовых потоков малопригоден.
Генетические алгоритмы - этот метод весьма успешно используется для решения комбинаторных задач, а также задач поиска оптимальных вариантов. Кратко схему метода можно описать как выбор лучших решений по ранее формализованным критериям, при этом процесс оптимизации напоминает естественную эволюцию - отбор лучших, скрещивание и мутации. Но у метода есть ряд недостатков, например сложность формализации критериев отбора. Кроме того, в целом методика оптимизирована на класс задач, несколько отличающийся от прогноза оперативно меняющихся финансовых показателей.
Сегодня все больше операторов используют в своей деятельности искусственные нейронные сети. Сама нейросеть, как правило, представляет собой многослойную сетевую структуру однотипных элементов - нейронов, соединенных между собой и сгруппированных в слои.
Среди прочих слоев имеется входной слой, на нейроны которого подается информация, а также выходной, с которого снимается результат. При прохождении по сети входные сигналы усиливаются или ослабляются, что определяется весами межнейронных связей. Перед применением нейросеть необходимо обучить на примерах - с помощью коррекции весов межнейронных связей, т.е. по известным входным параметрам и результату сеть заставляют выдавать ответ, максимально близкий к правильному. Проблему оценки постоянно изменяющихся внешних условий и соответственно степени влияния на рынок тех или иных параметров нейросеть решает в силу самого принципа работы.
Еще один метод, который используется для решения задач прогнозирования - нечеткая логика. Всем нам свойственно давать простые, хотя бы по форме, ответы на любые самые сложные вопросы. Но факт остается фактом: в своей массе, мы чувствуем себя комфортнее, облекая величины и понятия реального мира в обычную числовую форму и описывая взаимоотношения между ними однозначными функциями. При этом при развитии любого процесса всегда имеется только одна возможность, все величины имеют детерминистский характер. Подобно обычным числам, с распределениями нечеткости можно вести и производить определенные операции, например, складывать и умножать. В принципе, можно построить непротиворечивую алгебру нечетких распределений. С математической точки зрения некоторое неудобство доставляет тот факт, что практически все операции можно ввести неоднозначным образом. С середины 60-х годов, после разработки теории нечетких множеств, было предложено несколько теорий, позволяющих формализовать неопределенность. Эта область знания в настоящее время интенсивно развивается.
Классификация рыночных ситуаций
В двух предыдущих опытах в качестве прогнозируемой величины была использована величина сглаженного MPP, другим словами решалась задача нелинейной регрессии при помощи ИНС. Фактически предпринималась попытка при помощи комитета нейроэкспертов получить максимально приближенную к «идеальной» кривую. Однако, как упоминалось выше, нейронные сети могут быть использованы также в качестве классификатора, необходимо лишь правильно закодировать значения классов.
Рассмотрим процедуру кодирования желаемых выходных значений в обучающей выборке, в соответствии с сигналами MPP для динамики курса евро/доллар в 1999 году. Общее количество образов в обучающей и тестовой выборке 6328. Практический метод кодирования был рассмотрен в подразделе 2.3.1. При кодировании обучающего правила, в первую очередь, необходимо выполнить подсчет количества образов для каждого из классов. На рисунке 2.22 в виде гистограммы показано распределение сигналов по классам в обучающей выборке. Рассчитанные таким образом длины отрезков составили: Dx1 = 0,1473; Dx2 = 0,4550; Dx3 = 0,2841; Dx4 = 0,1136. На основании рассчитанных длин интервалов можно вычислить значения, соответствующие ординальным классам: x1 = 0,0736; x2 = 0,3748; x3 = 0,7443; x4 = 0,9432. Эти значения можно использовать в качестве обучающего правила для ИНС.
Цель опыта: сформировать комитет нейроэкпертов, который бы решал задачу классификации рыночных ситуаций (на основе 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 год. Указанная динамика имеет следующие характеристики (за 24 часа): максимальный достигнутый верхний уровень +0.0292, средний достигнутый верхний уровень +0.0049, предельно достигнутый нижний уровень
-0.0276, средний достигнутый нижний уровень -0.0056, т.е. в среднем за сутки цена проходит около 50 пунктов (вверх или вниз) и максимальное суточное движение цены близко к 300 пунктам (вверх или вниз). Статистически большинство значений достигнутых уровней не превосходят 80-100 пунктов. Исходя из указанных значений, можно формировать классы по достижимости ценой некоторых уровней (каждые 20 пунктов), т.е. образ попадает в первый класс, если за следующие 24 часа цена выросла/упала не более, чем на 20 пунктов, во второй класс, если цена выросла/упала более, чем на 20 пунктов, но не более, чем на 40 и т.д. Распределение количества образов по классам, при классификации по описанному принципу, представлено на рисунке 2.13.
Рис. 2.13. Распределение образов по классам при классификации по
признаку достижимости значимых уровней (евро/доллар 1999 г.)
Остается закодировать значения классов в соответствии с принципом максимизации энтропии (информационной насыщенности) выходных значений обучающего множества, описанном выше. Так, при полученном распределении ожидаемых выходных значений, коды классов примут следующие значения:
а.) для верхних уровней: x1 = 0.1125, x2
= 0.3706, x3 = 0.6162, x4 = 0.7743, x5 = 0.8635, x6 = 0.9474.
б.) для нижних уровней: x1 = 0.0810, x2
= 0.2896, x3 = 0.5229, x4 = 0.6973, x5 = 0.8126, x6 = 0.9297.
Классификация рыночных ситуаций. Шаблон максимальной прибыли
Поскольку сети с прямой связью являются универсальным средством аппроксимации функции, их с успехом можно использовать для решения задач классификации [1]. Богатые возможности отображения особенно важны в тех случаях, когда на основе нескольких оценок строится высокоуровневая процедура принятия решений. Известно много приложений ИНС с прямой связью к задачам классификации. Как правило, они оказываются эффективнее других методов, потому что нейронная сеть генерирует бесконечное число нелинейных регрессионных моделей.
Задача классификации может быть решена на сети с одним выходным нейроном, достаточно только разработать способ кодировать k классов. При применении нейронных сетей как классификаторов при прогнозировании финансовых рынков необходимо помнить о важности выбора обучающего правила и предварительной предобработке данных. Тем не менее, необходимо подчеркнуть, что классификация рыночных ситуаций в принципе возможна [1]. Ведь технический анализ стремится предсказать, главным образом, направление изменения цены (вниз, вверх, на том же уровне), а не величину этого изменения. Рассмотрим процесс формирования обучающего правила для задачи классификации рыночных ситуаций.
Пользователям программ технического анализа, в частности программы Equis MetaStock, известна встроенная система максимальной прибыли - MAXIMUM PROFIT SYSTEM (MPS). Алгоритм моделирования торговли построен по принципу «зачислять в прибыль, что возможно», будь то движение цены в течение одного часа или последовательность направленных движений в течение нескольких часов. Но, как известно, в реальной жизни невозможно «выигрывать» каждую «свечку», особенно если торговля идет на коротких периодах, например на «часовом интервале» - слишком малые и незначительные колебания совершает курс. В несколько модифицированном виде MPS может оказаться полезной в качестве обучающего правила для прогнозирующих ИНС. Попробуем разработать MPS, которая была бы более приближена к реальным условиям торговли на рынке.
Во-первых, необходимо определить, сколько пунктов должен содержать в себе «значимый» для торговли ход цены. Среди практикующих трейдеров «взять фигуру» (100 пунктов) при игре внутри дня (т.е. на часовом интервале) практически по любой валюте считается отличным завершением удачной сделки. Несколько меньший «выигрыш» также вполне устроит любого трейдера. Таким образом, можно говорить о присутствии определенных ориентиров, на которые нацелен трейдер в своей работе. Эти ориентиры могут появиться чисто из эмпирических соображений, однако, они могут быть вполне обоснованы статистически. Рассмотрим, например, часовую динамику евро/доллар за 1999 год, нас будут интересовать абсолютные изменения курса за 24 часа:
а) максимальное изменение курса за 24 часа = 0.0277;
б) минимальное изменение курса за 24 часа = 0.0000;
в) среднее изменение курса за 24 часа = 0.0047.
Из приведенных данных видно, что среднее значение суточного колебания курса евро равняется примерно 50 пунктов, т.е. на них вполне можно рассчитывать при торговле внутри дня. С учетом рисков и комиссионных положим «значимым» для торговли ход (направленное движение рынка) в 70 пунктов. Т.е. при торговле на рынке евро/доллар нас будут интересовать ходы не менее указанной цифры. На исторических данных вполне можно выполнить разметку, в каких местах следует покупать, в каких продавать, в каких ожидать покупки или продажи. Существуют предпосылки разработки алгоритма, формирующего так называемый шаблон (карту) максимальной прибыли - MAXIMUM PROFIT PATTERN (MPP). MPP - имеет сходство с индикатором, однако рассчитывается он не по прошлым данным, а по будущим. Сигналами MPP, например, могут быть:
а.) 1 - «покупка»,
б.) 0.8 - «ожидание покупки»,
в.) 0.2 - «ожидание продажи»,
г.) 0 - «продажа».
Моделирование торговли на исторических данных с построенным на их основе MPP приносит максимальную прибыль с учетом ограничения - реагирование только на ход, покрывающий не менее определенного количества пунктов, в нашем примере 70 (см.
рис. 2.9). Стрелками на рисунке отмечены моменты, в соответствии с сигналами MPP потенциально пригодные для торговли (покупки и продажи соответственно).
На исторических данных моделирование торговли показывает максимальную прибыль, однако у «правого края» графика невозможно продлевать MPP, поскольку цены будущих периодов неизвестны (задача как раз и состоит в том, чтобы их прогнозировать). Однако сигналы MPP могут оказаться полезными, например в качестве обучающего правила для ИНС.
В рассмотренных источниках встречаются постановки задач обучения ИНС, в которых брались заведомо неоптимальные правила для обучения, однако, по утверждению авторов, они добивались положительных результатов. Например, некоторые исследователи в качестве обучающего правила использовали значения, рассчитанные методом пересечения скользящих средних (Crossing Moving Averages - СMA) [1], в то время как известно, что торговля по такому правило редко приносит прибыль.
Рис. 2.9. График динамики курса евро/доллар (вверху), сигналы MPP
(внизу - синяя линия), усредненное значение MPP (внизу - красная линия).
Идея состоит в том, чтобы обучить ИНС так, что на входной образ она будет реагировать сигналом: «покупать», «продавать» или «ждать», таким образом, ИНС будет работать как классификатор рыночных ситуаций и тот факт, что в качестве обучающего правила будет использоваться MPP, дает шанс надеяться на очень хорошие результаты.
Далее предстоит решить задачу кодирования обучающего правила таким образом, что бы максимально упростить процесс обучения (правильное кодирование ожидаемых значений - один из залогов успешного обучения). Из всех статистических функций распределения, определенных на конечном интервале, максимальной энтропией - оценкой информационной насыщенности - обладает равномерное распределение. Применительно к данному случаю, это подразумевает, что кодирование переменных числовыми значениями должно приводить, по возможности, к равномерному заполнению единичного интервала закодированными примерами (захватывая и этап нормировки) .При таком способе кодирования все примеры будут нести примерно одинаковую информационную нагрузку.
Исходя из этих соображений, можно предложить следующий практический метод кодирования ординальных переменных (см. рис. 2.10). [37]. Единичный отрезок разбивается на n отрезков - по числу классов - с длинами пропорциональными числу примеров каждого класса в обучающей
Рис. 2.10. Иллюстрация способа кодирования ординальных переменных с учетом количества примеров каждой категории.
выборке: Dx = Pk/P, где Pk - число примеров класса k, а P - общее число примеров. Центр каждого такого отрезка будет являться численным значением для соответствующего ординального класса.
Концептуальная схема системы прогнозирования
Сегодня на рынке присутствует достаточное количество программ, реализующих нейросетевые подходы для решения задач прогнозирования. Однако, не всегда они учитывают все потребности пользователей. Например, попытки применения в РИА «РосБизнесКонсалтинг» для прогнозирования цены акций программ, имеющихся на отечественном рынке, показали, что задачи подготовки исходных данных и оформления результата решены в них удовлетворительно. Работа с этими программами оказалась возможной только после написания дополнительных программ для подготовки данных и интерпретации результатов. По результатам тестирования, аналитиками РИА «РосБизнесКонсалтинг» был сделан такой вывод, чем тратить собственные средства на улучшение потребительских качеств чужой программы, лучше создать собственную программу для собственных же нужд. Описанный здесь опыт одного из крупнейших российских информационно-аналитических агентств показывает, что имеет смысл разрабатывать собственную систему прогнозирования.
Область применения будущей разработки должна быть жестко ограничена прогнозами финансовых показателей, еще одно требование к программе – максимальный комфорт для будущих пользователей. Работа с программой не должна отнимать у пользователя много времени, а результаты ее работы должны удобно интерпретироваться и быть максимально приспособлены к использованию в существующей отчетности. Другими словами, разрабатываемая система прогнозирования не должна стать еще одной нейросетевой программой, которая может применяться во всех областях, в том числе и в области прогнозирования движения цены.
На рисунке 2.30 представлена концептуальная схема системы прогнозирования. Рассмотрим назначение основных модулей этой схемы, а также технологию работы с предложенной системой.
Как видно из предложенной схемы, вся система разбивается на несколько модулей, которые, в том числе, могут оформляться в виде отдельных EXE файлов, что позволило бы использовать их, например, для формирования других систем. Параметры настройки всех модулей должны задаваться в виде сценариев, и не требовать вмешательства оператора во время обработки данных.
Часть параметров в системе может задаваться в виде диапазона и шага, с которым этот диапазон необходимо пройти. В процессе работы система сама сможет выбирать значения из диапазона значений параметров, которые наилучшим способом соответствуют решению задачи. Это значит, что системой сможет пользоваться не только опытный специалист в области нейросетей, но и новичок. Разница между ними будет заключаться только в том, что новичок будет задавать большие диапазоны значений и меньший шаг, т.е. на решение задачи будет расходоваться больше машинного времени. По мере продвижения новичка в предметной области и приобретения им опыта использования программы, он будет точнее задавать параметры системы, обрабатывая больше моделей за единицу рабочего времени.
Как показывает практика, значительную часть технологического цикла решения прогнозных задач с применением нейронных сетей занимает подготовка массива входных данных. Через интерфейс модулей загрузки данных из внешних источников, обработки данных, формирования обучающих и тестовых множеств система получает и обрабатывает данные
о финансовых показателях. Учитывая специфические особенности
системы, данные должны поступать в виде временных рядов. Формируемые модулем обучающие и тестовые множества должны быть адекватны
Лист оставлен под концептуальную схему прогнозирования (рис. 2.30)
решаемой задаче, т.е. множество входных данных должно обеспечивать не только сходимость процесса обучения, но и точность прогнозирования. Описанные обстоятельства подводят к выводу о том, что в модуль формирования входных множеств необходимо включить оптимизационные алгоритмы.
Модуль торговых стратегий (проектов) должен позволять описывать правила торговли пользователя. При построении торговой стратегии необходимо обеспечить возможность использования лимитных и/или стоп-приказов, учитывать комиссионные, маржу и проскальзывание. Проверка торговой стратегии, использующей правила, нейросетевые предсказания и индикаторы, должны проводиться на исторической базе данных системы.
Моменты покупки/ продажи могут отображаться на графике, чтобы у пользователя была возможность уже при тестировании торговой системы понять, насколько прибыльна ее работа. Система должна поддерживать возможность проверки на исторических данных любой торговой системы, в том числе и системы, построенной без использования нейромоделей.
Модуль формирования комитета совместно с модулем оптимизации нейронных сетей обеспечивают формирование такой выборки нейросетей, которая обеспечивает наилучшие результаты при прогнозировании.
Такой отбор может производиться по следующей схеме. Среди множества обученных конфигураций нейросетей проводится отбор победителей на двух этапах по критерию надежности. Первый отбор сетей-кандидатов
для решения прогнозной задачи происходит на этапе их обучения, второй - на этапе применения. Процентное соотношение отобранных на этапе обучения нейроэкспертов к общему числу обученных сетей-кандидатов может доходить до 1%. Т.е. в комитет может попадать, например,
только каждая сотая нейросеть. Прогноз строится системой на основе линейной комбинации лучших отобранных из комитета на этапе применения нейроэкспертов.
Задача обучения возлагается на модуль обучения нейросетей. Как показывает практика, для того, чтобы нейронная сеть смогла отыскать зависимости во временном ряде, необходимо использовать передовые алгоритмы обучения. Хорошие результаты сегодня показывают методы обучения, базирующиеся на генетических алгоритмах.
В модуле интерфейса пользователя реализовывается обеспечение работы пользователя с системой. Рассмотрим технологическую цепочку работы с предложенной системой прогнозирования.
На первом шаге пользователь создает проект (торговую систему, стратегию), при помощи встроенных возможностей описывает ее, устанавливает ключевые параметры. В тех местах, где в системе предполагается использовать прогнозы нейронных сетей, настраиваются модели прогнозирования.
На втором этапе для каждой модели прогнозирования настраиваются параметры модулей, связанных с процессом обучения нейроэкспертов и получения результатов: какие данные требуются, где они могут быть найдены, шаблоны преобразования входных и выходных величин, параметры алгоритма обучения, настройки оптимизации модели и т.п.
На этом этапе пользователь может также сам участвовать в создании базы данных с финансовыми показателями.
После установления всех параметров торговой системы, ей может быть отдан сигнал, на запуск процессов оптимизации торговой системы (проекта), поиска оптимальной архитектуры нейронных сетей и обучения нейэкспертов. Прогнозирующая система должна уметь в автоматическом режиме осуществлять эти процессы. Обучение нейроэкспертов, самый критичный по времени процесс, может протекать в фоновом режиме постоянно, т.е. возобновляться каждый раз при включении компьютера. Чем больше система обучит нейроэкспертов, тем больше возможностей выбора появляется у нее при формировании комитетов.
После обучения достаточного для формирования комитетов количества нейроэкспертов, по правилам описанным в торговой системе (проекте), прогнозирующая система может генерировать сигналы, которые можно рассматривать как непосредственные приказы на торговлю. Можно предусмотреть несколько способов подачи сигнала на торговлю, например, через интерфейс пользователя – посредством сообщений, аудио и видеоэффектов, через локальные сети и Интернет – посредством сервиса ICQ, передачи сообщения на пейджер, передачи непосредственного приказа брокеру.
Благодаря такому подходу к организации диалога, пользователь вообще освобождается от необходимости следить за рынком, а сосредоточиться на проектировании и разработке новых торговых стратегий (проектов). По мнению экспертов, такой подход к организации торговли на финансовых рынках является оптимальным.
ЗАКЛЮЧЕНИЕ
Коннекционизм
Отличительной чертой нейросетей является глобальность связей. Базовые элементы искусственных нейросетей - формальные нейроны - изначально нацелены на работу с широкополосной информацией. Каждый нейрон нейросети, как правило, связан со всеми нейронами предыдущего слоя обработки данных (см. рис. 1.5, иллюстрирующий наиболее широко распространенную в современных приложениях архитектуру многослойного персептрона). В этом основное отличие формальных нейронов от базовых элементов последовательных ЭВМ - логических вентилей, имеющих лишь два входа. В итоге, универсальные процессоры имеют сложную архитектуру, основанную на иерархии модулей, каждый из которых выполняет строго определенную функцию. Напротив, архитектура нейросетей проста и универсальна. Специализация связей возникает на этапе их обучения под влиянием конкретных данных.
Рис. 1.5. Глобальность связей в искусственных нейросетях
Типичный формальный нейрон производит простейшую операцию - взвешивает значения своих входов со своими же локально хранимыми весами и производит над их суммой нелинейное преобразование:
Нелинейность выходной функции активации Y = f(S) принципиальна. Если бы нейроны были линейными элементами, то любая последовательность нейронов также производила бы линейное преобразование, и вся нейросеть была бы эквивалентна одному нейрону (или одному слою нейронов - в случае нескольких выходов). Нелинейность разрушает линейную суперпозицию и приводит к тому, что возможности нейросети существенно выше возможностей отдельных нейронов.
Локальность и параллелизм вычислений
Массовый параллелизм нейровычислений, необходимый для эффективной обработки образов, обеспечивается локальностью обработки информации в нейросетях. Каждый нейрон реагирует лишь на локальную информацию, поступающую к нему в данный момент от связанных с ним таких же нейронов, без апелляции к общему плану вычислений, обычной для универсальных ЭВМ. Таким образом, нейросетевые алгоритмы локальны, и нейроны способны функционировать параллельно.
Математическая модель нейрона, искусственные нейросети
Биологическая нейронная теория очень развита и сложна. Чтобы построить математическую модель процессов, происходящих в мозгу, примем несколько предположений:
а) каждый нейрон обладает некоторой передаточной функцией, определяющей условия его возбуждения в зависимости от силы полученных сигналов; кроме того, передаточные функции не зависят от времени;
б) при прохождении синапса сигнал меняется линейно, т.е. сила сигнала умножается на некоторое число; это число будем называть весом синапса или весом соответствующего входа нейрона;
в) деятельность нейронов синхронизирована, т.е. время прохождения сигнала от нейрона к нейрону фиксировано и одинаково для всех связей; то же самое относится ко времени обработки принятых сигналов.
Необходимо заметить, что веса синапсов могут меняться со временем - это принципиальная особенность. Именно изменение этих весов отвечает за возможность различной реакции организма на одни и те же условия в разные моменты времени, т. е. возможность обучения.
Нужно признать, что все эти предположения достаточно сильно огрубляют биологическую картину. Например, время передачи сигнала напрямую зависит от расстояния между нейронами (оно может быть достаточно большим). Тем удивительнее, что при этих упрощениях полученная модель сохраняет некоторые важные свойства биологических систем, в том числе адаптивность и сложное поведение.
Построим математическую модель нейрона (далее мы будем называть ее нейроном). Нейрон — это несложный автомат, преобразующий входные сигналы в выходной сигнал (см. рис. 1.2). Сигналы силы x1, x2, ..., xn, поступая на синапсы, преобразуются линейным образом, т.е. к телу нейрона поступают сигналы силы w1*x1, w2*x2, ..., wn*xn (здесь wi — веса соответствующих синапсов).
Рис. 1.2. Математическая модель нейрона
Для удобства к нейрону добавляют еще один вход (и еще один вес w0), считая, что на этот вход всегда подается сигнал силы 1. В теле нейрона происходит суммирование сигналов:
, | (1.1) |
Затем применяет к сумме некоторую фиксированную функцию f и выдает на выходе сигнал силы Y = f(S).
Эта модель была предложена Маккалоком и Питтсом еще в 1943 г. При этом использовались пороговые (ступенчатые) передаточные функции (см. рис. 1.3, а), и правила формирования выходного сигнала Y выглядели особенно просто.
Рис. 1.3. Активационные функции искусственных нейронов,
используемые при моделировании ИНС
В 1960 г. на основе таких нейронов Розенблатт построил первый в мире автомат для распознавания изображений букв, который был назван “перцептрон” (perception — восприятие). Этот автомат имел очень простую однослойную структуру и мог решать только относительно простые (линейные) задачи. С тех пор были изучены и более сложные системы из нейронов, использующие в качестве передаточных любые непрерывные функции.
Одна из наиболее часто используемых передаточных функций называется сигмоидной (или логистической) (см. рис. 1.3, в, г, д) и задается формулой:
|
(1.2) |
|
(1.3) |
Рис. 1.4. Простейшая нейросеть из трех нейронов
Нейросетевой индикатор для прогнозирования рынка евро/доллар
Абсолютное большинство трейдеров при прогнозировании финансовых рынков используют технический анализ (ТА). Одним из наиболее популярных разделов ТА является анализ при помощи индикаторов. Даже если торговая система трейдера не основана на индикаторах, он все равно использует 3-5 «дежурных сигнальщиков» в своей работе. Не существует индикатора, который бы со 100% уверенностью выдавал сигналы на вход в рынок и выход из него, так как индикаторы просто представляют текущую рыночную ситуацию в удобном виде и не позволяют однозначно сказать, что будет в будущем.
Необходимо отметить, что раздел ТА, посвященный индикаторам, разрабатывался достаточно давно и страдает излишней простотой подхода к интерпретации рынка по одной простой причине. Например, в 60-е годы не каждый трейдер имел доступ к компьютеру и «сигнальщики» рассчитывались ими в таблицах при помощи карандаша и бумаги. Современные компьютерные и аналитические технологии предоставляют в распоряжение трейдера гораздо больше возможностей для анализа рынка.
Разработаем индикатор, которому можно было бы доверять больше чем, например, таким популярным индикаторам как RSI или Stochastic. На способ решения задачи накладывают определенные особенности следующие условия: исследовательская деятельность, выполняемая в рамках данной работы, направлена на международный валютный рынок FOREX; стратегия торговли подразумевает торговлю на коротких периодах внутри дня.
Цель опыта: сформировать комитет нейроэкпертов, который бы решал задачу прогнозирования MPP, сглаженного 6-типериодной скользящей средней, построенного на основе часовой динамике курса евро/доллар. База для формирования входной информации: часовая динамика курса евро/доллар за 1999 год. Входная информация: приращения цен закрытия за 24 часа. Выходная информация: MPP, сглаженный 6-типериодной скользящей средней.
Обучение каждой сети производилось до тех пор, пока MSE не переставала заметно уменьшаться. MSE (Mean Squared Error) - среднеквадратическая ошибка значений, формирующихся на выходах ИНС, рассчитываемая в процессе обучения «с учителем» - один из самых распространенных критериев качества обучения нейросетей.
В таблице 2.1 представлены результаты обучения 10- ти ИНС. Нейронные сети не «научились» однозначно распознать хотя бы половину образов, и, кроме того, на одном и том же обучающем множестве показали разные результаты. Особо хочется обратить внимание на то, что даже сети одинаковой конфигурации показали различные «способности» к обучению. Этот факт наглядно иллюстрирует эффект «локальных минимумов» и «первоначальной точки» при обучении методом градиентного спуска (обратного распространения ошибки).
Таблица 2.1
Характеристики нейросетей, задействованных в эксперименте
Сеть |
Конфигурация |
MSE - среднеквадратическая ошибка |
Процент верно распознаваемых образов (к-т допущения 0.1), % |
EUR1 |
(24-36-1) |
0.2856 |
30,00 |
EUR2 |
(24-40-1) |
0.2915 |
28,53 |
EUR3 |
(24-36-1) |
0.2810 |
28,70 |
EUR4 |
(24-49-1) |
0.2620 |
35,04 |
EUR5 |
(24-42-1) |
0.2650 |
34,70 |
EUR6 |
(24-24-1) |
0.2824 |
27,93 |
EUR7 |
(24-28-1) |
0.2770 |
29,36 |
EUR8 |
(24-47-1) |
0.2680 |
33,70 |
EUR9 |
(24-47-1) |
0.2528 |
36,40 |
EUR10 |
(24-48-1) |
0.2600 |
35,12 |
Среднее значений комитета должно давать лучшие предсказания, чем средний эксперт из этого же комитета, причем, снижение ошибки может быть довольно заметным [37]. Поэтому, в предсказаниях всегда лучше опираться на средние значения всего комитета. В большинстве случаев выигрыш комитета выше, чем выигрыш каждого из экспертов.
Таким образом, метод комитетов может существенно повысить качество прогнозирования.
В качестве результирующего прогнозируемого значения воспользуемся взвешенной средней мнений сетей - экспертов. В качестве оценки степени обученности нейросетей воспользуемся коэффициентом корреляции выходов сети и «идеальных» значений из обучающего множества: чем больше коэффициент корреляции, тем больше выходные значения сети совпадают с «идеальными». Из таблицы 2.1 видно, что хуже обученные сети характеризуются меньшими значениями коэффициента корреляции. В результате хуже обученные нейросети из комитета вносят меньший вклад в общее мнение и не искажают предсказания.
Полученное среднее мнение комитета можно использовать для построения индикатора. Значения среднего мнения комитета, как и предполагалось выше (см. подраздел 2.3.2), тяготеет к нижней границе оптимальных значений, колеблется с малой амплитудой около своего среднего значения. Кроме того можно увидеть, что значения характеризуются шумом (испытывают резкие смены направлений), который затрудняет использование индикатора. Все вышесказанное наглядно демонстрирует график среднего мнения (синяя линия на рис. 2.15).
Рис. 2.15. Графики среднего мнения комитета нейроэкспертов (синяя линия)
и индикатора комитета (красная линия)
Более удобный вид индикатор примет, если его значения перед применением преобразовать так, чтобы они были более сглаженными и колебались в интервале [0;1]. Этого можно добиться путем некоторых преобразований, например: увеличением/уменьшением значения среднего мнения комитета на константу ("приподнимаем" график), растягиванием значения по направлению к краям (вычитаем 0,5, умножаем на коэффициент, прибавляем 0,5), применением функции-сигмоида, сглаживанием скользящей средней (в нашем примере 6 периодов) и т.п.
Полученный индикатор изображен красной линией на рисунке 2.15. Интерпретировать его сигналы можно следующим образом: при приближении индикатора к верхней границе интервала [0;1] необходимо покупать, при приближении индикатора к нижней границе интервала [0;1] необходимо продавать.
Для анализа «качества» индикатора построим точечную диаграмму результатов теста комитета нейросетей на динамике курса евро/доллар за январь 2000 г., на которой ИНС не обучались. По оси абсцисс будем откладывать «ожидаемые» значения, а по оси ординат - соответствующие значения полученного индикатора (рис. 2.16). Синими точками на рисунке 2.16 показаны результаты прогнозирования, красными цветом отмечена ситуация, возникающая в случае 100% совпадения ожидаемых и фактических выходных значений.
Рис. 2.16. Диаграмма, отражающая качество распознавания комитетом рыночных ситуаций.
По показаниям диаграммы можно сделать следующие выводы:
В том случае, когда значения, полученные в результате прогнозирования, совпадут с ожидаемыми, на диаграмме это будет изображено в виде точечной линии (красная линия на рисунке 2.16). Как видно из диаграммы (синие точки), значения индикатора «размазались» в результате преобразований (прогноз нейросетей, усреднение, растягивание), однако главные крайние значения собраны в «облака» в тех углах, в которых они и должны находиться для хороших прогнозов - «правый верхний» и «левый нижний».
Евро на протяжении 1999 года падала и уже на стадии формирования обучающей выборки было выдвинуто предположение о том, что нейросети с большей достоверностью научатся прогнозировать «продажу». Значения по оси абсцисс, лежащие в интервале [0;0.2], могут быть рассмотрены как потенциальные «продажные» сигналы, а в интервале [0.8;1] - как «покупочные». Облако в области потенциальных сигналов на продажу более концентрировано по оси ординат, а значит сигналы на продажу должны быть более точными. Будет хорошо, если при реальной работе на рынке с полученным индикатором, евро по отношению к доллару будет продолжать падать.
Средняя погрешность прогноза в январе 2000 составила 0.2333 при единичном интервале колебания индикатора. Это означает, что однозначных заключений о покупке или продаже по полученному индикатору делать нельзя, слишком велика погрешность (»46% интервала изменения величины) Реально сигналы, подаваемые индикатором комитета, можно рассматривать только как «скорее вниз, чем вверх» или «скорее вверх, чем вниз» и т.п.
Следующим этапом в анализе «качества» полученных результатов будет построение простейшей торговой системы, базирующейся на основе полученного индикатора, и моделирование торговли по ней на рынке.
Под простейшей торговой системой будем понимать систему, выдающую сигналы на открытие позиции (длинной и короткой) и закрытие позиции. Такую систему можно смоделировать, используя модуль System Tester пакета для технического анализа Equis MetaStock.
System Tester позволяет подобрать для индикаторов оптимальные уровни, при пересечении которых возникает сигнал на открытие или закрытие позиции. По результатам нескольких тестов значимые уровни можно расставить следующим образом (рис. 2.17):
а) 0.3 - пересечение индикатором этого уровня сверху вниз будем интерпретировать как сигнал на "продажу";
б) 0.7 - пересечение индикатором этого уровня снизу вверх будем интерпретировать как сигнал на "покупку".
Такую стратегию можно интерпретировать следующим образом: закрываем одну позицию, открываем другую в обратном направлении. При пересечении значимых уровней (на рисунке 2.17 синие горизонтальные линии) моделируются сигналы на покупку или продажу. График сигналов, используемых при обучении (сглаженный MPP), построен на рисунке синей линией. Из графика видно как индикатор «пытается повторить» идеальный сигнал. Обучение комитета нейро-экспертов проводилось по данным 1999 года. Протестируем индикатор комитета нейросетей на часовых котировках евро/доллар за январь 2000 года, т.е. на данных, которые не использовались в процессе обучения.
Рис. 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 |
Доля верно распознаваемых образов (к-т допущения 0.1), % |
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 |
Проверить «качество» индикатора можно на данных, которые не использовались при обучении ИНС. Протестируем обученные ИНС на часовой динамике курса евро/доллар за январь 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 на выходах ИНС также оказалась меньше, чем в предыдущем опыте.
Обобщение значений индикаторов технического анализа
Отрицательной чертой метода «окон» является то, что его применение ограничивает «кругозор» сети. Технический анализ же, напротив, не фиксирует окно в прошлом, и пользуется весьма далекими значениями ряда. Например, утверждается, что максимальные и минимальные значения ряда даже в относительно далеком прошлом оказывают достаточно сильное воздействие на психологию игроков, и, следовательно, должны быть значимы для предсказания. Недостаточно широкое окно погружения в лаговое пространство не способно предоставить такую информацию, что, естественно, снижает эффективность предсказания. С другой стороны, расширение окна до таких значений, когда захватываются далекие экстремальные значения ряда, повышает размерность сети, что в свою очередь, приводит к понижению точности нейросетевого предсказания из-за разрастания размера сети. Выходом из этой, казалось бы, тупиковой ситуации являются альтернативные способы кодирования прошлого поведения ряда.
Альтернативным представлением входной информации можно считать значения индикаторов, построенные на основе ценовой динамики. Очевидные плюсы такого подхода:
а) значение каждого из индикаторов зависит от определенного числа значений временного ряда в прошлом, таким образом использование совокупности нескольких индикаторов позволяет охватить рынок широким взглядом и посмотреть на рыночную ситуацию в прошлом с различных точек зрения.
б) многочисленность индикаторов затрудняет их использование, тогда как каждый из них может оказаться полезным в применении к конкретному финансовому ряду.
в) выборка с индикаторами обычно достаточно мала, и, соответственно, количество входных нейронов сети не велико.
Необходимо отметить, что в выборку стоит отбирать наиболее значимую комбинацию технических индикаторов, которую и следует затем использовать в качестве входов нейросети. Решить задачу выбора необходимых индикаторов можно при помощи оптимизационных методов и тех же нейронных сетей.
Как было отмечено выше, значения, подаваемые на входы ИНС, должны лежать в том же интервале, что и у активационных функций (сигмоидов) нейронов. Т.е. в процессе формирования обучающей выборки необходимо перекодировать значения индикаторов в интервал активационных функций, используемых в опытах ИНС, в том числе и с применением функций сигмоидов [37]. Наглядно процесс подготовки множества входных данных представлен на рисунке 2.8.
Рис. 2.8. Схема формирования входных сигналов ИНС на базе
индикаторов технического анализа
Стоит отметить, что описанный здесь способ представления входных данных не уступает по информативности методу «окон», но допускает такое сжатие информации, которое описывает прошлое с избирательной точностью. Подобного рода сжатие информации является примером извлечения из непомерно большого числа входных переменных наиболее значимых для предсказания признаков.
Обучение искусственных нейронных сетей
Привлекательной чертой нейровычислений является единый принцип обучения нейросетей - минимизация эмпирической ошибки. Функция ошибки, оценивающая данную конфигурацию сети, задается извне - в зависимости от того, какую цель преследует обучение. Но далее сеть начинает постепенно модифицировать свою конфигурацию - состояние всех своих синаптических весов - таким образом, чтобы минимизировать эту ошибку. В итоге, в процессе обучения сеть все лучше справляется с возложенной на нее задачей. Не вдаваясь в математические тонкости, образно этот процесс можно представить себе как поиск минимума функции ошибки E(w), зависящей от набора всех синаптических весов сети w (см. рис.1.6).
Рис. 1.6. Обучение сети как задача оптимизации
В основе большинства известных сегодня алгоритмов обучения нейросетей лежит метод градиентной оптимизации - итерационное изменение синаптических весов, постепенно понижающее ошибку обработки нейросетью обучающих примеров. Причем изменения весов происходят с учетом локального градиента функции ошибки. Эффективным методом нахождения этого градиента является так называемый алгоритм обратного распространения ошибки (error back-propagation). Разницы между желаемыми и фактическими ответами нейросети, определяемые на выходном слое нейронов, распространяются по сети навстречу потоку сигналов. В итоге каждый нейрон способен определить вклад каждого своего веса в суммарную ошибку сети простым умножением невязки этого нейрона на значение соответствующего входа. Простейшее правило обучения соответствует методу наискорейшего спуска - изменения синаптических весов пропорциональны их (весов) вкладу в общую ошибку.
Таким образом, одна и та же структура связей нейросети эффективно используется и для функционирования, и для обучения нейросети. Такая структура позволяет вычислять градиент целевой функции почти так же быстро, как и саму функцию. Причем вычисления в обоих случаях распределенные - каждый нейрон производит вычисления по мере поступления к нему сигналов от входов или от выходов.
Итак, базовой идеей большинства алгоритмов обучения является учет локального градиента в пространстве конфигураций для выбора траектории быстрейшего спуска по функции ошибки. Функция ошибки, однако, может иметь множество локальных минимумов, представляющих субоптимальные решения (см. рис. 1.6). Поэтому градиентные методы обычно дополняются элементами стохастической оптимизации, чтобы предотвратить застревание конфигурации сети в таких локальных минимумах. Идеальный метод обучения должен найти глобальный оптимум конфигурации сети.
Обзор программных средств, реализующих алгоритмы нейровычислений для решения задач прогнозирования
Сегодня разработано большое количество программных продуктов, пригодных для применения там, где возникает необходимость использования технологии нейровычислений. Существуют универсальные нейросетевые пакеты, предназначенные для решения любых задач, которые можно решить при помощи нейронных сетей, от распознавания речи и образов до решения задач прогнозирования (Brain Maker Pro, NeuroSolution), но, как показывает практика, такие программные продукты не всегда удобны для решения задач прогнозирования временных рядов. Существует класс нейросетевых программных продуктов, предназначенных исключительно для решения задач прогнозирования временных рядов. Эти продукты ориентированы на финансовых работников - трейдеров, биржевых аналитиков и т.д., часто обладают дружественным графическим интерфейсом, и проектируются таким образом, чтобы человек, имеющий даже поверхностное представление о нейронных сетях, смог быстро их освоить. К таким программным продуктам относятся: Neuro Builder 2001, NeuroShell Day Trader, BioComp Profit, NeuroScalp.
Наиболее популярные сегодня в России следующие программные про-дукты, реализующие нейросетевые подходы к решению задач прогно-зиро-вания: Brain Maker Professional, NeuroShell Day Trader, Neuro Builder 2001.
Пакет Brain Maker Professional, цена $850 - предназначен для построения нейронных сетей обратного распространения. Пакет включает в себя программу подготовки и анализа исходных данных NetMaker, программу построения, обучения и запуска нейросетей BrainMaker, а также набор утилит широкого назначения. Программный пакет ориентирован на широкий круг задач - от создания прогностических приложений до организации систем распознавания образов и нейросетевой памяти. Значительное количество функций программы ориентировано на специалистов в области исследования нейросетей. Следует отметить, что организация внутреннего представления нейросетевых моделей является “прозрачной” и легко доступной для программного наращивания. В программе BrainMaker предусмотрена система команд для пакетного запуска.
Существует интерфейсная программа- функция для включения обученных сетей в программы пользователя. В целом пакет может быть интегрирован в программный комплекс целевого использования.
Программа BrainMaker предназначена для построения нейросети по некоторым исходным установкам, ее обучение в различных режимах, модификацию параметров сети. Программа имеет значительное количество контрольных функций для оптимизации процесса обучения. Помимо этого, программа предоставляет ряд методов анализа чувствительности выходов сети к различным вариациям входных данных, при этом формируется подробный отчет, в соответствие с которым можно дополнительно оценить степень функциональной зависимости входных и выходных значений.
NeuroShell Day Trader v. 3.0, цена $2590 - нейросетевая система, которая учитывает специфические нужды трейдеров и достаточно легка в использовании. NeuroShell Trader имеет, как и в других стандартных программах для трейдеров, «графический» пользовательский интерфейс. Возможности графики позволяют отображать данные в виде японских подсвечников (candlestick), в форме open/high/low/close, high/low/close, линейных графиков или гистограмм различных типов. Существует возможность менять цвета, сжимать и растягивать шкалы, прятать и вновь делать видимыми потоки данных. В ежедневной, недельной или месячной временной шкале можное отображать курсы акций, цены товаров (commodities), биржевые индексы (indexes) , взаимные фонды (mutual funds), обменые курсы валют (foreign exchange rates) и т.д.
NeuroShell Trader с легкостью читает стандартные текстовые файлы open/high/low/close/volume, которые поставляют большинство соответствующих агентств. В частности, NeuroShell Trader работает с текстовыми файлами, файлами в формате MetaStock (включая версию 6) и файлами данных в формате, используемом программами TradeStation, SuperCharts и Wall Street Analyst, которые Omega Research распространяет на своих компакт-дисках. Зачастую эти данные непосредственно могут быть использованы в качестве входных переменных для нейронной сети.
В NeuroShell Trader имеется обширная библиотека из более чем 800 технических индикаторов. Помимо стандартных индикаторов, таких как скользящие средние (moving averages), норма изменения (rate-of-change) или стохастические линии (stochastics), NeuroShell Trader дает возможность реализовать собственные индикаторы путем комбинации готовых функций из внушительного списка, в который входят условия «если-то», арифметические операторы, тригонометрические функции и многое другое.
Однако одним из основных достоинств рассматриваемого продукта является то, что нейронные сети являются встроенными, а не являются чем-то привнесенным извне и используемым отдельно. Они присутствуют в меню под рубрикой "Predictions"(Прогнозы) наряду с "Indicators"(Индикаторами) и "Data"(Данными). Мастер прогноза (Prediction Wizard) позволяет выбрать, что пользователь хочет предсказывать. Это могут быть цены закрытия (close), их процентные изменения или иные данные или индикаторы. Существует возможность устанавливать, на сколько дней вперед делать предсказания.
Neuro Builder 2001 Advanced, цена $3500 - продукт, принадлежащий к категории наукоемких, высокотехнологичных, узкопрофессиональных инструментов. Это 32-битное приложение, работающее под управлением ОС Windows 95/98/NT 4.0. В своей категории - специализированные программы для финансовых аналитиков - Neuro Builder 2001 занимает пограничное положение между серийными программами и заказными системами. Она может быть использована как самостоятельный продукт, может выступать составной частью сложного аналитического комплекса. Ниже перечислены семь главных отличительных характеристик программы Neuro Builder 2001:
а) программа Neuro Builder 2001 - приложение, созданное специально для решения задач прогнозирования на финансовых рынках;
б) программа Neuro Builder 2001 - приложение, позволяющее использовать нейросети в повседневной работе так же просто, как и привычные для трейдеров инструменты - программы технического анализа и электронные таблицы;
в) программа Neuro Builder 2001 - приложение, позволяющее пользователю использовать навыки, приобретенные при работе с Microsoft Office - технологичность и регулярность, которые обеспечиваются автоматизацией работы программы по разработанным пользователем сценариям и оформление отчетов программой по созданным им шаблонам;
г) программа Neuro Builder 2001 - единственный на сегодняшний день серийно выпускаемый программный продукт, содержащий модуль исследования данных до определения архитектуры нейросети - Best Builder, позволяющий автоматизировать определение входного вектора параметров задачи с учетом влияния каждого параметра входного вектора на предполагаемый результат;
д) программа Neuro Builder 2001 - не является «черным ящиком»; подробная документация содержит описание всех структур и файлов, включая временные файлы. Все файлы с данными системы хранятся только в двух форматах - текстовый и EXCEL;
е) программа Neuro Builder 2001 - продукт, не зависящий от источника данных; в состав программы входит модуль Data Builder Light, позволяющий преобразовывать финансовые данные из множества популярных форматов, в формат данных программы Neuro Builder 2001 и исправлять ошибки в данных параллельно с их преобразованием;
ж) программа Neuro Builder 2001 - позволяет использовать найденные решения неоднократно; данные для конкретной задачи всегда формируются на этапе ее решения через запрос к базе данных и сразу уничтожаются после получения результата; между сеансами работы хранится только описание способа получения данных из локальной базы;
з) программа Neuro Builder 2001 реализована в виде множества независимых модулей, взаимодействующих в рамках комплекса по документированным интерфейсам; каждый из программных модулей оформлен в виде выполняемой программы (EXE) и отвечает за решение одной из конкретных подзадач в составе общей задачи прогнозирования на финансовых рынках; каждый из модулей в состоянии работать как в составе комплекса программы Neuro Builder 2001, так и совместно с любыми другими программами, поддерживающими его интерфейс.
Технология применения программы Neuro Builder 2001 ориентирована на регулярность получения результатов и экономию рабочего времени аналитика. Так программа Neuro Builder 2001 обеспечивает минимальный период прогнозирования, соответствующий одним суткам. В конце торгового дня в базу данных программы заносятся цены завершившегося дня, и программа запускается на обработку новых данных по заранее подготовленному сценарию. Контроль оператора в процессе счета не требуется. В начале следующего торгового дня по результатам обсчета уже можно получить прогноз цен закрытия этого дня. Таким образом, основное время работы программы приходится на ночь, и задача - прогноз на день вперед - решена. Участие пользователя состоит в подготовке корректных сценариев для работы программы и обеспечении бесперебойной подачи питания компьютеру, на котором запущена программа. Особенно хочется подчеркнуть, что пакет Neuro Builder 2001 разработан отечественной фирмой «РосБизнесКонсалтинг».
Другие программные продукты, реализующие нейросетевые принципы, менее известны и не получили большого распространения. Таким образом, можно заключить, что типичный программный продукт российского рынка нейросетевых программ, предназначенный исключительно для прогнозирования финансовых рынков, оценивается производителями примерно в $2000-$3000. Указанная цена по российским меркам достаточно высока (учитывая заработную плату в среднем по территории Российской Федерации), однако, относительно потенциальных прибылей, которые можно получить с использованием рассмотренных программных продуктов при торговле на финансовых рынках, это очень незначительная сумма.
СПЕЦИАЛЬНАЯ ЧАСТЬ
Оценка достижимости ценой значимых уровней
Цель опыта: настроить нейронные сети, решающие задачу классификации рыночных ситуаций по степени достижимости значимых уровней, по сигналам индикаторов ТА. База для формирования входной информации: часовая динамика курса евро/доллар за 1999 год. Входная информация: сигналы индикаторов ТА (обучающая выборка, рассмотренная в подразделе 2.4.1). Выходная информация: классификационный признак, рассмотренный в подразделе 2.3.3.
Для решения поставленной задачи было обучено две нейросети:
а) классификатор достижимости верхних уровней - EUR_up;
б) классификатор достижимости нижних уровней - EUR_down.
Каждая из сетей содержала два внутренних слоя по 34 и по 24 нейрона, общее количество синапсов составило 1279. Обучение производилось с использованием метода генетической оптимизации. После обучения было произведено тестирование на проверочном множестве, построенном на базе часовой динамики курса евро/доллар в январе 2000 г. По результатам тестирования была получена следующая статистика:
а.) 168 из 700 - верно распознанных ситуаций по достижимости верхних уровней (24,00%). Среднее отклонение прогнозируемых значений от ожидаемых (классовых признаков) составило 0,2830.
б.) 171 из 700 - верно распознанных ситуаций по достижимости нижних уровней (24,43%). Среднее отклонение прогнозируемых значений от ожидаемых (классовых признаков) составило 0,2862.
По результатам тестирования были построены диаграммы (рис. 2.27), на которой наглядно изображаются отклонения прогнозируемых величин от ожидаемых. На указанных диаграммах по оси абсцисс отложены коды классов, значения которых должны были быть предсказаны, по оси ординат - значения, фактически полученные в результате прогнозирования. Как видно из рисунка, полученные прогнозные значения испытывают сильные отклонения от ожидаемых значений, что затрудняет практическое использование рассматриваемой модели.
На рисунке 2.28 синим цветом изображены линии, соответствующие значениям классов - ожидаемые значения, красным - фактически полученные прогнозируемые значения по результатам тестирования на проверочном множестве (рынок евро/доллар, январь 2000 г.).
Оценка положения текущей цены в коридоре будущих котировок
Цель опыта: сформировать комитет нейроэкпертов, решающий задачу нелинейной регрессии величины, задающей относительное положение текущей цены в будущем коридоре цен, по сигналам индикаторов ТА. База для формирования входной информации: часовая динамика курса евро/доллар за 1999 год. Входная информация: сигналы индикаторов ТА (обучающая выборка, рассмотренная в подразделе 2.4.1). Выходная информация: величина, рассмотренная в подразделе 2.3.4.
Для решения поставленной задачи было обучено 45 ИНС, из которых в комитет были отобраны 30 лучших по величине последней MSE. Поскольку для обучения был использован метод, базирующийся на генетических алгоритмах, задействованные в эксперименте ИНС на обучающем множестве показали неплохие результаты (см. приложение 2). Средняя MSE ИНС комитета на обучающей выборке составила 0,1398. Для анализа пригодности использования полученной величины проведем тестирование комитета ИНС на тестовом множестве, сформированном по данным часовой динамики курса евро/доллар за январь 2000 г.
По результатам тестирования была построена диаграмма (рис. 2.25), на которой наглядно изображается отклонение (рассеивание) прогнозируемой величины от ожидаемой. Как и в предыдущих опытах, по оси абсцисс откладывались значения ожидаемых («идеальных») значений, по оси ординат - преобразованное среднее мнение комитета нейроэкспертов. Как видно из диаграммы, прогнозируемая величина сильно рассеивается относительно ожидаемых значений (линия из красных точек). В числовом измерении среднее отклонение по проверочной выборке составило 0,2639.
Рис. 2.25. Диаграмма, отражающая качество распознавания комитетом нейроэкспертов рыночных ситуаций
На рисунке 2.26 синей линией изображена ожидаемая на выходах ИНС величина, красной - величина, прогнозируемая комитетом нейроэкспертов на рынке евро/доллар в январе 2000 г.
Таким образом, хотя некоторые зависимости во временном ряде и были обнаружены комитетом нейроэкспертов, использовать полученные прогнозы для генерации сигналов о торговле не желательно, поскольку погрешность прогнозируемого значения даже больше 50% интервала колебания прогнозируемой величины.
Рис. 2.26. Динамика ожидаемой и фактически полученной комитетом величин в январе 2000 г. на рынке евро/доллар
Описание рыночной ситуации при помощи приращений котировок
Как было сказано выше, в качестве входов и выходов нейросети не следует выбирать сами значения котировок, которые обозначим 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 периода. В качестве входных данных выступают приращения максимальных, минимальных цен и цен закрытия периода. Такой подход к прогнозированию можно рассматривать как нейросетевой аналог анализа «японских свечей», поскольку прослеживается прямая аналогия с попытками некоторых трейдеров найти закономерности в комбинациях последних «японских свечей», образовавшихся на графике.
Рис. 2.7. Нейросетевой анализ «японских свечей»
Основные понятия и определения проблемы прогнозирования
Для того чтобы определить проблему прогнозирования, рассмотрим ее подробнее. Результаты прогнозирования используются для поддержки принятия решений. Следовательно, природа принимаемых решений определяет большинство желаемых характеристик прогнозирующей системы. Изучение решаемой проблемы должно помочь ответить на вопросы о том, что нужно прогнозировать, какую форму должен принять прогноз, какие временные элементы включаются и какова желательная точность прогноза.
При определении того, что нужно прогнозировать, необходимо указывать переменные, которые анализируются и предсказываются. Здесь очень важен требуемый уровень детализации. На используемый уровень детализации влияет множество факторов: доступность и точность данных, стоимость анализа и предпочтения пользователей результатов прогнозирования. В ситуациях, когда наилучший набор переменных неясен, можно попробовать разные альтернативы и выбрать один из вариантов, дающий наилучшие результаты. Обычно так осуществляется выбор при разработке прогнозирующих систем, основанных на анализе исторических данных.
Второй важный этап при построении прогнозирующей системы - это определение следующих трех параметров: периода прогнозирования, горизонта прогнозирования и интервала прогнозирования. Период прогнозирования - это основная единица времени, на которую делается прогноз. Может потребоваться прогноз значения курса валюты на следующий день. В этом случае период - день. Горизонт прогнозирования - это число периодов в будущем, которые покрывает прогноз. То есть, может понадобиться прогноз на 10 дней вперед, с данными на каждый день. В этом случае период - сутки, а горизонт - 10 суток. Наконец, интервал прогнозирования - частота, с которой делается новый прогноз. Часто интервал прогнозирования совпадает с периодом прогнозирования. В этом случае прогноз пересматривается каждый период, используя требование за последний период и другую текущую информацию в качестве базиса для пересматриваемого прогноза. Если горизонт всегда имеет одну и ту же длину (t-периодов) и прогноз пересматривается каждый период, говорят что работа происходит на основе движущего горизонта.
В этом случае, производится репрогнозирование требования для t-1 периода и выполняется оригинальный прогноз для периода t.
Выбор периода и горизонта прогнозирования обычно диктуется условиями принятия решений в области, для которой производится прогноз. Для того чтобы прогнозирование имело смысл, горизонт прогнозирования должен быть не меньше, чем время, необходимое для реализации решения, принятого на основе прогноза. Таким образом, прогнозирование очень сильно зависит от природы принимаемого решения. В некоторых случаях, время, требуемое на реализацию решения, не определено, например, как в случае поставки запасных частей для пополнения запасов ремонтных предприятий. Существуют методы работы в условиях подобной неопределенности, но они повышают вариацию ошибки прогнозирования. Поскольку с увеличением горизонта прогнозирования точность прогноза, обычно, снижается, часто можно улучшить процесс принятия решения, уменьшив время, необходимое на реализацию решения и, следовательно, уменьшив горизонт и ошибку прогнозирования.
Интервал прогнозирования часто определяется операционным режимом системы обработки данных, которая обеспечивает информацию о прогнозируемой переменной. В том случае, если котировки сообщаются ежедневно, то, возможно, для внутридневного прогноза этих данных недостаточно и интервал прогнозирования - сутки является более обоснованным.
Хотя различие не велико, особо хочется обратить внимание на различие между данными за период и точечными данными. Данные за период характеризуют некоторый период времени. Например, средняя цена и частота котировок валюты за сутки характеризуют период времени. Точечные данные представляют значение переменной в конкретный момент времени, например, последняя котировка валюты на конец суток. Различие между этими двумя типами данных важно в основном для выбора используемой системы сбора данных, процесса измерений и определения ошибки прогнозирования.
Третьим аспектом прогнозирования является требуемая форма прогноза. Обычно при прогнозировании проводится оценка ожидаемого значения переменной, плюс оценка вариации ошибки прогнозирования или промежутка, на котором сохраняется вероятность содержания реальных будущих значений переменной.
Этот промежуток называется предсказуемым интервалом.
В некоторых случаях не так важно предсказание конкретных значений прогнозируемой переменной, как предсказание значительных изменений в ее поведении. Такая задача возникает, например, при предсказании момента, когда текущее направление движения рынка (тренд) изменит свое направление на противоположное.
Точность прогноза, требуемая для конкретной проблемы, оказывает огромное влияние на прогнозирующую систему. Важнейшей характеристикой системы управления является ее способность добиваться оптимальности при работе с неопределенностью.
До сих пор, обсуждался набор проблем, связанных с процессом принятия решения. Существует ряд других факторов, которые также необходимо принимать во внимание при рассмотрении проблемы прогнозирования. Один из них связан с процессом, генерирующим переменную. Если известно, что процесс стабилен, или существуют постоянные условия, или изменения во времени происходят медленно - прогнозирующая система для такого процесса может достаточно сильно отличаться от системы, которая должна производить прогнозирование неустойчивого процесса с частыми фундаментальными изменениями.
В первом случае, необходимо активное использование исторических данных для предсказания будущего, в то время как во втором - лучше сосредоточиться на субъективной оценке и прогнозировании для определения изменений в процессе. Другой фактор - это доступность данных. Исторические данные необходимы для построения прогнозирующих процедур; будущие наблюдения служат для проверки прогноза. Количество, точность и достоверность этой информации важны при прогнозировании. Кроме этого необходимо исследовать представительность этих данных.
Необходимо также отметить вычислительные ограничения прогнозирующих систем. Если для решения задачи достаточно прогнозирования небольшого количества переменных и эти прогнозы выполняются редко, то в системе возможно применение более глубоких процедур анализа. В случае же необходимости частого прогнозирования большого числа переменных, можно большое внимание уделить разработке эффективного управления данными.
И, наконец, два важных фактора проблемы прогнозирования - возможности и интерес людей, которые делают и используют прогноз. В идеале, историческая информация анализируется автоматически, и прогноз предоставляется аналитику для возможной модификации. Введение эксперта в процесс прогнозирования является желательным и очень важным. Далее прогноз передается аналитикам, которые используют его при принятии решений.
Основополагающие принципы нейровычислений
Основополагающие принципы нейрокомпьютинга - это родовые черты, объединяющие принципы работы и обучения всех нейрокомпьютеров. Главное, что их объединяет - нацеленность на обработку образов. Сформулируем эти парадигмы в концентрированном виде безотносительно к биологическим прототипам, как способы обработки данных.
Перемасштабирование графика цены в единичный интервал
При прогнозировании валютных рынков при помощи ИНС в качестве входной информации могут выступать: ценовая динамика и ее производные (значения индикаторов, значимые уровни и т.п.) и рыночные (часто макроэкономические) показатели. В рамках данной работы ставится задача прогнозирования финансовых временных рядов, таким образом, в качестве входной информации будет использоваться ценовая динамика.
В первую очередь, необходимо отметить, что перед тем как начать тренировать ИНС, входную информацию необходимо должным образом подготовить, т.е. в качестве входов и выходов нейросети не следует выбирать сами значения котировок [37]. Каждый набор входных переменных обучающего, тестового и рабочего множеств, составляющих «образ», должен обладать свойством инвариантности. Выходные сигналы, формирующиеся на выходах скрытых и выходных нейронов и подающиеся на выходы нейронов следующих слоев, лежат в интервале их активационных функций. Таким образом, логично полагать, что и входные сигналы должны также лежать в интервале активационных функций нейронов 1-го скрытого слоя.
Рассмотрим простейший способ формирования входных образов для обучения ИНС. Основным понятием при работе с рассматриваемым здесь видом входной информации является «окно» («глубина погружения»), т.е. то количество периодов времени, которое попадает в «образ», формируемый на входе сети. При работе с часовой динамикой курсов окно размером n будет означать, что исследователя интересует динамика курса за последние n часов. Чтобы ИНС работала с «образами» такого окна, при проектировании архитектуры сети необходимо выделить n входных нейронов.
Суть метода формирования входных образов заключается в следующем. Предположим, что данные каждого из образов лежат в диапазоне [Min..Max], тогда наиболее простым способом нормирования будет
(2.1) |
После такого преобразования каждый «образ», состоящий из n последовательных цен, нормируется так, что все значения «образа» лежат в интервале от 0 до 1. При этом истинные значения утрачиваются, и все входные записи укладываются в гиперкуб [0,1]n. (см. рис. 2.2).
Рис. 2.2. Результаты нормирования различных входных образов
Таким образом, при любом уровне цен гарантируется инвариантность преобразования входной записи. Такое перекодирование не лишено смысла, так как трейдер-человек обычно оценивает данные временного ряда в относительном выражении с помощью стандартных приемов.
Постановка задачи прогнозирования финансовых рынков с использованием искусственных нейросетей
Как было отмечено в подразделе 1.3.5, задача прогнозирования с использованием ИНС сводится к задаче аппроксимации многомерных функций, т.е. к задаче построения многомерного отображения. В зависимости от типа выходных переменных, аппроксимация функций может принимать вид: классификации или регрессии. В задаче прогнозирования финансовых рынков можно выделить две крупные подзадачи: построение модели, обучение нейронных сетей реализующих решение задачи (т.е. фактически построение аппарата отображения).
В результате изучения предметной области исследователем должна быть разработана модель прогнозирования, ключевыми составляющими которой должны быть: набор входных переменных; метод формирования входных признаков x; метод формирования обучающего правила y; архитектура нейросети (ей); метод обучения нейросети (ей).
Для решения задачи прогнозирования необходимо найти: такую нейронную сеть или комитет нейроэкпертов, который бы наилучшим образом строил отображение F: xÞy, обобщающее сформированный на основе ценовой динамики набор примеров {xt, yt}. Поиск такой нейронной сети или комитета нейроэкспертов осуществляется при помощи одного или нескольких алгоритмов «обучения».
Здесь можно заметить, что нейросетевое моделирование в чистом виде базируется лишь на исходных данных (временном ряде).
Нейронные сети можно применять для одномерного и многомерного анализа, должным образом сформировав множество независимых входов и зависящих от них выходов. Как правило, модель строится для того, чтобы предсказывать значения временного ряда для одной целевой переменной, однако, в принципе, модель может предсказывать значения и нескольких переменных (например, доходы по акциям на различное время вперед), если в сеть добавить дополнительные выходные элементы.
При этом, однако, исследования в области прогнозирования временных рядов при помощи сетей продолжаются и в настоящее время, и никаких стандартных методов здесь пока не выработано. В нейронной сети многочисленные факторы взаимодействуют весьма сложным образом, и успех пока приносит только эвристический подход.
Типичная последовательность действий при решении задачи прогнозирования финансовых показателей с помощью нейронных сетей показана на рис. 2.1.
1. Определение временного интервала. Формирование базы данных. |
|
2. Определение входных величин. Определение прогнозируемых величин. Предварительная обработка данных |
|
3. Формирование входных множеств (обучающего, тестового) |
|
4. Выбор архитектуры нейросетей |
|
5. Обучение нейросетей |
|
6. Адаптивное предсказание и принятие решений |
Далее кратко рассмотрим некоторые моменты этой технологической цепочки. Хотя общие принципы нейромоделирования применимы к задаче прогнозирования в полном объеме, предсказание финансовых временных рядов имеет свою специфику.
На первом этапе исследователем определяются базовые характеристики данных, которые определяются торговой стратегией. Формируется база данных.
На втором этапе определяется набор входных и прогнозируемых величин, производятся анализ и очистка базы данных. Для этих целей используются оптимизационные, статистические и другие методы.
На третьем этапе производится формирование образов, подаваемых непосредственно на выходы нейросетей, с последующим созданием обучающих и тестовых множеств.
Архитектура нейросети зависит от поставленной задачи, в большинстве случаев используются сети типа многослойный перцептрон.
На пятом этапе с использованием выбранных алгоритмов обучения производится обучение нейронной сети, или, если это предполагается постановкой задачи, нескольких нейронных сетей (от двух до нескольких тысяч), которые после участвуют в «конкурсе» на попадание в комитет нейроэкспертов.
Прогнозирование (шестой этап) осуществляется по тому же принципу, что и формирование обучающей выборки. При этом на этапе адаптивного предсказания и принятия решений выделяются две возможности: одношаговое и многошаговое прогнозирование.
Подзадача получения входных образов для формирования входного множества в задачах прогнозирования временных рядов часто предполагает использование «метода окон».Метод окон подразумевает использование двух окон Wi и Wo с фиксированными размерами n и m соответственно. Эти окна, способны перемещаться с некоторым шагом по временной последовательности исторических данных, начиная с первого элемента, и предназначены для доступа к данным временного ряда, причем первое окно Wi, получив такие данные, передает их на вход нейронной сети, а второе - Wo
- на выход. Получающаяся на каждом шаге пара Wi -> Wo
используется как элемент обучающей выборки (распознаваемый образ, или наблюдение). Каждый следующий вектор получается в результате сдвига окон Wi
и Wo вправо на один шаг. Предполагается наличие скрытых зависимостей во временной последовательности как множестве наблюдений. Нейронная сеть, обучаясь на этих наблюдениях и соответственно настраивая свои коэффициенты, пытается извлечь эти закономерности и сформировать требуемую функцию прогноза P.
Приложения
Приложение 1
Характеристики комитета ИНС, сформированного для решения задачи, описанной в подразделе 2.4.2
ИНС | Конфигурация | MSE на обучающей выборке | |||
eur001 | 12-32-24-1 | 0.1316 | |||
eur002 | 12-32-24-1 | 0.1304 | |||
eur003 | 12-32-24-1 | 0.1383 | |||
eur004 | 12-32-24-1 | 0.1405 | |||
eur005 | 12-32-24-1 | 0.1387 | |||
eur006 | 12-32-24-1 | 0.1316 | |||
eur007 | 12-32-24-1 | 0.1262 | |||
eur008 | 12-32-24-1 | 0.1423 | |||
eur009 | 12-32-24-1 | 0.1255 | |||
eur010 | 12-32-24-1 | 0.1273 | |||
eur011 | 12-32-24-1 | 0.1260 | |||
eur012 | 12-32-24-1 | 0.1283 | |||
eur013 | 12-32-24-1 | 0.1333 | |||
eur014 | 12-32-24-1 | 0.1361 | |||
eur015 | 12-32-24-1 | 0.1293 | |||
eur016 | 12-32-24-1 | 0.1296 | |||
eur017 | 12-32-24-1 | 0.1272 | |||
eur018 | 12-32-24-1 | 0.1318 | |||
eur019 | 12-32-24-1 | 0.1273 | |||
eur020 | 12-32-24-1 | 0.1291 | |||
eur021 | 12-32-24-1 | 0.1293 |
Приложение 2
Характеристики комитета ИНС, сформированного для решения задачи, описанной в подразделе 2.4.3.
ИНС | Конфигурация | MSE на обучающей выборке | |||
eur001 | 12-32-24-1 | 0,1368 | |||
eur002 | 12-32-24-1 | 0,1375 | |||
eur003 | 12-32-24-1 | 0,1377 | |||
eur004 | 12-32-24-1 | 0,1380 | |||
eur005 | 12-32-24-1 | 0,1382 | |||
eur006 | 12-32-24-1 | 0,1382 | |||
eur007 | 12-32-24-1 | 0,1385 | |||
eur008 | 12-32-24-1 | 0,1390 | |||
eur009 | 12-32-24-1 | 0,1396 | |||
eur010 | 12-32-24-1 | 0,1370 | |||
eur011 | 12-32-24-1 | 0,1388 | |||
eur012 | 12-32-24-1 | 0,1394 | |||
eur013 | 12-32-24-1 | 0,1400 | |||
eur014 | 12-32-24-1 | 0,1374 | |||
eur015 | 12-32-24-1 | 0,1387 | |||
eur016 | 12-32-24-1 | 0,1398 | |||
eur017 | 12-32-24-1 | 0,1400 | |||
eur018 | 12-32-24-1 | 0,1414 | |||
eur019 | 12-32-24-1 | 0,1428 | |||
eur020 | 12-32-24-1 | 0,1401 | |||
eur021 | 12-32-24-1 | 0,1410 | |||
eur022 | 12-32-24-1 | 0,1416 | |||
eur023 | 12-32-24-1 | 0,1417 | |||
eur024 | 12-32-24-1 | 0,1417 | |||
eur025 | 12-32-24-1 | 0,1406 | |||
eur026 | 12-32-24-1 | 0,1409 | |||
eur027 | 12-32-24-1 | 0,1413 | |||
eur028 | 12-32-24-1 | 0,1422 | |||
eur029 | 12-32-24-1 | 0,1427 | |||
eur030 | 12-32-24-1 | 0,1427 |
Прогноз и цели его использования
Конечная эффективность любого решения зависит от последовательности событий, возникающих уже после принятия решения. Возможность предсказать неуправляемые аспекты этих событий перед принятием решения позволяет сделать наилучший выбор, который, в противном случае, мог бы быть не таким удачным. Поэтому системы планирования и управления, обычно, реализуют функцию прогноза.
Прогнозирование - это предсказание будущих событий. Целью прогнозирования является уменьшение риска при принятии решений. Прогноз обычно получается ошибочным, но ошибка зависит от используемой прогнозирующей системы. Предоставляя прогнозу больше ресурсов, можно увеличить точность прогноза и уменьшить убытки, связанные с неопределенностью при принятии решений.
Поскольку прогнозирование никогда не сможет полностью уничтожить риск при принятии решений, необходимо явно определять неточность прогноза. Обычно, принимаемое решение определяется результатами прогноза (при этом предполагается, что прогноз правильный) с учетом возможной ошибки прогнозирования.
Сказанное выше предполагает, что прогнозирующая система должна обеспечивать определение ошибки прогнозирования, также как и само прогнозирование. Такой подход значительно снижает риск объективно связанный с процессом принятия решений.
Необходимо отметить, что прогнозирование - это не конечная цель. Прогнозирующая система - это часть большой системы управления и как подсистема, она взаимодействует с другими компонентами системы, играя немалую роль в получаемом результате.
Предсказание финансовых временных рядов - необходимый элемент любой инвестиционной деятельности. Сама идея инвестиций - вложения денег сейчас с целью получения дохода в будущем - основывается на идее прогнозирования будущего. Соответственно, предсказание финансовых временных рядов лежит в основе деятельности всей индустрии инвестиций - всех бирж и не биржевых систем торговли финансовыми инструментами.
Прогнозирование максимального и минимального уровней цены на один период вперед
Прогнозирование уровней цены, которых она может достигнуть в следующем периоде, например, завтра, занимает важное место в техническом анализе. Знание коридора цен позволяет принимать решения о торговле при приближении цены к прогнозируемым границам коридора. Например, знание максимальной и минимальной цены дня, при внутридневной торговле позволяет принять решение о продаже при приближении цены к максимальному прогнозируемому уровню, в надежде на то, что цена в этот же день опустится до минимального прогнозируемого уровня. Такая стратегия торговли позволяет получать максимальную прибыль внутри прогнозируемого периода.
Цель опыта: настроить нейронные сети, решающие задачу предсказания минимальной и максимальной цен следующего периода (часа, дня), на основании предыдущих изменений котировок. База для формирования входной информации: дневная динамика курса доллар/японская йена за период с сентября 1998 г. по декабрь 1999 г. Входная информация: приращения максимальных, минимальных цен и цены закрытия дня (см. подраздел 2.2.2). Выходная информация: приращения максимальных и минимальных цен на следующий, по отношению к входному вектору, день.
Рассмотрим процесс формирования обучающей выборки. В имеющейся базе данных содержатся сведения об изменении цены за 347 дней. На этапе построения модели выдвигается гипотеза о наличии в имеющемся временном ряде зависимостей максимальной и минимальной цен дня от динамики цены за предыдущие три дня. Кроме того, известно, что на рынке FOREX наиболее значимыми ценами периода являются цены: high, low, close. Таким образом, модель регрессии строится, как показано на рисунке 2.7. (подраздел 2.1.2). Текущую рыночную ситуацию описывают приращения трех значимых цен за три дня, предшествующих прогнозируемому, а зависимой (прогнозируемой) переменой является приращение максимальной или минимальной цены. Задачу регрессии, в этом случае, можно решать при помощи нейронных сетей, имеющих 9 входных нейронов и 1 выходной.
Для решения поставленной задачи были обучены 2 нейросети:
а) задача прогнозирование изменений максимальной цены - JPY_high;
б) задача прогнозирование изменений минимальной цены - JPY_low.
Каждая из сетей содержала один внутренний слой, содержащий 15 нейронов, общее количество синапсов составило 160. Обучение производилось с использованием метода генетической оптимизации. После обучения было произведено тестирование на проверочном множестве, построенном на базе дневной динамики курса доллар/йена в январе 2000 г.
По результатам тестирования рассчитаем некоторые показатели работы ИНС, характеризующие качество прогнозирования (см. рис. 2.29):
а) 0,4204 - среднее отклонение прогнозируемой максимальной цены от фактической;
б) 0,4009 - среднее отклонение прогнозируемой минимальной цены от фактической;
в) 77,27% - верно предсказанных направлений изменения максимальной цены дня;
г) 72,73% - верно предсказанных направлений изменения минимальной цены дня.
По результатам тестирования можно сделать следующие выводы. Отклонения прогнозируемых значений цены от фактических укладываются в норму стандартного уровня «стоп-лосс» для торговли на курсе долар/йена внутри дня. Полученная модель имеет потенциал для роста точности прогнозов, предположительно за счет использования дополнительной входной информации.
Рис. 2.29. Результаты тестирования модели предсказания максимальной и минимальной цен дня на проверочном множестве января-февраля 2000 года.
Программирование: обучение, основанное на данных
Отсутствие глобального плана вычислений в нейросетях предполагает и особый характер их программирования. Оно также носит локальный характер: каждый нейрон изменяет свои «подгоночные параметры» - синаптические веса - в соответствии с поступающей к нему локальной информацией об эффективности работы всей сети как целого. Режим распространения такой информации по сети и соответствующей ей адаптации нейронов носит характер обучения. Такой способ программирования позволяет эффективно учесть специфику требуемого от сети способа обработки данных, ибо алгоритм не задается заранее, а порождается самими данными - примерами, на которых сеть обучается. Именно таким образом в процессе самообучения биологические нейросети выработали столь эффективные алгоритмы обработки сенсорной информации.
Характерной особенностью нейросетей является их способность к обобщению, позволяющая обучать сеть на ничтожной доле всех возможных ситуаций, с которыми ей, может быть, придется столкнуться в процессе функционирования. В этом их разительное отличие от обычных ЭВМ, программа которых должна заранее предусматривать их поведение во всех возможных ситуациях. Эта же их способность позволяет кардинально удешевить процесс разработки приложений.
Современные финансовые рынки. Международный валютный рынок FOREX
Валютный рынок FOREX - это мощнейший финансовый инструмент, дающий возможность получать высокую прибыль даже от незначительных колебаний цен на мировом рынке валют. Масштабы валютного рынка огромны. Здесь ежедневно продается и покупается около 1,5 триллионов долларов и объемы производимых операций увеличиваются до 25 % ежегодно. Это много больше объема любого товарного, фондового, фьючерсного или какого-либо другого рынка (для сравнения: ежедневный объем рынка ценных бумаг - около 300 миллиардов долларов, рынка валютных фьючерсов - около 40 миллиардов). По данным Нью-Йоркской фондовой биржи NYSE, максимальный торговый объем за день на бирже, зафиксированный 27 декабря 1995 года, составил 347 миллионов акций. Потребовалось бы от 8 до 10 недель, чтобы торговый объем на NYSE соответствовал объему торговли одного дня на рынке FOREX . Более того, Bank of America в 1997 году сделал предположение, что учитывая рост интереса в последнее время к игре на экзотических валютах, ежедневный торговый объем на международном валютном рынке FOREX может возрасти до 8 триллионов долларов уже в течение следующего десятилетия.
Состав участников валютного рынка разнообразен: от крупнейших банков и мощных международных инвестиционных фондов до небольших фирм и частных инвесторов (последняя группа самая многочисленная). Доходы от валютных операций на рынке FOREX составляют до 60% от всех доходов у многих банков (в отдельных случаях до 80%, как, например, в 1994г. у Union Bank of Switzerland - одного из крупнейших банков мира).
В настоящее время банк не может быть конкурентоспособным и существовать без возможности осуществлять торговлю валютой. Валютные операции позволяют банку быть независимым от изменения курса доллара, если средства банка находятся в долларах или любой другой валюте. Дилинговый отдел является неотъемлемой частью западного банка. От этого не уйти и банкам российским, так как закономерности развития рыночной экономики заставят, рано или поздно, включить валютный дилинг в арсенал средств, обязательных для выживания в условиях все обостряющейся конкурентной борьбы в банковской сфере.
Что же представляет из себя мировой валютный рынок FOREX? Валютный рынок - это вся совокупность конверсионных операций по купле-продаже, расчетам и предоставлению в ссуду иностранной валюты на конкретных условиях (сумма, обменный курс, период) с выполнением на определенную дату, осуществляемых между участниками валютного рынка. Текущие конверсионные операции по обмену одной валюты на другую составляют основную долю валютных операций. В отношении конверсионных операций в английском языке принят устойчивый термин Foreign Exchange Operations, сокращенно FOREX или FX.
Мировой межбанковский валютный рынок FOREX приобрел нынешний вид в середине 70-х годов, после прекращения в1971г. действия Бреттон-Вудской системы регулирования валютных курсов и переходе к "плавающим курсам". С этого времени FOREX становится самым динамичным и ликвидным рынком. Это единственный в мире рынок, работающий круглосуточно. Быстрое движение средств, низкая стоимость проводимых сделок, высокая ликвидность делает FOREX одним из самых привлекательных рынков для инвесторов.
Существенное отличие рынка FOREX от всех остальных рынков это то, что он не имеет какого-либо определенного места торговли. FOREX это огромная сеть, соединенных между собой посредством телекоммуникаций, валютных дилеров, рассредоточенных по всем ведущим мировым финансовым центрам и круглосуточно работающим как единый механизм. Торговля валютой осуществляется по телефону или через терминалы компьютеров - сделки совершаются одновременно в сотнях банках во всем мире. Для получения информации о состоянии финансовых рынков в режиме реального времени, а также финансово-экономических новостей от международных и российских агентств используются международные информационные системы, такие как REUTERS, DOW JONES, CQG, BLOOMBERG, TENFORE и т.д.
Основными валютами, на долю которых приходится основной объем всех операций на рынке FOREX, являются доллар США, евро, японская йена, швейцарский франк и английский фунт стерлингов.
Список использованных источников
1. Бэстенс Д.-Э., ван ден Берг В.-М., Вуд Д. Нейронные сети и финансовые рынки: принятие решений в торговых операциях. - Москва: ТВП, 1997. - 236 с.
2. Де Марк Т. Технический анализ - новая наука. - М.: Диаграмма, 1997.
3. Ежов А.А., Шумский С.А. Нейрокомпьютинг и его применения в экономике и бизнесе (серия “Учебники экономико-аналитического института МИФИ” под ред. проф. В.В. Харитонова). М.: МИФИ, 1998. – 224 с.
4. Змиртович А.И. Интеллектуальные информационные системы. - Мн.: НТООО «ТетраСистемс», 1997. - 368 с.
5. Лиховидов В.Н. Практический курс распознавания образов. - Владивосток, Изд-во ДВГУ, 1983.
6. Лиховидов В.Н., Сафин В.И. Технический анализ валютных рынков. - Владивосток: Изд-во ДВГАЭУ, 1998. -200 с.
7. Меладзе В. Курс технического анализа - М.: Серебряные нити, 1997. - 272 с.
8. Наговицин А.Г., Иванов В.В. Валютный курс. Факторы. Динамика. Прогнозирование. - М.: Инфра-М, 1995. - 176 с.
9. Пискулов Д.Ю. Теория и практика валютного дилинга = Foreign Exchange and Money Market Operations: Прикладное пособие. - 3-е изд., испр. и доп. - М.: Диаграмма, 1998. - 256 с.
10. Сорос Дж. Алхимия финансов/ Пер. с англ. Аристова Т.С. - М.: ИНФРА-М, 1999. - 416 с.
11. Уошем Т. Дж., Паррамоу К. Количественные методы в финансах: Учебное пособие для ВУЗов/ Пер. с англ. под редакцией М. Р. Ефимовой. - М: Финансы, Юнити, 1999. - 527 с.
12. Элдер А. Как играть и выигрывать на бирже/ Пер. с англ. М. Волковой, А. Волкова. - М.: Крон-Пресс, 1996. - 336 с.
13. Эрлих А. Технический анализ товарных и фондовых рынков. М.: Юнити, 1996.
14. Анил К. Джейн, Жианчанг Мао, Моиуддин К М. Введение в искусственные нейронные сети. - http://www.osp.ru/os/1997/04/index.htm.
15. Борисов Ю., Виталий К., Сорокин С. Нейросетевые методы обработки информации и средства их программно-аппаратной поддержки. - http://www.osp.ru/os/1997/04/index.htm.
16. Власов А.М. Обзор российского рынка нейросетевых технологий. - http://www.chat.ru/~vlasov.
17. Галушкин А.И. Применения нейрокомпьютеров в финансовой деятельности. - http://www.user.cityline.ru/~neurnews/primer/finance.htm.
18. Галушкин А.И. Современные направления развития нейрокомпьютерных технологий в России. - http://www.osp.ru/os/1997/04/index.htm.
19. Гроссберг С. Внимательный мозг. - http://www.osp.ru/os/1997/04/index.htm.
20. Дорогов А. Структурные модели и топологическое проектирование быстрых нейронных сетей. - http://www.orc.ru/~stasson/fann.zip.
21. Емельянов-Ярославский Л.Б. Интеллектуальная квазибиологическая система. - http://www.aha.ru/~pvad/.
22. Короткий С. Введение в теорию нейронных сетей и программная реализация их основных конфигураций. - http://www.orc.ru/~stasson/index.htm.
23. Короткий С. Нейронные сети: основные положения. - http://www.orc.ru/~stasson/n1.zip.
24. Короткий С. Нейронные сети: алгоритм обратного распространения. - http://www.orc.ru/~stasson/n2.zip.
25. Короткий С. Нейронные сети: обучение без учителя. - http://www.orc.ru/~stasson/n3.zip.
26. Короткий С. Нейронные сети Хопфилда и Хэмминга. - http://www.orc.ru/~stasson/n4.zip.
27. Кук А. Обзор условно-бесплатных и бесплатных программ для моделирования нейронных сетей. - http://homepage.techno.ru/alexkuck.
28. Малинин Д. Введение в нейросетевое моделирование. Программный пакет BrainMaker Pro 3.11. - http://win.aha.ru/~mdo/office/nnintro.htm.
29. Митья Перус Нейронные сети, квантовые системы и сознание. - http://www.tribunes.com/tribune/art97/peru1.htm.
30. Назаренко М. Курс лекций. Теория и практика формальных нейронных сетей. - http://nuweb.jinr.ru/~nazaren/unc/nn_ru.html.
31. Пономарев С. Нейронные сети, «iNFUSED BYTES OnLine». - http://www.enlight.ru/ib/tech/neural/index.htm.
32. Практикум применения пакета Brainmaker для прогнозирования на финансовых рынках/ Перевод и редакция Сергея Блинова. - http://win.aha.ru/~mdo/office/bm_fin.htm.
33. Стариков А. Нейронные сети - математический аппарат. - http://www.basegroup.ryazan.ru/tech/neural-4.htm.
34. Стариков А. Практическое применение нейронных сетей. - http://www.basegroup.ryazan.ru/tech/neural3.htm.
35. Степанов В.С. Фондовый рынок и нейросети: Использование нейросетевых технологий (на базе пакета программ Brain Maker Pro) для анализа ситуации на российском фондовом рынке. - http://www.user.cityline.ru/~neurnews/univer/stepanov.htm.
36. Струнков Т. Думал ли Гильберт о нейронных сетях? - http://www.neuroproject.ru/papers.htm.
37. Шумский С.А. Избранные лекции по нейрокомпьютингу. - http://www. com2com.ru/dav/.
38. Шумский С.А. Нейросетевые агенты в Интернете. - http://www.computerra.ru/2000/4/.
39. Шумский С.А. Обнаружение скрытых знаний, улучшение имеющихся знаний, дата-майнинг. - http://www.com2com.ru~dav/som.htm.
40. Шумский С.А. Современный технический анализ: самоорганизующиеся карты Кохонена на фондовом рынке. - www.com2com.ru~dav/practika2.htm.
41. Часто задаваемые вопросы (FAQ) по нейронным сетям. - http://www.utica.kaman.com/techs/neural/neural.html.
42. © Neural Bench Development. Использование нейропарадигмы «Back Propagation» для решения практических задач. - http://www.neuralbench.ru/THEORY/bp_task.htm.
43. © Neural Bench Development. Нейроны, нейронные сети и нейрокомпьютеры. - http://www.neuralbench.ru/THEORY/introduc.htm.
44. © Neural Bench Development. Постановка и возможные пути решения задачи обучения нейронных сетей. - http://www.neuralbench.ru/THEORY/training.htm.
45. © Neural Bench Development.Основные функциональные возможности программ моделирования нейронных сетей. - http://www.neuralbench.ru/THEORY/soft4sim.htm.
46. © Ward Systems Group, НейроПроект. Описание программного комплекса NeuroShell Day Trader - http://www.neuroproject.ru/DayTrader.htm.
47. © Ward Systems Group, НейроПроект. Описание программного комплекса NeuroShell Predictor- http://www.neuroproject.ru/Predictor.htm.
48. © Ward Systems Group, НейроПроект. Оптимизация в NeuroShell Trader Professional. - http://www.neuroproject.ru/T_optim.htm.
49. © Ward Systems Group, НейроПроект. Электронный учебник по нейронным сетям. - http://www.neuroproject.ru/oglavl.htm.
50. BrainMaker Professional. User's Guide and Reference Manual, 4th Edition, California Scientific Software, Nevada City, July, 1993. - http://www.calsci.com/.
Технический анализ
Технический анализ - это общепринятый подход к изучению рынка, имеющий целью прогнозирование движения валютного курса и предполагающий, что рынок обладает памятью, а потому на будущее движение курса оказывают большое влияние наблюдаемые закономерности его прошлого поведения.
Объектом исследования в техническом анализе являются графики, отображающие поведение цен. Современные компьютерные системы технического анализа поддерживают следующие основные типы графиков - линейные, столбиковые, японские свечи и пункто-цифровые графики ("крестики-нолики").
В техническом анализе принято выделять на графиках определенный набор типовых элементов, на основе которых строится описание поведения графиков. Это, прежде всего, линия тренда, указывающая направление и темп роста/падения цен, канал - диапазон колебаний цены (курса валюты). Из этих элементов составляются так называемые фигуры: треугольник, клин, "голова и плечи", двойной верх и двойное дно, вымпелы, флаги и другие, являющиеся для трейдеров ориентирами в построении прогнозов будущего поведения рынка. С помощью компьютеров можно осуществлять математическую обработку графиков, получая дополнительную информацию для выявления тенденций рынка. В математическом обеспечении современных информационных систем заложена возможность автоматизации построения нескольких десятков статистических показателей динамики цен (индикаторов). Построение графиков таких индикаторов и их анализ совместно с графиками движения валютного курса дает трейдеру много полезной информации для принятия решений.
Технический анализ представляет собой некоторый набор подходов и методов к построению прогнозов движения рыночных цен на основе наблюдений за прошлым поведением рынка. Основные принципиальные предпосылки (аксиомы), на которых основан технический анализ, принято формулировать в виде следующих трех постулатов.
Рынок учитывает все. Иначе говоря, цена является и следствием и исчерпывающем отражением всех движущих сил рынка.
Движение цен подчинено тенденциям. Жизнь рынка состоит из чередующихся периодов роста и падения цен, так что внутри каждого периода происходит развитие господствующей тенденции, которая действует до тех пор, пока не начнется движение рынка в обратном направлении.
История повторяется. "Ключ к пониманию будущего кроется в изучении прошлого". То, что определенные конфигурации на графиках цен имеют свойство появляться устойчиво и многократно, причем на разных рынках и в разных масштабах времени, является следствием действия некоторых стереотипов поведения, свойственных человеческой психике.
Таким образом, можно сказать, что обоснование работоспособности методов технического анализа кроется в особенности психологии людей и существовании стереотипов их поведения на рынке. Приблизительно одинаковый набор факторов, влияющих на принятие решений о покупке и продаже валюты, приводит каждый раз к сходному результату - появлению повторяющихся закономерностей движения курса.
Финансовые рынки последние десять лет
Финансовые рынки последние десять лет переживают период бурного развития и глобализации связей. Наряду с крупными национальными фондовыми, фьючерсными, валютными биржевыми рынками, появились рынки мирового масштаба. Типичный современный финансовый рынок FOREX, например, сегодня представляет собой всемирную сеть банков, инвестиционных фондов и брокерских домов, которая включает в себя связанную компьютерную инфраструктуру, обслуживающую клиентов, торгующих валютами, заключающих спекулятивные сделки для того, чтобы получить прибыль от ежесекундно изменяющихся курсов валют. Уже сейчас ежедневный оборот на рынке FOREX превышает один триллион долларов, согласно прогнозам экспертов он будет развиваться и дальше.
Известно, что около 99% всех сделок на финансовых рынках - спекулятивные, т.е. заключаемые исключительно с целью извлечения прибыли по схеме "купить дешевле - продать дороже". Все они основаны на предсказаниях изменений котировок участниками рынка. Для эффективного анализа рынка требуются соответствующие современным требованиям экономико-математические методы. Сегодня огромное количество ученых работают в области разработки методов прогнозирования финансовых рынков. Таким образом, исследования в области биржевых рынков - актуальное и перспективное направление деятельности и будет оставаться таковым в течение довольно долгого периода времени.
Системы базирующиеся на искусственных нейронных сетях в последние годы все активнее используются для прогнозирования финансовых рынков. Отличие этого подхода от стандартных состоит в том, что он позволяет сделать систему самообучаемой, что особенно важно для трудноформализуемых задач. Благодаря возможности работы с «зашумленными» данными система получается гибкой и, хотя обычно не решает задачу со 100%-ной точностью, может принести значительную прибыль для приложений финансовой сферы. Интеллектуальные системы на основе искусственных нейронных сетей позволяют с успехом решать задачи прогнозирования. Известны и иные, более традиционные подходы к решению этой проблемы, такие как классический технический анализ, анализ фундаментальных факторов, регрессионный и корреляционный анализ и т.п., однако они не обладают необходимой гибкостью за пределами ограниченных условий.
Искусственные нейронные сети дают многообещающие альтернативные решения.
Целью данной работы является изучение опыта специалистов в области прогнозирования финансовых рынков с использованием искусственных нейросетей, а также разработка собственных подходов к прогнозированию рынка FOREX и проектированию торговых систем, пригодных для использования в торговом зале.
Для достижения поставленной цели в дипломной работе решаются следующие задачи:
а) проведение обзора специализированной литературы, ресурсов глобальной сети Интернет, а также рынка программных средств, реализующих нейросетевые принципы для решения задач прогнозирования;
б) постановка и выполнение оптов с целью определения этапов процесса решения задачи прогнозирования, которые нуждаются в автоматизации; сделать выводы по результатам опытов;
в) на основе полученных результатов разработать концептуальную схему системы прогнозирования финансовых рынков, базирующейся на технологии нейронных сетей.
Работа основана на методологии, изложенной в специализированной литературе, журнальных публикациях и ресурсах глобальной сети Интернет.
ОБЩАЯ ЧАСТЬ
Результаты применения нейронных сетей для
Результаты применения нейронных сетей для решения задачи прогнозирования курсов валют показали, что статическая нелинейная система может быть обучена так, чтобы выполнять анализ валютных рынков на начальном уровне. В целом, в большинстве из описанных в данном разделе опытов, были получены положительные результаты. Однако необходимы дальнейшие исследования, прежде чем описанные в данном разделе методики можно будет использовать в торговом зале. Не смотря на то, что результаты некоторых опытов оказались многообещающими, однозначно о возможности построения на основе рассматриваемых моделей гибкой многопараметрической системы торговли, позволяющей получать устойчивую прибыль, говорить нельзя. По результатам опытов можно высказать ряд предложений, реализация которых, возможно, могла бы способствовать получению более точных прогнозов и разработке готовых для практического применения торговых стратегий.
Во-первых, выбранный подход формирования входного (обучающего и тестового) множества не предусматривал оптимизации. Выбор иного, более продуктивного подхода к формированию входного множества, вносит в модели прогнозирования потенциал улучшения результатов. Известно, например, что последние данные более значимы для обучения. Кроме того, финансовые ряды сильно зашумлены, особенно на коротких промежутках времени (внутридневных котировках), что затрудняет обучение и определение правил торговли. Плохая обучаемость нейросетей в задачах прогнозирования может быть вызвана также внутренней противоречивостью данных в обучающем множестве. Необходима методика тщательного отбора образов, которая на момент выполнения опытов не была известна.
Во-вторых, архитектура нейросетей (количество и структура слоев), используемых в рассматриваемых опытах, задавалась исходя из эмпирических соображений, в то время как в рамках решения задачи прогнозирования на основе ИНС, может быть поставлена задача оптимизации архитектуры ИНС, под конкретное обучающее множество. Включение этапа оптимизации архитектуры ИНС в процесс решения задачи прогнозирования перед этапом обучения ИНС, может существенно повысить качество прогноза.
В-третьих, чтобы эффективно обучать ИНС предсказывать финансовые рынки внутри дня, необходимо использовать самые передовые методы обучения ИНС, например генетические алгоритмы. При практической реализации опытов, рассмотренных в подразделах 2.4.1 и 2.4.2, использовать методы генетической оптимизации синаптических весов ИНС не представлялось возможным в виду отсутствия необходимого программного обеспечения.
В-четвертых, для улучшения качества прогнозов, задача формирования комитета нейроэкспертов может быть расширена. Процесс формирования комитета можно разбивать на несколько этапов, на каждом из которых происходит отбор наилучших, с точки зрения критерия, на каждом этапе. В итоге в комитет включаются только лучшие нейроэксперты, которые обеспечивают наиболее точные прогнозы.
Рассмотренные в данном подразделе предложения учитываются при построении структурной модульной схемы программного комплекса, использующего нейросетевые методы прогнозирования финансовых рынков.
Задача прогнозирования с использованием технологии нейровычислений
В последнее десятилетие наблюдался устойчивый рост популярности технического анализа - набора эмпирических правил, основанных на различных индикаторах поведения рынка. Технический анализ сосредотачивается на индивидуальном поведении данного финансового инструмента, вне его связи с остальными инструментами. Однако современные финансовые рынки меняются очень быстро, и технический анализ уже не позволяет в полной мере охватить основные характеристики рынка. Это порождает необходимость поиска других, более современных подходов к анализу финансового рынка. Подход к техническому анализу с привлечением технологии нейронных сетей завоевывает с начала 90-х годов все больше сторонников, так как он обладает рядом неоспоримых достоинств.
Во-первых, нейросетевой анализ не предполагает никаких ограничений на характер входной информации. Это могут быть как индикаторы данного временного ряда, так и сведения о поведении других рыночных инструментов. Вот почему нейросети активно используют именно институциональные инвесторы (например, крупные пенсионные фонды), работающие с большими портфелями, для которых особенно важны корреляции между различными рынками.
Во-вторых, в отличие от теханализа, основанного на общих рекомендациях, нейросети способны находить оптимальные для данного инструмента индикаторы и строить по ним оптимальную для данного ряда стратегию предсказания. Более того, эти стратегии могут быть адаптивны, меняясь вместе с рынком, что особенно важно для молодых активно развивающихся рынков, в частности, российского.
На постановку задачи прогнозирования временных рядов дополнительные условия накладывает выбор архитектуры ИНС. Нейронные сети класса «многослойные перцептроны» являются основной «рабочей архитектурой» современной теории нейровычислений. Подавляющее большинство приложений связано именно с применением такого типа ИНС. Как правило, используются сети, состоящие из последовательных слоев нейронов. Хотя любую сеть без обратных связей можно представить в виде последовательных слоев, именно наличие многих нейронов в каждом слое позволяет существенно ускорить вычисления, используя матричные ускорители.
В немалой степени популярность персептронов обусловлена широким кругом доступных им задач. В общем виде они решают задачу аппроксимации многомерных функций, т.е. построения многомерного отображения F: xÞy, обобщающего заданный набор примеров {xt, yt}.
В зависимости от типа выходных переменных (тип входных не имеет решающего значения), аппроксимация функций может принимать вид: классификации (дискретный набор выходных значений), или регрессии (непрерывные выходные значения). Многие практические задачи распознавания образов, фильтрации шумов, предсказания временных рядов и др. сводится к этим базовым постановкам.
Задача прогнозирования финансовых рынков с использованием ИНС может быть сведена как к задаче классификации, так и к задаче аппроксимации. Например, данные о прогнозируемой переменной за некоторый промежуток времени образуют образ, класс или оценочное значение для которого определяется значением прогнозируемой переменной в некоторый момент времени за пределами данного промежутка, т.е. значением переменной через интервал прогнозирования.
Многие задачи специально сводят к задачам классификации, где результатом прогноза на ИНС является класс, к которому принадлежит переменная, а не ее конкретное значение. Формирование классов должно проводиться в зависимости от того, каковы цели прогнозирования. Общий подход состоит в том, что область определения прогнозируемой переменной разбивается на классы в соответствии с необходимой точностью прогнозирования. Классы могут представлять качественный или численный взгляд на изменение переменной.
В заключение хочется отметить, что
В заключение хочется отметить, что использование нейронных сетей во всех областях человеческой деятельности, в том числе в области финансовых приложений, движется по нарастающей. С уверенностью можно полагать, что появление столь мощного и эффективного инструмента не перевернет финансовый рынок, и не «отменит» традиционные математические и эконометрические методы технического анализа, или сделает ненужной работу высококлассных экспертов. В качестве нового эффективного средства для решения самых различных задач нейронные сети приходят и используются теми людьми, которые их понимают, которые в них нуждаются и которым они помогают решать многие профессиональные проблемы
Результаты применения нейронных сетей для решения задач прогнозирования курсов валют в данной работе показали, что статическая нелинейная система может быть обучена так, чтобы выполнять анализ валютных рынков и прогнозировать курсы валют. В половине из описанных в работе опытов, были получены результаты, на основе которых разработаны прибыльные стратегии торговли. Можно заключить, что работа по созданию собственной автоматизированной системы прогнозирования имеет перспективы и может быть продолжена. Сегодня многие крупные фирмы и частные лица имеют собственные разработки в области технологий прогнозирования с использованием ИНС, но они не торопятся обнародовать их, предпочитая получать доход от непосредственного использования своих систем.
Однако, нужно учитывать тот факт, что хотя нейросеть и является механизмом, способным решить широкий класс задач, но правила управления этим механизмом пока что находятся на уровне догадок и эвристических соображений. Таким образом, прежде чем описанные в работе методики можно будет использовать для торговли на реальном рынке, необходимо провести дополнительные исследования.
СПИСОК ИСПОЛЬЗОВАННЫХ
ИСТОЧНИКОВ