Модель на обращенном во времени Медленном %К





Первый шаг в разработке нейронной сети с прогностическими функциями — это подготовка обучающего набора фактов, т.е. выборки данных, содержащей примеры для обучения сети, а также для оценки некоторых статистических показателей. В данном случае набор фактов генерируется на основе данных из пределов выборки по всем рынкам в составе портфеля: таким образом, набор фактов будет велик — 88 092 точки данных. Этот набор генерируется только для обучения, но не для тестирования по причинам, которые будут пояснены далее.
Для получения набора фактов под данную модель сперва следует произвести расчеты целевого показателя — обращенного во времени Медленного %К. Каждый факт затем записывается в файл при проходе через все точки данных для всех рынков в составе портфеля. Для каждого торгового дня процесс создания факта начинается с расчета входных переменных. Это делается путем расчета разности между парой цен и делением результата на квадратный корень количества дней, лежащих между этими двумя ценами. Квадратичная поправка используется, поскольку в случайном рынке стандартное отклонение между двумя днями примерно пропорционально квадратному корню от количества дней между ними.
Эта поправка сделает вклад каждой разницы цен в факт примерно равным. В этом эксперименте в каждом факте содержится 18 изменений цены, рассчитанных с квадратичной поправкой. Эти 18 значений будут служить как 18 входов нейронной сети после дополнительной обработки.
Пары цен (использованные при расчете изменений) выбираются с возрастающим расстоянием между ценами, т.е. чем дальше во времени, тем расстояние между точками данных больше. Первые несколько пар перед текущим днем берутся с расстоянием в один день, т.е. цена предыдущего дня вычитается из цены текущего и т.д. После нескольких таких пар шаг изменяется до 2 дней, затем до 4,8 и т.д. Точная расстановка включена в код программы в виде таблицы. Смысл этого состоит в получении максимально точной информации о новейших процессах. Чем дальше во времени от текущего дня находятся данные, тем больше вероятность того, что только долговременные процессы будут иметь значение, следовательно, можно обойтись меньшим разрешением. Такая выборка дней должна обеспечивать достаточное разрешение для регистрации циклов и других явлений с периодом от 1 — 2 до 50 дней и более. Такой подход принят в соответствии с рекомендацией Марка Джурика (jurikres.com).
Собрав для будущего факта 18 скорректированных квадратным корнем разностей для входов, мы используем процедуру нормализации. Целью нормализации является удаление информации, заложенной в амплитуде, при сохранении формы волны. При обращении с 18 переменными входа как с вектором, нормализация состоит в масштабировании вектора в единицы длины. Расчеты включают возведение каждого элемента вектора в квадрат, сложение квадратов, вычисление квадратного корня и затем деление каждого элемента на полученное число. Так получаются переменные входа для нейронной сети — фактически, программа нейронной сети в дальнейшем еще раз будет масштабировать эти входы, приводя их значения к уровням, допустимым для входных нейронов.
Для каждого факта целью (т.е. зависимой переменной регрессии) является попросту значение обращенного во времени Медленного %К. Входные переменные и цель для каждого факта выдаются в простом ASCII- формате в виде файла, который может анализироваться качественным пакетом для разработки нейронных сетей.
Полученный набор фактов используется для обучения сети прогнозированию обращенного во времени Медленного %К, т.е. относительного положения сегодняшней цены закрытия и, предположительно, завтрашней цены открытия по отношению к диапазону цен за последующие 10 дней (обращенный во времени Медленный %К с периодом 10 дней).
Следующий шаг разработки нейронного прогностического устройства — реальная тренировка нескольких сетей на полученном наборе фактов. Обучают серию нейронных сетей различного размера, причем метод отбора наиболее хорошо обученной и устроенной сети не состоит, как можно было бы подумать, в проверке ее эффективности на данных вне пределов выборки. Вместо этого проводится коррекция коэффициентов корреляции (показателей прогностических способностей каждой сети), причем коэффициент коррекции зависит от размера выборки данных и количества параметров (связей между нейронами) в исследуемой сети. При этом используется то же уравнение, что и при коррекции множественных корреляций, получаемых при многовариантной регрессии (см. главу о статистике и оптимизации). Чем больше и сложнее сеть, тем сильнее будут скорректированы (в меньшую сторону) коэффициенты корреляции. Этот подход помогает оценить степень излишней подгонки системы под исходные данные. Чтобы большая сеть превзошла маленькую, она должна давать значительно больший коэффициент корреляции.
Этот метод позволяет выбирать лучшие сети без обычного обращения к данным вне пределов выборки. Все сети проходят полное обучение, т.е. не делается попыток скомпенсировать снижение степеней свободы меньшим обучением сети.
Наилучшие сети, отобранные на основе скорректированных корреляций, затем тестируются с настоящей моделью входа, стандартизованным выходом на всех рынках как в пределах, так и вне пределов выборки.
Как было сказано выше, излишне подогнанные сети должны иметь очень низкие значения корреляции после проведения ее коррекции. Большое количество фактов в наборе (88 092) должно помочь избежать вредного влияния подгонки для сетей умеренного размера.

мЮВЮКН


Содержание раздела