Назад в библиотеку

ПРОГНОЗИРОВАНИЕ ДИНАМИКИ ЦЕН НА ФОНДОВОМ РЫНКЕ

Автор: А.А. Мицель, Е.А. Ефремова
Источник: Мицель А.А., Ефремова Е.А. Прогнозирование динамики цен на фондовом рынке // Известия ТПУ . 2006. №8. Режим доступа: http://cyberleninka.ru/article/n/pro...

Аннотация

А.А. Мицель, Е.А. Ефремова ПРОГНОЗИРОВАНИЕ ДИНАМИКИ ЦЕН НА ФОНДОВОМ РЫНКЕ На основе аппарата нейронных сетей проводится исследование задачи прогнозирования динамики цен на фондовом рынке, рее ализована автоматизированная система, позволяющая моделировать параметры сети.

Введение

Задача прогнозирования поведения сложных динамических систем, особенно в экономике и соо циальной сфере является трудноформализуемой. Прогноз таких систем должен опираться почти исс ключительно на выявлении скрытых закономерноо стей в накопленных данных. Предсказание финанн совых временных рядов – типичный пример такоо го рода задач. Механизм формирования биржевой цены, определяемый коллективной психологией участников торгов, неизвестен, но имеется история соответствующего временного ряда [1]. В научной литературе [1–3] приводится больь шое количество математических моделей и метоо дик для анализа финансовых рынков. Наибольшую популярность получили два основных подхода – фундаментальный и технический анализ. Фундаментальный анализ – это направление в анализе ценных бумаг, которое стремится опредее лить их истинные стоимости, исходя из изучения связанных с ними экономических факторов. Исс тинные стоимости сравниваются с текущими ценаа ми с целью определения величин отклонения. Но для определения конкретного момента совершее ния сделки фундаментального анализа зачастую бывает недостаточно. В этой области применяется технический анализ [2]. Технический анализ исходит из постулата, что все объективные данные о компании – эмитенте (запасы сырья, ожидаемые дивиденды, экономичее ское состояние и т. д.) уже заложены в текущую цее ну акции. Поэтому полагается, что динамика рыы ночной стоимости акции не является непосредд ственной реакцией на события, а зависит только от оценки событий участниками рынка [1]. В последнее десятилетие наблюдается устойчии вый рост популярности технического анализа. Техх нический анализ сосредотачивается на индивидуу альном поведении данного финансового инструу мента, вне его связи с остальными ценными бумаа гами. Такой подход психологически обоснован соо средоточенностью участников именно на том инн струменте, с которым они в данный момент работаа ют. Поведение рыночного сообщества имеет много аналогий с поведением толпы, характеризующимся особыми законами массовой психологии. Частичч ная предсказуемость рынка обусловлена относии тельно примитивным коллективным поведением игроков, которые образуют единую хаотическую динамическую систему с относительно небольшим числом внутренних степеней свободы [2]. Использование нейронных сетей для анализа финансовой информации является альтернативой (или дополнением) для традиционных методов исс следования, таким как статистический анализ и экспертный анализ индикаторов технического анаа лиза, фундаментальных показателей. В силу своей адаптивности одни и те же нейронные сети могут использоваться для анализа нескольких инструу ментов и рынков, в то время как найденные игроо ком для конкретного инструмента закономерности из области технического анализа могут работать хуу же или не работать вообще для других инструменн тов. Системы, базирующиеся на искусственных нейронных сетях, в последние годы все активнее используются для прогнозирования финансовых рынков. Отличие этого подхода от технического анализа состоит в следующем. Воопервых, нейросетевой анализ, в отличие от технического, не предполагает никаких ограничее ний на характер входной информации. Это могут быть как индикаторы данного временного ряда, так и сведения о поведении других рыночных инн струментов. Недаром нейронные сети активно исс пользуют именно институциональные инвесторы (например, крупные пенсионные фонды), рабоо тающие с большими портфелями, для которых осоо бенно важны корреляции между различными рынн ками. Воовторых, в отличие от технического анализа, основанного на общих рекомендациях, нейронные сети способны находить оптимальные для данного инструмента индикаторы и строить по ним оптии мальную опять же для данного ряда стратегию предсказания. Более того, эти стратегии могут быть адаптивны, меняясь вместе с рынком, что особенн но важно для молодых активно развивающихся рынков, в частности, российского. Нейросетевое моделирование в чистом виде баа зируется лишь на данных, не привлекая никаких априорных соображений. В этом его достоинство и одновременно недостаток. Имеющихся данных моо жет не хватить для обучения, размерность потенн циальных входов может оказаться, слишком велии ка. Для преодоления этих типичных в области фии нансовых предсказаний трудностей можно восс пользоваться опытом, накопленным техническим анализом [1]. В данной работе на основе аппарата нейронных сетей рассматривается задача прогнозии рования динамики цен на финансовом рынке [2, 3].

