Научная статья на тему 'Интеллектуальный подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме'

Интеллектуальный подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
109
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
программная система / прогнозирование / временной ряд / Forex / валютные котировки / software system / forecasting / time series / forex / currency quotes

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — В.С. Тормозов, А.Л. Золкин, А.У. Менциев

В статье рассмотрен подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме: разработка программной системы информирования и прогнозирования временного ряда на примере курса валют на фондовой бирже Forex с применением математического аппарата искусственных нейронных сетей. В работе приводятся спроектированная информационно-функциональная схема системы и сервера прогнозирования, применяемая для исследований нейросетевая структура. Реализованы серверы прогнозирования на языке программирования С++, а также об-работки запросов доступа на основе web-сервера Tomcat, генерирующего jsp-страницу с текущими ва-лютными котировками и результатом прогнозирования. Спроектирована и разработана программная система, предназначенная для информирования и прогнозирования валютных котировок на рынке Forex в онлайн-режиме. Разработанная и реализованная система строго соответствует необходимым требованиям. Проблема прогнозирования будущих значений характеристик сложной системы была и остается актуальной. Наряду с традиционными методами прогнозирования временных рядов на сегодняшний день активно используется теория искусственных нейронных сетей, которая хорошо зарекомендовала себя в области управления, там, где раньше требовался человеческий интеллект, в частности, при решении задач прогнозирования. Интерес к нейронным сетям вызван как теоретическими, так и прикладными достижениями в этих областях. На основании результатов эксперимента сделан вывод, что с помощью модели прогнозирования значений валютных котировок можно строить достаточно достоверные краткосрочные прогнозы. Для большинства примеров выборки для тестирования прогноз показал правильное направление кратко-срочного изменения исследуемой котировки.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

An intelligent approach to online reporting and short-term forecasting of time series

The problem of predicting future values of the complex system characteristics remains important. Nowadays, along with traditional methods for predicting time series, the theory of artificial neural networks is used, which has proven itself well in the control field, where the use of human intelligence was previously necessary, in particular in solving prediction problems. The interest in neural networks is due to both theoretical and applied advances in this field. The paper considers the development of a software system for informing and forecasting the time series using the example of the exchange rate on the Forex stock exchange using a mathematical apparatus of artificial neural networks. The paper presents the designed information and functional diagram of the prediction system and a server, the conceptual and physical data model used for research of the neural network structure. A pre-diction server in the C++ programming language is implemented, as well as an access request processing server based on the Tomcat Web server, which generates a jsp page with current currency quotes and a forecast result. A software system has been designed and developed to inform and predict currency quotes in the Forex market online. The developed and implemented system strictly meets the set requirements. Based on the experimental results, it can be concluded that with the help of a model for predicting the values of currency quotes, it is possible to make fairly reliable short-term forecasts. For the most testing samples, the forecast showed the correct direction of short-term change in the studied quotation. The constructed forecasting model helps making fairly reliable short-term forecasts.

Текст научной работы на тему «Интеллектуальный подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме»

УДК 684.511 Дата подачи статьи: 22.04.21

DOI: 10.15827/0236-235X.135.399-408 2021. Т. 34. № 3. С. 399-408

Интеллектуальный подход к задаче информирования и краткосрочного прогнозирования временного ряда

в онлайн-режиме

В.С. Тормозов 1, старший преподаватель, 007465@pnu.edu.ru

А.Л. Золкин 2, доцент, alzolk.n@list.ru

А.У. Менциев 3, ст преподаватель, a.mentsiev@phesu.ru

1 Тихоокеанский государственный университет, г. Хабаровск, 680035, Россия

2 Поволжский государственный университет телекоммуникаций и информатики (ПГУТИ), г. Самара, 443010, Россия

3 Чеченский государственный университет, г. Грозный, Чеченская республика, 690092, Россия

