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

№1-1,

экономические науки

В данной работе рассмотрены различные методы предсказания финансовых временных рядов при помощи искусственных нейронных сетей. В результате был получен статистически качественный незапаздывающий прогноз цен акций некоторых российских и американских компаний. Также был выполнен прогноз технического индикатора MAD, на основе которого была построена торговая стратегия. Ее прибыльность составила 72.7% годовых без применения нейропрогноза и 82.1% годовых с использованием нейропрогноза. Было показано, что в течение 5.25 года тестирования стратегии она приносила стабильный доход независимо от поведения рынка.

Похожие материалы

Прогнозирование стилизованных данных

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

  • логистическое уравнение
  • система уравнений Лоренца
  • генератор псевдослучайного сигнала.

На основе численных экспериментов были сделаны следующие выводы:

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

Прогнозирование цен High и Low акций

Был выполнен незапаздывающий прогноз цен High и Low американских и российских акций. Это значит, что нейронная сеть не считала лучшим предсказанием на следующий день сегодняшнее значение ряда, а давала прогноз. Практика показывает, что цены High и Low прогнозируются лучше, чем Open или Close. Это интуитивно понятно, так как High и Low – некие усредненные характеристики рынка за определенный период, тогда как Open и Close – сугубо локальные. Данные результаты могут служить основой для построения автоматизированной интеллектуальной торговой стратегии. Однако, в настоящей работе, построение торговой стратегии было основано на применении нейропрогноза технического индикатора MAD. Визуально результаты нейропрогнозов цен High и Low, полученные с помощью ИНС Jump connection , представлены на рис. 1. На графиках изображено предсказанное на один отсчет вперед значения ряда в сравнении с реальным значением на Production Set, в режиме «палегноза».

Нейропрогноз цен High и Low и сравнение их с реальными значениями

Рис. 1. Нейропрогноз цен High и Low и сравнение их с реальными значениями

Прогнозирование технического индикатора MAD

Известно, что некоторые технические индикаторы при их применении автоматически сглаживают ряд. Таким свойством обладает, например, скользящее среднее (MA). Однако, при прогнозировании сглаженных с помощью МА значений всегда наблюдается эффект запаздывания прогноза. Этого можно избежать, работая с разностью двух скользящих средних.

MAD(N,M)=MA(N)+MA(M)

MA_{M}(X,t)=\frac{1}{N}\sum_{i=0}^{M-1}{(X(t-i))}

MAD(5,10)

Рис. 2. MAD(5,10)

Этот индикатор очень похож на MACD и может использоваться для выявления долгосрочной и промежуточной тенденций.

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

Статистические результаты прогноза приведены в таблице ниже:

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

Output: training set test set production set
R squared: 0,9689 0,967 0,9767
r squared: 0,9692 0,9672 0,9768
Mean squared error: 0 0 0
Mean absolute error: 0,005 0,005 0,005
Min. absolute error: 0 0 0
Max. absolute error: 0,073 0,037 0,019
Correlation coefficient r: 0,9845 0,9835 0,9884
Percent within 5%: 16,569 14,815 19,192
Percent within 5% to 10%: 13,536 16,204 18,182
Percent within 10% to 20%: 22,054 22,685 24,242
Percent within 20% to 30%: 10,035 12,5 8,081
Percent over 30%: 37,806 33,796 30,303

R^{2}=1-\frac{\sum{(y-\gamma)^{2}}}{\sum{(y-y_{cp})^{2}}}

Здесь R2 – коэффициент многофакторной детерминации (y – реальное значение, γ – предсказанное значение y, yср– среднее значений y). Остальные статистические характеристики в таблице общеприняты и поэтому здесь не описываются.

На основе полученного прогноза индикатора была создана торговая система. Принципы ее построения описаны ниже.

Построение торговой стратегии

Стратегия на индикаторе MACD строится на соотношении MACD и его скользящего среднего. Если одна величина превышает другую, это может служить сигналом на покупку или продажу.

На индикаторе MAD(5,10) можно построить торговую стратегию по такому же принципу.

Сигнал ENTER LONG (покупка): MAD(5,10) > 2 ∙MAN(MAD(5,10)).

Сигнал CLOSE LONG (продажа): MAD(5,10) > 2 ∙MAN(MAD(5,10)).

В качестве финансового инструмента были выбраны акции компании Coca-Cola Co (Coke) (KO), поскольку в ценах акций этой компании за последние 8-10 лет отсутствует явный тренд. Временной ряд без трендов был выбран специально, поскольку следящие за трендом торговые системы конструировать значительно проще.

Использовались дневные данные с 2.01.1996 по 22.06.2005 (2386 раб. дней). Торговля велась всем имеющимся на счету капиталом. Комиссия считалась равной 0.01USD за акцию, как за вход, так и за выход из рынка. На первых 1073 рабочих днях обучалась нейронная сеть по алгоритму, описанному в предыдущем разделе для прогнозирования MAD(5,10). На оставшихся 1313 рабочих днях (5.25 года) тестировалась торговая стратегия как с применением нейропрогноза, так и без него. Полученные в обоих случаях результаты статистически сравнивались. Результаты этого сравнения приведены в таблице ниже. Годовой банковский процент рассчитывался для того, чтобы сравнить доходность построенной стратегии с доходностью примитивной стратегии – положить деньги на счет в банке с реинвестированием раз в год. Прибыль рассчитывалась, как отношение прироста стоимости портфеля к начальной его стоимости, умноженное на 100 %. В верхней строке таблицы приведена прибыль, рассчитанная таким образом, за все время тестирования стратегии, т.е. за 5.25 года.

Результаты тестирования стратегии за Т=5,25 года.

Стратегия с нейропрогнозом без него
Прибыль, % 2656.2 1662.3
Банковский процент, %/год 88.1 72.7
Число прибыльных сделок 55 53
Число убыточных сделок 7 5
Средняя прибыль, USD 498.0 318.3
Средний убыток, USD -118.1 -49.2

Видим, что применение нейросетевого прогноза позволяет извлечь дополнительные 15.4 %/год прибыли по сравнению со стратегией без нейропрогноза. Кроме того, на всем временном интервале, даже на падающем рынке, стратегия приносит стабильный доход.

Благодарности

Автор благодарен фонду некоммерческих программ «Династия» за финансовую поддержку.

Список литературы

  1. Ежов А.А., . Шумский С.А., Нейрокомпьютинг и его применения в экономике и бизнесе, Москва, 1998.
  2. Filippo Castiglione, Forecasting price increments using an artificial Neural Network, arXiv:cond-mat/0006486 v1 30 Jun 2000.
  3. L.A. Dmitrieva, Yu.A. Kuperin, I.V. Soroka, "Neural Network Prediction of Short-Term Dynamics of Futures on Deutsche Mark, Libor and S&P500",
  4. M.A. Sloot et al. (Eds.): ICCS 2002, LNCS 2331, pp. 1201-1208, 2002, Springer-Verlag Berlin Heidelberg 2002.
  5. V.V. Kondratenko and Yu.A. Kuperin, "Using Recurrent Neural Networks To Forecasting of Forex", arXiv: cond-mat/0304469.
  6. A.A. Zherebtsov, Yu.A. Kuperin, "An Application of Self-Organizied Kohonen Maps to Clusterization of DJIA and NASDAQ100 Indices: Artificial Intelligence in Financial Management", Vestnik of St.Petersburg State University,2005, Ser.8, issue 1, Management, 183-202.