Методика предсказаний финансовых временных рядов на основе нейронных сетей

Нейронные сети – это обобщенное название нескольких групп алгоритмов, обладающих одним ценным свойством – они умеют обучаться на прии мерах, извлекая скрытые закономерности из потоо ка данных. При этом данные могут быть неполны, противоречивы и даже заведомо искажены. Если между входными и выходными данными существуу ет какаяято связь, пусть даже не обнаруживаемая традиционными корреляционными методами, нейронная сеть способна автоматически настроо иться на нее с заданной степенью точности. Кроме того, современные нейронные сети обладают ряя дом дополнительных возможностей – они позвоо ляют оценивать сравнительную важность различч ных видов входной информации, уменьшать ее объем без потери существенных данных, распознаа вать симптомы приближения критических ситуаа ций и т. д. [4, 5]. Общая схема нейросетевого предсказания врее менных рядов [2] представлена на рис. 1.

Схема нейросетевого предсказания финансовых врее менных рядов

Рисунок 1 – Схема нейросетевого предсказания финансовых врее менных рядов

Общая схема нейросетевого предсказания врее менных рядов включает следующие этапы [2, 3]:
1. Определение временного интервала. Формироо вание базы данных.
2. Кодирование входов – выходов (нейронные сее ти могут работать только с числами).
3. Нормировка данных (результаты нейроанализа не должны зависеть от выбора единиц измерее ния).
4. Предобработка данных (удаление очевидных регулярностей из данных облегчает нейронным сетям выявление нетривиальных закономерноо стей).
5. Обучение нескольких нейронных сетей с разз личной архитектурой (результат обучения завии сит как от размеров сети, так и от ее начальной конфигурации).
6. Отбор оптимальных сетей – тех, которые дадут наименьшую ошибку предсказания.
7. Адаптивное предсказание и принятие решений.

Далее кратко рассмотрим некоторые моменты этой технологической цепочки. Хотя общие принн ципы нейромоделирования применимы к задаче прогнозирования в полном объеме, предсказание финансовых временных рядов имеет свою специи фику. На первом этапе определяются базовые харакк теристики данных, которые заданы торговой страа тегией. Формируется база данных. Подзадача получения входных образов для форр мирования входного множества в задачах прогноо зирования временных рядов часто предполагает использование «метода окон». Метод окон состоит в определении двух окон Wi и W0 с фиксированныы ми размерами n и m соответственно. Эти окна, споо собны перемещаться с некоторым шагом по врее менной последовательности исторических данных, начиная с первого элемента, и предназначены для доступа к данным временного ряда, причем первое окно Wi, получив такие данные, передает их на вход нейронной сети, а второе – W0 – на выход. Полуу чающаяся на каждом шаге пара Wi>W0 используетт ся как элемент обучающей выборки (распознаваее мый образ, или наблюдение). Каждый следующий вектор получается в результате сдвига окон вправо на один шаг. Предполагается наличие скрытых заа висимостей во временной последовательности, как множестве наблюдений. Нейронная сеть, обучаясь на этих наблюдениях и соответственно настраивая свои коэффициенты, пытается извлечь эти законоо мерности и сформировать требуемую функцию прогноза. На основе метода окон возможен одноо шаговый или многошаговый прогноз [5]. Далее следует отметить, что одним из ключевых моментов в анализе финансовых временных рядов – является предобработка данных, которая способб ствует успешному обучению нейронной сети, и моо жет включать целый набор методов. Главная задача при предобработке данных – снижение избыточч ности, что приведет к повышению информативноо сти примеров и, тем самым, повысит качество нейй ропредсказаний. Эффективным методом отбора наиболее информативных входов является алгоо ритм boxxcounting. Эффективными являются также вейвлеттпреобразование входных данных, фильтры Кальмана, спектральная обработка [2]. Архитектура нейронной сети зависит от постаа вленной задачи, в большинстве случаев наиболее оптимальной архитектурой для прогнозирования финансовых временных рядов будет являться мноо гослойный персептрон с обратным распространее нием ошибки [6]. Оценка ошибки предсказаний не менее важна, чем само предсказанное значение. Поскольку прогнозирование никогда не сможет полностью уничтожить риск при принятии решений, необхоо димо явно определять неточность прогноза. Прогг нозирующая система должна обеспечивать опредее ление ошибки прогнозирования, также как и само прогнозирование. Такой подход значительно снии жает риск объективно связанный с процессом прии нятия решений. На основе описанной методики [335] авторами разработан алгоритм и реализована автоматизироо ванная система.