В статье рассмотрен подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме: разработка программной системы информирования и прогнозирования временного ряда на примере курса валют на фондовой бирже Forex с применением математического аппарата искусственных нейронных сетей. В работе приводятся спроектированная информационно-функциональная схема системы и сервера прогнозирования, применяемая для исследований нейросе-тевая структура. Реализованы серверы прогнозирования на языке программирования С++, а также обработки запросов доступа на основе web-сервера Tomcat, генерирующего jsp-страницу с текущими валютными котировками и результатом прогнозирования. Спроектирована и разработана программная система, предназначенная для информирования и прогнозирования валютных котировок на рынке Forex в онлайн-режиме. Разработанная и реализованная система строго соответствует необходимым требованиям.

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

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

Ключевые слова: программная система, прогнозирование, временной ряд, Forex, валютные котировки.

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

ческих показателей, динамики цен на тот или иной продукт, курса акций.

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

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

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

Несмотря на такое поверхностное сходство, искусственные нейронные сети демонстрируют множество свойств, присущих биологическим нейронным сетям, в частности, обучение на опытных образцах, обобщение характеристик опытных образцов, выявление значимых характеристик из разнородных и избыточных данных. ИНС могут менять свою реакцию на внешние сигналы в зависимости от внешней среды с помощью процедуры обучения [3]. После предъявления входных сигналов весовые коэффициенты в структуре сети настраиваются исходя из различия текущего сигнала и требуемого, чтобы обеспечивать необходимые значения сигналов на выходе. Для некоторых архитектур ИНС в целях обучения устанавливаются требуемые значения выходных сигналов. Разработано множество архитектур сетей и обучающих алгоритмов, имеющих свои преимущества и недостатки, а также (отчасти вследствие) сферу решаемых задач [4]. Все еще существуют проблемы, связанные с неясностью выбора оптимальной конфигурации и параметров, объема и структуры выборок обучения и тестирования относительно того, чему нейронная сеть может обучиться и как обучение

должно проводиться [5]. Это показывает актуальность работ предлагаемого направления.

ИНС включают в себя математические модели, а также их программные или аппаратные реализации, построенные по некоторым принципам организации функционирования биологических нейронных сетей [6]. Важное качество нейронных сетей - обучаемость, позволяющая нейронной сети менять свое поведение в зависимости от внешней среды. Обучение заключается в том, что на вход предъявляются входные сигналы и требуемые выходные сигналы. Затем происходит адаптация сети для обеспечения требуемой реакции.

Целью работы является реализация работающей системы информирования и прогнозирования валютных котировок на Forex [7]. Требуется реализовать программную систему, которая через каждые три минуты выполняет следующие действия:

- значения текущих валютных котировок на фондовой бирже Forex считываются с онлайн-ре-сурса [8] и записываются в локальную БД;

- на основе сохраненных в БД значений валютных котировок за последний час выполняется прогнозирование значений валютных котировок на следующие три минуты, прогнозируемые значения сохраняются в БД;

- текущие и прогнозируемые значения котировок отображаются в режиме онлайн и по запросу пользователя.

Обрабатываемые и прогнозируемые валютные котировки: AUD/USD, CAD/JPY, CHF/JPY, EUR/AUD, EUR/CAD, EUR/CHF, EUR/GBP, EUR/JPY, EUR/USD, GBP/CHF, GBP/JPY, GBP/USD, USD/CAD, USD/CHF.

Описание используемой модели