Подготовка входных и выходных данных

Для работы с системой использовались данные (рыночные котировки акций, обращающихся на ММВБ), полученные путем экспорта из программ мы Интернетттрейдинга «Альфаадирект» [7]. Данные по каждому временному интервалу имеют пять значений:
1. цена открытия (цена, по которой была заключее на первая сделка по данному финансовому инн струменту);
2. цена закрытия (цена, по которой была заключее на последняя сделка);
3. максимальная цена продаж;
4. минимальная цена продаж;
5. объем акций, проданных в этот временной пее риод.

В качестве входных данных рассматривались дневные значения цен закрытия на различных врее менных периодах по акциям.

Предобработка входных данных

В качестве входов и выходов нейронной сети были выбраны не сами значения цен закрытия, коо тировок (обозначим их Ct), а изменения котировок на момент времени t. Действительно значимыми для предсказаний являются изменения котировок. Так как эти изменения, как правило, гораздо меньь ше по амплитуде, чем сами котировки, между поо следовательными значениями курсов имеется большая корреляция – наиболее вероятное значее ние курса в следующий момент равно его предыдуу щему значению [2]:

Формула

Для повышения качества обучения следует стремиться к статистической независимости вхоо дов, т. е. к отсутствию подобных корреляций. Поээ тому в качестве входных переменных были выбраа ны статистически независимые величины, изменее ния котировок ?Ct, логарифм относительного прии ращения которых равен:

Формула

Использование логарифма относительного прии ращения для длительных временных рядов позвоо лило учесть влияние инфляции. В этом случае проо стые разности в разных частях ряда имеют различч ную амплитуду, т. к. фактически измеряются в разз личных единицах. Напротив, отношения последоо вательных котировок не зависят от единиц измерее ния, и будут одного масштаба, несмотря на инфляя ционное изменение. В итоге большая стационарр ность ряда позволила использовать для обучения большую историю и обеспечила лучшее обучение.

Архитектура сети

В системе реализован многослойный персепп трон, количество входов и скрытых слоев является динамическим (определяется пользователем систее мы), это позволяет осуществить экспериментальь ный подбор оптимальной структуры сети для кажж дого финансового инструмента. Многослойный персептрон с обратным распространением ошибки является наиболее оптимальной архитектурой для данного класса задач (аппроксимации функций), т. к. прогнозирование финансовых временных ряя дов основывается на фундаментальном допущении – замене экстраполяции аппроксимацией [2, 3]. Для обучения нейронной сети используется алл горитм обратного распространения ошибки. Обучение сети разбивается на следующие этаа пы:
1. Инициализация сети. Весовым коэффициентам и смещениям сети присваиваются малые случайные значения из дии апазона от 0 до 1 и, соответственно, и в дальнейй шем происходит их подстройка по выходному сигг налу.
2. Определение элемента обучающей выборки (<текущий вход>, <желаемый выход>). Текущие входы (x0,x1,...,xn), должны различаться для всех элементов обучающей выборки. При использовании многослойного персептроо на для прогноза динамики цен формируем один выход, определяющий направление изменения, т. е. рост или падение цен.
3. Вычисление текущего выходного сигнала. Текущий выходной сигнал определяется в соотт ветствии с традиционной схемой функционироваа ния многослойной нейронной сети.
4. Настройка синаптических весов.

Для настройки используется алгоритм обратноо го распространения ошибки, т. е. используется рее курсивный алгоритм, который сначала применяетт ся к выходным нейронам сети, а затем проходит сеть в обратном направлении до первого слоя [2]. Синаптические веса настраиваются в соответствии с формулой

Формула

где ?ij(t) – вес от нейрона i или от элемента входноо го сигнала к нейрону j в момент времени t, xi – выы ход нейрона i, r – темп обучения, gi – значение ошибки для нейрона j

Формула

где dj и yj – желаемый и текущий выходы нейрона j.

Выбор функции ошибки обусловлен тем, что целью прогнозирования финансовых рядов являя ется получение и максимизация прибыли. Поэтоо му, в прогнозировании финансовых рядов важна не близость прогноза к истинному значению (что обеспечивает минимизация функции среднекваа дратичной ошибки), а одинаковая направленность прогноза и истинного значения. Таким свойством обладает функция yj [2, 3]. На основе экспериментальных данных было показано, что наиболее оптимально активационн ная функция описывается выражением:

Формула

Активационная функция преобразовывает средневзвешенную сумму выходных сигналов в выы ходной сигнал:

Формула

где T – порог нейрона.

Результаты работы системы

Согласно описанной методике была реализоваа на автоматизированная система прогнозирования финансовых временных рядов на основе аппарата нейронных сетей. Параметры сети (количество скрытых слоев и количество нейронов в слоях) явв ляются динамическими, что позволяет пользоватее лю самостоятельно определять архитектуру сети. В системе реализована возможность многошагового и одношагового прогноза. Вид пользовательского интерфейса системы представлен на рис. 2.

 Вид пользовательского интерфейса работы системы

Рисунок 2 – Вид пользовательского интерфейса работы системы

Под точностью прогноза понимается верно угаа данный знак изменения цены. Сеть обучалась на 200 примерах, затем подавались на вход как известные ей цены, на которых она обучалась (обучающая выы борка), так и те которые ещё не встречались (тестии рующая выборка). Сеть содержала два скрытых слоя, три входа и один выход. На вход обученной сее ти подавались обучающая выборка из трех цен. Обб учение проводилось с использованием метода окон. В целом, в большинстве из проделанных опыы тов, были получены положительные результаты (количество верно угаданных значений цены соо ставило 60...75 %, а количество верно определенн ных знаков, т. е. верно угаданной тенденции рынн ка, составляло 85...90 %).

Выводы

По результатам опытов можно высказать ряд предложений, реализация которых должна способб ствовать получению более точных прогнозов и разз работке готовых для практического применения торговых стратегий. Воопервых, архитектура нейронной сети (количее ство и структура слоев), задавалась исходя из эмпирии ческих соображений, в то время как в рамках решения задачи прогнозирования на основе нейронных сетей может быть поставлена задача оптимизации архитекк туры сети под конкретное обучающее множество. Воовторых, использование различных архитектур сетей, случайность выбора первоначальных синаптии ческих коэффициентов, а также использование друу гих параметров сети приводит к тому, что предсказаа ния различных нейронных сетей, обученных на одд них и тех же примерах, могут отличаться. Явно «неуу дачные» варианты сетей отпадают на этапе тестироо вания. А более или менее «удачные» сети следует исс пользовать совместно, организовав так называемый комитет сетей, применяя для принятия решения значения выходов всех входящих в комитет сетей. Легко показать, что среднее значение выходов комитета должно давать лучшие предсказания, чем средняя сеть из этого комитета. В силу неравенства Коши имеем:

Формула

где Ei – ошибка iiой сети в комитете, L – количее ство сетей в комитете. Полученный вывод говорит о преимуществе исс пользования среднего значения выходов комитета нейронных сетей для принятия решения. Более тоо го, можно использовать не среднее значение выхоо дов, а среднее взвешенное. Веса выбираются адапп тивно, максимизируя эффективность предсказаа ний комитета на обучающей выборке. В итоге, лучч шие сети будут вносить наибольший вклад, в то время как предсказания сетей, дающих худшие рее зультаты, будут вносить меньший вклад, и не будут портить предсказания [2]. Дальнейшие исследования должны быть напраа влены на оптимизацию процесса предобработки данных. Известно, например, что последние данн ные более значимы для обучения. Кроме того, фии нансовые ряды сильно зашумлены, особенно на коротких промежутках времени (внутридневных котировках), что затрудняет обучение и определее ние правил торговли. На основе проведенных экспериментов можно сделать вывод, что применение нейронных сетей при построении адекватной модели могут помочь получению прибыли во время работы на финансоо вых рынках.

Список использованной литературы


1. Шарп У.Ф., Александер Г., Бэйли Дж.В. Инвестиции. – М.: ИнфрааМ, 1998. – 1028 с.
2. Ежов А.А., Шумский С.А. Нейрокомпьютинг и его применее ния в экономике и бизнесе. – М.: МИФИ, 1998. – 222 с.
3. Панфилов П.Н. Введение в нейронные сети // Современный трейдинг. – 2001. – № 2. – С. 12–17.
4. Розенблатт Ф. Принципы нейродинамики. Перцептроны и теория механизмов мозга. – М.: Мир, 1965. – 302 с.
5. Уоссермен Ф. Нейрокомпьютерная техника. – М.: Мир, 1992. – 250 с.
6. Горбань А.Н. Обучение нейронных сетей. – М.: СП «Паа раграф», 1990 – 160 с.
7. Интернеттброкер «Альфа Банка». – http://alfadirect.ru/