Для повышения чувствительности ИНС необходимо сократить диапазон изменений входных и выходных сигналов. С этой целью в качестве прогнозируемых данных применяются нормализованные изменения значений котировок за период запуска программной системы. В данной работе такой период ТЛрогноз. = = 180 с. При рассмотрении большого объема данных было обнаружено, что для абсолютной величины изменений Д/Норм.(0 = /норм. (О -- /норм. (t - Тпрогноз.) справедливо Днорм.(0 < < Дтах, Mnax = 0,1. Значит, входные сигналы образцов обучающей и тестирующей выборок принадлежат отрезку [-Дтах, Дтах].

Так как система предназначена для непрерывной работы, сервер прогнозирования через заранее заданный промежуток времени ТЛрогноз. извлекает текущие значения котировок [], записывает в БД и прогнозирует котировки, используя нейронную сеть. Так как процесс обучения ИНС требует намного большего времени, чем прогнозирование, обучение будет выполняться реже прогнозирования: Т0бучен. = = иГпрогноз., п = 20. Чтобы не приостанавливать прогнозирование, обучение работает в фоновом режиме. Выбор архитектуры и характеристик ИНС производится на основе существующих эвристик. В процессе запуска и работы системы характеристики остаются постоянными.

Характеристики ИНС: скорость обучения п (характеризует скорость, с которой ошибка, выдаваемая сетью, будет снижаться при увеличении числа итераций) и коэффициент функции активации а. Состояние нейрона в сети

N

рассчитывается по формуле ^ = ^ щх , где

=1

Wij - весовой коэффициент связи; хг - г-й вход нейрона; - состояние нейрона.

Выход нейрона в сети определяется по формуле / (^) =-^т, где - состояние --го

1 + е" '

нейрона; / - функция активации нейрона; а -коэффициент функции активации.

Обучение нейронной сети производится по алгоритму обратного распространения ошибки, который является одним из наиболее распространенных вариантов корректировки весов. Популярность этого алгоритма обусловлена не только его простотой, но и тем, что для него имеется теоретическое доказательство сходимости процесса обучения. Алгоритм обратного распространения ошибки является одним из методов обучения многослойных нейронных сетей прямого распространения, называемых также многослойными персептро-нами. Обучение алгоритмом обратного распространения ошибки предполагает два прохода по всем слоям сети - прямой и обратный. При прямом проходе входной вектор подается на входной слой нейронной сети, после чего распространяется по сети от слоя к слою. В результате генерируется набор выходных сигналов, который и является фактической реакцией сети на данный входной образ. Во время прямого прохода все синаптические веса сети фиксированные. Во время обратного прохода они настраиваются в соответствии с правилом коррекции ошибок, а именно: фактический выход

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

Сигмоидальная функция имеет область значений от нуля до единицы [10]. Для алгоритма обратного распространения ошибки требуется, чтобы функция была дифференцируема на всей области определения. Сигмоидальная функция удовлетворяет этому требованию. Его дополнительное преимущество состоит в автоматическом контроле усиления. Для слабых сигналов (их значение близко к нулю) кривая вход-выход имеет сильный наклон, дающий большое усиление. Когда величина сигнала становится больше, усиление падает. Таким образом, большие сигналы воспринимаются сетью без насыщения, а слабые проходят по сети без чрезмерного ослабления.

Целью обучения сети алгоритмом обратного распространения ошибки является такая подстройка ее весов, чтобы приложение некоторого множества входов приводило к требуемому множеству выходов [11]. При обучении предполагается, что для каждого входного вектора сигналов существует парный ему целевой вектор, задающий требуемый выход. Совокупность входного и выходного векторов сигналов называется обучающей парой. Машинное обучение выполняется на множестве пар.

Алгоритм обратного распространения ошибки состоит из поcледовательности выполняемых шагов [12].

Шаг 1. Инициализировать синаптические веса случайными значениями, приближенными к нулю: Wij = rand(10~4, A/max).

Шаг 2. Выбрать очередную обучающую пару из обучающего множества, подать входной вектор на вход сети.

Шаг 3. Вычислить значения выходного вектора сети.

Шаг 4. Вычислить разность выходного вектора сети и требуемого выходного вектора -целевого вектора обучающей пары.

Шаг 5. Откорректировать веса для минимизации итоговой ошибки.

Шаг 6. Повторять шаги 2-4 для каждого примера обучающей выборки до тех пор, пока ошибка на всем множестве не достигнет приемлемого уровня. В исследовании ошибка сети оценивается как среднее арифметическое значений сигналов выходного вектора. Шаги 2 и 3

образуют так называемый проход вперед, так как сигнал распространяется по сети от входного слоя к выходному.

Шаги 3 и 4 составляют обратный проход, здесь вычисляемый сигнал ошибки распространяется обратно по сети и используется для корректировки весов.

Применяемая нейросетевая структура

Для решения поставленной задачи была использована нейронная сеть следующей архитектуры (рис. 1):

- входной слой (960 нейронов), куда поступают данные о котировках за п прошедших периодов запуска программной системы;

- один скрытый слой (500 нейронов), соединяющий входной и выходной слои в сеть;

- выходной слой (32 нейрона), отображающий прогнозируемые нормализованные изменения значений котировок.

Подготовка данных для машинного обучения

Процесс обучения происходит следующим образом. Сразу после запуска сервер прогнозирования ожидает получения данных по валютам, достаточных для прогнозирования, - п замеров котировок. В это время собственно прогнозирование не происходит, так как нейронная сеть еще не обучена. После сохранения в БД всех данных по котировкам за п заме-

Входной слой - Скрытый слой - Выходной слой -960 нейронов 500 нейронов 32 нейрона

Рис. 1. Применяемая нейросетевая структура Fig. 1. The applied neural network structure

ров сервер прогнозирования начинает процесс обучения в отдельном от основного потоке. В то время, как один поток выполняет обучение над сетью, другой проводит замеры котировок - извлекает их значения с онлайн-ре-сурса [8]. Во время обучения прогнозирование не проводится. После завершения очередной процедуры обучения и при достижении счетчиком замеров n (/'замер. = n) запускается поток прогнозирования. Результаты процесса записываются в БД программной системы для использования сервером обработки запросов. Выполняется обнуление счетчика замеров (/'замер. = 0), и запускается поток обучения нейронной сети.

Чтобы все значения оказались в рамках допустимых значений элементов (для сигмои-дальной функции это диапазон от нуля до единицы), исходные данные нужно предварительно подготовить. Выполняется нормализация исходных данных: изменения значений котировок приводятся к значениям в отрезке [0, 1]. Нормализация производится по формуле

d,. + d ■

hk+r =-~, где I2k+r - нормализованный

d — d .

max mm

входной сигнал примера для обучения; dtkr -приращение значения k-й характеристики на t-м примере; [dmin, dmax] - интервал возможных нормализованных значений примеров.

Обучение проводится по алгоритму обратного распространения ошибки. На каждой эпохе обучения нейронная сеть обучается на данных, записанных в БД, затем проверяется на тестовых данных из БД. Условием выхода завершения процесса обучения является увеличение среднего значения ошибки сети, получаемой на тестовых данных. Средние значения ошибок обучения также заносятся в БД для администрирования и контроля процесса обучения. После завершения процесса обучения нейронная сеть используется для прогнозирования котировок. Для этого на входы сети подаются нормализованные приращения котировок за последние Пзам. замеров, а на выходе получаются нормализованные приращения котировок на следующий замер времени. Блок-схема алгоритма машинного обучения представлена на рисунке 2.

Разработанная программная система

Любую программную систему можно представить как состоящую из трех базовых элементов [13].

Да

_t_

Завершение

V J

Рис. 2. Блок-схема алгоритма машинного обучения Fig. 2. The machine learning algorithm flowchart

• Компонента представления, выполняющая интерфейсные операции с пользователем системы. В рассматриваемой системе это браузер и web-сервер Apache Tomcat [14].

• Прикладная компонента, отвечающая за выполнение различных прикладных операций, необходимых в работе системы. Прикладные функции в системе представлены jsp-скрипта-ми [15], выполняемыми web-сервером.

• Компонента доступа к данным, информационным ресурсам, являющимся носителями этих данных. Выполняет функции накопления и управления данными. Для рассматри-

ваемой программной системы средствами СУБД PostgreSQL [16] была спроектирована и создана БД валютных котировок. Структура таблиц БД представлена в форме реляционных отношений.

Для использования разработанного программного продукта необходимо, чтобы одновременно работали серверы прогнозирования и обработки запросов. Процесс работы программного продукта состоит из последовательности этапов (табл. 1).

Как видно из таблицы 1, время обучения на разных примерах может быть различным. Это

Таблица 1

Последовательность этапов эксплуатации программной системы

Table 1

The sequence of software system operation stages

№ Выполняемые процессы и задачи Рекомендуемая длительность этапа, с

1 Запуск сервера прогнозирования и сервера обработки запросов 1-5

2 Сервер прогнозирования собирает данные из Интернета и заносит их в БД, прогнозирование не работает. Сервер обработки запросов выдает только информацию о текущих котировках 60-600

3 Сервер собрал достаточно данных для начала обучения нейронной сети. Нейронная сеть обучается по данным о валютных котировках, взятых из БД. Обучение происходит в отдельном потоке, одновременно с ним идет процесс сбора данных из п. 2. Время процесса обучения зависит от количества учебных примеров, способности сети к обучению на них 60-300

4 Запуск процесса прогнозирования на основе обученной нейронной сети 1-5

5 Выполняется процесс прогнозирования. Периодически (раз в полтора часа) запускается процесс обучения нейронной сети в отдельном потоке. Сервер обработки запросов выдает значения текущих и прогнозируемых котировок валют 3-5 400

б По запросу пользователя выключаются оба сервера 1-3

связано с тем, что условием завершения цикла обучения для нейронной сети взято событие наращения средней ошибки, выдаваемой нейронной сетью на тестовых данных. Если же наращение не происходит, система выполнит заданное количество эпох обучения нейронной сети иобуч. и успешно завершит весь цикл обучения. В ходе экспериментов по оптимизации обучения было обнаружено, что наилучшим для этих целей является значение иобуч. = 105.

Запуск сервера прогнозирования осуществляется с помощью командной строки. Вводятся символы ./, затем имя исполняемого файла программы.

Сервер обработки запросов запускается вместе с сервером Apache Tomcat. После запуска администратором системы сервера Apache Tomcat пользователи могут просматривать текущие и прогнозируемые котировки валют, набирая в поле для ввода url в браузере клиента следующее: адрес_сервера/index.jsp, адрес_сервера - интернет-адрес сервера обработки запросов.

Информационно-функциональная схема (рис. 3) дает комплексное представление об основных элементах реализации конкретного функционального процесса. Она позволяет видеть элементы информационной базы, на которые опирается реализация отдельных функций приложения, источники информации, ее пользователей. Программная система состоит из трех основных компонентов: серверов прогнозирования и обработки запросов, БД.

Сервер прогнозирования периодически собирает текущие значения котировок валют с онлайн-ресурсов Интернета и сохраняет в БД Ро81§геБ0Ь (рис. 4). Когда объем записей значений валют в БД будет достаточным для начала обучения нейронной сети, система запускает процесс машинного обучения. Так как входными значениями нейронной сети являются значения котировок валют, полученных от предыдущих извлечений из онлайн-ресурса, система первоначально должна набрать данные о котировках как минимум за тридцать одно извлечение. Данное количество необходимо для получения хотя бы одного примера для обучения нейронной сети. Обучение нейронной сети происходит как отдельный процесс, поэтому параллельно с ним выполняется сбор данных о котировках валют с интернет-ресурса. После окончания обучения си-

Интерне жачений

т-ресурс котировок

БД котировок

Пользе сист

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

ватель емы

Запрос- ответ

Сервер Сервер обработки запросов

прогнозирования

Рис. 3. Информационно-функциональная схема программной системы

Fig. 3. The information and functional diagram of the software system

стема начинает процесс прогнозирования валют.

Сервер обработки запросов выполнен в виде jsp-скрипта, обрабатываемого с помощью сервера Apache Tomcat.

По запросу скрипт выдает информацию о текущих и прогнозируемых значениях котировок компонентом представления (Presentation Logic) клиентской части системы сервера обработки запросов (табл. 2).

Экспериментальная апробация

Целью исследования и эксперимента является выяснение существования взаимокорреляций между различными парами валют во времени. Создана нейронная сеть со следующими архитектурными настройками: входные значения сети определены типами значений торговой сессии биржи - 960 входных нормированных значений.

Выход сети представлен прогнозом цен покупки и продажи валютной пары; количество скрытых слоев - один, в нем расположены 500 нейронов.

Далее полученный персептрон был обучен на данных временного ряда биржевых котировок Forex с 18 февраля по 31 мая 2018 г. [8]. Машинное обучение заключалось в многократном повторении циклов по всем обучающим примерам. Использовалась скорость обучения а, равная 0,9 и с активным нейронным смещением.

Результаты эксперимента, полученные по двадцати примерам, взятым из контрольного множества, отражены на рисунке 5. Фактические данные изменений котировок представ-

Таблица 2 Table 2

Текущие и прогнозируемые значения котировок

Current and predicted quote values

Котировка Сейчас Через 3 минуты

Предлагаемая цена Запрашиваемая цена Предлагаемая цена Запрашиваемая цена

AUD/JPY 79.48 79.51 79.55883 79.58846

AUD/USD 1.0069 1.0071 1.0875381 1.08776

CAD/JPY 76.87 76.9 76.94919 76.979195

CHF/JPY 82.76 82.79 82.83919 82.869194

EUR/AUD 1.2504 1.2509 1.3310889 1.3315983

EUR/CAD 1.2928 1.2933 1.3734865 1.3739841

EUR/CHF 1.201 1.2012 1.2816799 1.2818837

EURGBP 0.8048 0.805 0.88545966 0.8856604

EURJPY 99.41 99.43 99.48882 99.50882

EURUSD 1.2592 1.2593 1.3398665 1.3399673

GBP/CHF 1.4919 1.4923 1.5726342 1.573012

GBP/JPY 123.48 123.52 123.561424 123.60142

GBP/USD 1.5645 1.5646 1.6451995 1.6452837

USD/CAD 1.0266 1.0267 1.107314 1.1073945

AUD/JPY 79.48 79.51 79.55883 79.58846

AUD/USD 1.0069 1.0071 1.0875381 1.08776

CAD/JPY 76.87 76.9 76.94919 76.979195

Экспериментальные данные

1,27 прогнозирования валют

1,26 1,25 1,24 1,23 1,22 • 'it. /,' v......, \ ^ " V

1,21

1,2 123456789 1011 12 13 1415 1617 18 19 20 — — — Значение котировки USD, high

Рис. 5. Результаты прогноза котировки EUR/USD на 20 контрольных примерах

Fig. 5. The results of forecasting EUR/USD quote on 20 test cases

лены графиком функции EURUSDфакт., данные, полученные в результате прогнозирования, -графиком функции EURUSDпрогн.

Заключение

В качестве основных функций, выполняемых системой, можно выделить информирование пользователя о текущих и прогнозируемых котировках валют, а также сохранение истории изменения валютных котировок в БД.

Результаты эксперимента показали, что с помощью модели прогнозирования значений валютных котировок можно делать достаточно достоверные краткосрочные прогнозы. Для большинства примеров выборки для тестирования (57,31 %) спрогнозировано правильное направление краткосрочного изменения исследуемой котировки. Такие прогнозы формируют погрешности в абсолютных значениях изменений прогнозируемой величины, однако достаточно точно отражают направления динамики подобных изменений. Спроектирована и разработана программная система, предназначенная для информирования и прогнозирования валютных котировок на рынке Forex в он-лайн-режиме.

Литература

1. Haykin S. Neural Networks and Learning Machines. New Jersey, Upper Saddle River, Pearson Prentice Hall Publ., 2010, 906 p.

2. Dzhangarov A.I., Suleymanova M.A., Zolkin A.L. Face recognition methods. IOP Conf. Ser.: Mater. Sci. Eng., 2020, vol. 862, no. 4, pp. 42-46. DOI: 10.1088/1757-899X/862/4/042046.

3. Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика. М.: Горячая линия-Телеком, 2002. 382 с.

4. Галанов А.Э., Селюкова Г.П. Нейронные сети и нейронные технологии // Актуальные вопросы науки и хозяйства: новые вызовы и решения: сб. мат. LIII Междунар. студен. науч.-практич. конф. 2019. С. 399-405.

5. Тормозов В.С. Анализ методов распознавания образов и машинного обучения для распознавания визуальных образов // Информационные технологии XXI века: сб. науч. тр. 2019. С. 354-359.

6. Амосов О.С. Фильтрация марковских последовательностей на основе байесовского, нейросете-вого подходов и систем нечеткой логики при обработке навигационной информации // Изв. РАН. Теория и системы управления. 2004. № 4. С. 61-69.

7. Baasher A.A., Fakhr M.W. Forex trend classification using machine learning techniques. Recent Researches in Applied Informatics and Remote Sensing, 2011, vol. 1, no. 1, pp. 41-47.

8. Финам. Экспорт котировок. URL: https://www.finam.ru/profile/forex/eur-usd/export/ (дата обращения: 10.04.2021).

9. Тормозов В.С., Золкин А.Л., Василенко К.А. Структурная оптимизация персептрона с помощью аппарата эволюционного моделирования для задачи прогнозирования значений временных рядов // Промышленные АСУ и контроллеры. 2020. № 8. С. 40-45.

10. Ezeafulukwe U.A., Darus M., Fadipe-Joseph O.A. On analytic properties of a sigmoid function. Int. Journal of Mathematics and Computer Science, 2018, vol. 13, no. 2, pp. 171-178.

11. Каллан Р. Основные концепции нейронных сетей; [пер. с англ.]. М.: Вильямс, 2001. 287 с.

12. Созыкин А.В. Обзор методов обучения глубоких нейронных сетей // Вестн. ЮУрГУ. Сер.: Вычислительная математика и информатика. 2017. Т. 6. № 3. С. 28-59. DOI: 10.14529/cmse170303.

13. Isah H., Abughofa T., Mahfuz S., Ajerla D., Zulkernine F., Khan S. A survey of distributed data stream processing frameworks. IEEE Access, 2019, vol. 7, pp. 300-316. DOI: 10.1109/ACCESS.2019.2946884.

14. Vukotic A., Goodwill J. Apache Tomcat 7. New York: Apress Publ., 2011, 293 p.

15. Wojciechowski J. MVC model, struts framework and file upload issues in web applications based on J2EE platform. Proc. Intern. Conf. TCSET, 2004, pp. 342-345.

16. Строков А.А., Ширяев В.Е., Ширяев М.Е. СУБД PostgreSQL и ее применение для разработки баз данных в АСУ специального назначения // VII Междунар. науч.-технич. и науч.-метод. конф. АПИНО: сб. науч. стат. 2018. С. 565-570.

Software & Systems Received 22.04.21

DOI: 10.15827/0236-235X.135.399-408 2021, vol. 34, no. 3, pp. 399-408

An intelligent approach to online reporting and short-term forecasting of time series

V.S. Tormozov 1, Senior Lecturer, 007465@pnu.edu.ru A.L. Zolkin 2, Associate Professor, alzolkin@list.ru A.U. Menchiev 3, Senior Lecturer, a.mentsiev@chesu.ru

1 Pacific National University, Khabarovsk, 680035, Russian Federation

2 Povolzhskiy State University of Telecommunication and Informatics, Samara, 443010, Russian Federation

3 Chechen State University, Grozny, 690092, Russian Federation

Abstract. The problem of predicting future values of the complex system characteristics remains important. Nowadays, along with traditional methods for predicting time series, the theory of artificial neural networks is used, which has proven itself well in the control field, where the use of human intelligence was previously necessary, in particular in solving prediction problems. The interest in neural networks is due to both theoretical and applied advances in this field.

The paper considers the development of a software system for informing and forecasting the time series using the example of the exchange rate on the Forex stock exchange using a mathematical apparatus of artificial neural networks. The paper presents the designed information and functional diagram of the prediction system and a server, the conceptual and physical data model used for research of the neural network structure. A prediction server in the C++ programming language is implemented, as well as an access request processing server based on the Tomcat Web server, which generates a jsp page with current currency quotes and a forecast result. A software system has been designed and developed to inform and predict currency quotes in the Forex market online. The developed and implemented system strictly meets the set requirements.

Based on the experimental results, it can be concluded that with the help of a model for predicting the values of currency quotes, it is possible to make fairly reliable short-term forecasts. For the most testing samples, the forecast showed the correct direction of short-term change in the studied quotation. The constructed forecasting model helps making fairly reliable short-term forecasts.

Keywords: software system, forecasting, time series, forex, currency quotes.

References

1. Haykin S. Neural Networks and Learning Machines. New Jersey, Upper Saddle River, Pearson Prentice Hall Publ., 2010, 906 p.

2. Dzhangarov A.I., Suleymanova M.A., Zolkin A.L. Face recognition methods. IOP Conf. Ser.: Mater. Sci. Eng., 2020, vol. 862, no. 4, pp. 42-46. DOI: 10.1088/1757-899X/862/4/042046.

3. Kruglov V.V., Borisov V.V. Artificial Neural Networks. Theory and Practice. Moscow, 2002, 382 p. (in Russ.).

4. Galanov A.E., Selyukova G.P. Neural networks and neural technologies. Proc. LIIIIntern. Student Sci. Pract. Conf. Topical Issues of Science and Economy: New Challenges and Solutions, 2019, pp. 399-405 (in Russ.).

5. Tormozov V.S. Analysis of pattern recognition and machine learning methods for visual pattern recognition. Proc. of the 21st Century Information Technologies, 2019, pp. 354-359 (in Russ.).

6. Amosov O.S. Markov sequence filtering on the basis of Bayesian and neural network approaches and fuzzy logic systems in navigation data processing. J. of Computer and Systems Sciences Intern, 2004, vol. 43, no. 4, pp. 551-559 (in Russ.).

7. Baasher A.A., Fakhr M.W. Forex trend classification using machine learning techniques. Recent Researches in Applied Informatics and Remote Sensing, 2011, vol. 1, no. 1, pp. 41-47.

8. Finam. Export Quotes. Available at: https://www.finam.ru/profile/forex/eur-usd/export/ (accessed April 10, 2021) (in Russ.).

9. Tormozov V.S., Zolkin A.L., Vasilenko K.A. Perceptron structural optimization using the apparatus of evolutionary modeling for the task of predicting the values of time series. Industrial Automatic Control Systems and Controllers, 2020, no. 8, pp. 40-45 (in Russ.).

10. Ezeafulukwe U.A., Darus M., Fadipe-Joseph O.A. On analytic properties of a sigmoid function. Int. Journal of Mathematics and Computer Science, 2018, vol. 13, no. 2, pp. 171-178.

11. Callan R. The Essence ofNeuralNetworks. Prentice Hall Publ., 1998, 248 p. (Russ. ed.: Moscow, 2001, 287 p.).

12. Sozykin A.V. An overview of methods for deep learning in neural networks. Bull. of the SUSU. Ser. Computational Mathematics and Software Engineering, 2017, vol. 6, no. 3, pp. 28-59. DOI: 10.14529/ cmse170303 (in Russ.).

13. Isah H., Abughofa T., Mahfuz S., Ajerla D., Zulkernine F., Khan S. A survey of distributed data stream processing frameworks. IEEE Access, 2019, vol. 7, pp. 300-316. DOI: 10.1109/ACCESS.2019.2946884.

14. Vukotic A., Goodwill J. Apache Tomcat 7. NY, Apress Publ., 2011, 293 p.

15. Wojciechowski J. MVC model, struts framework and file upload issues in web applications based on J2EE platform. Proc. Intern. Conf. TCSET, 2004, pp. 342-345.

16. Strokov A.A., Shiryaev V.E., Shiryaev M.E. DBMS PostgreSQL and its application for development of databases in ACS of special purposes. Proc. ICAIT, 2018, pp. 565-570 (in Russ.).

Для цитирования

Тормозов В.С., Золкин А.Л., Менциев А.У. Интеллектуальный подход к задаче информирования и краткосрочного прогнозирования временного ряда в онлайн-режиме // Программные продукты и системы. 2021. Т. 34. № 3. С. 399-408. DOI: 10.15827/0236-235X.135.399-408.

For citation

Tormozov V.S., Zolkin A.L., Menchiev A.U. An intelligent approach to online reporting and short-term forecasting of time series. Software & Systems, 2021, vol. 34, no. 3, pp. 399-408 (in Russ.). DOI: 10.15827/0236-235X. 135.399-408.

i Надоели баннеры? Вы всегда можете отключить рекламу.