49,1
Рейтинг
ITI Capital
Лучший онлайн-брокер для работы на бирже

Эксперимент: Можно ли создать эффективную торговую стратегию с помощью машинного обучения и исторических данных

Блог компании ITI CapitalРазработка веб-сайтов


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

Давид Монтаг (David Montaque), выпускник Стэнфордского университета и сотрудник компании Palantir Technologies, написал статью, в которой описал создание алгоритмических стратегий для торговли фьючерсами на основе исторических данных. Для предсказания будущей цены и волатильности Монтаг использовал техники машинного обучения. Мы представляем вашему вниманию описание эксперимента и выводы, к которым пришел исследователь.

Начало работы


Целью эксперимента была разработка высокоэффективных алгоритмических торговых стратегий для представления их на конкурсе Quantiacs futures. В ходе этого соревнования торговые системы работают на исторических данных и на реальных торгах на платформе Quantiacs (максимально приближены к тому, как это происходит на бирже), по результатам каждого из этих испытаний составляется рейтинг лучших систем. Цель конкурса — получить стратегию с оптимальной производительностью, измеряемой коэффициентом Шарпа (отношение средней прибыли к средней волатильности). Победитель получает инвестиции в размере $1 млн, участник, занявший второе место — $500 тыс, третье — $250 тыс.



Коэффициент шарпа — отношение годовой прибыли к годовой волатильности

Исторические данные для конкурса включают приблизительно 3800 дней торгов (данные о цене и объёме торгов) с 1 января 2001 года до наших дней. Информация представлена для 27 разных фьючерсных контрактов, включая валюту, драгоценные металлы, сельхозпродукты и т.п. Данные включают значения максимальной, минимальной цены дня, а также цену открытия, закрытия и торговые объёмы за период.

В каждый торговый день правила конкурса разрешают стратегии использовать в качестве входных данных информацию о предыдущих 504 торговых периодов (что дает вектор из 2520 элементов).

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

Алгоритмы


Для предсказания волатильности и результативности торгов Монтаг использовал четыре регрессионных алгоритма:

  • Линейная и регуляризованная регрессия (собственной разработки);
  • Нейронные сети (с помощью инструмента MATLAB Neural Networks);
  • Случайный лес (с помощью функции MATLAB Tree-Bagger);
  • Градиентный бустинг дерева решений (пакет GBM для R).

Проблема предсказания волатильности оказалась значительно более простой, чем предсказание прибыли.

Для каждой из задач использовались два набора данных — тренировочный набор, состоящий из 9424 примеров (80% доступных данных) и тестовый набор из 2356 примеров (20% данных). Распределение тренировочного и тестового наборов было хронологическим — тренировочные примеры содержали 80% начальных данных, а тестовые примеры состояли из 20% последних данных.

Результаты


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

Algorithm Training r2 CV r2 Test r2
PCA (82) 0.631 0.490 0.473
TI (18) 0.710 0.645 0.637
TI (7) 0.713 0.647 0.639

Здесь PCA — метод главных компонент, а TI — технические индикаторы. Цифры в круглых скобках представляют собой размеры вектора признаков.

После осуществления анализа главных компонент уменьшенного до 250 элементов и нормализованного вектора, было получено оптимальное число главных компонент — 82. Однако применение линейной регрессии, использующей вектор всех технических индикаторов из 18 элементов, позволяло добиться лучших результатов, в итоге Монтагу методом перебора удалось выявить семь технических индикаторов, использование которых позволяет еще улучшить результаты.

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

Algorithm Training r2 CV r2 Test r2
LR 0.713 0.647 0.639
NN 0.734 0.660 0.632
RF 0.731 0.664 0.649
GBM 0.701 0.666 0.638

Здесь LR — это линейная регрессия, NN — нейронные сети, RF — случайный лес, GBM — градиентный бустинг дерева принятия решений. Наилучших результатов удалось добиться с помощью алгоритма случайного леса.

Ниже представлены результаты эффективности предсказания прибыли:

Algorithm Training r2 CV r2 Test r2
RR 0.169 0.142 0.138
NN 0.088 0.013 -0.088
RF 0.236 0.069 -0.102
GBM 0.328 0.154 0.028

Здесь RR — это регуляризованная регрессия (которая оказалась наиболее эффективной), а остальные сокращения идентичны тем, что были использованы выше. Отрицательные значения соответствуют «короткой продаже».

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

На графике ниже изображена производительность этой стратегии — ей удалось добиться годовой прибыли в 6,63%, при годовой волатильности 5,58% и коэффициенте Шарпа в 1,18.



Однако при использовании только первой половины доступных исторических данных стратегия показала коэффициент Шарпа, равный 1,33, а при выборке, включавшей только вторую часть данных, это число было куда меньше — 0,73. Данный факт указывает на то, что не стоит ожидать одинаковой хорошей производительности стратегии, как в прошлом, так и в будущем, однако можно рассчитывать на определенную продуктивность.

Согласно данным ресурса Investopedia, хорошим показателем считается коэффициент Шарпа, равный 1 или выше, очень хорошим — 2 или выше, отличным — 3 и выше. Полученные с помощью указанных выше методов стратегии смогли показать максимальный коэффициент Шарпа, равный 1,2 —на исторических данных, а для будущих данных значительно меньше.

Несмотря на то, что эти стратегии показали прибыль, вероятность того, что в реальной торговли их коэффициент Шарпа поднимется выше единицы не очень велика.
Теги:алгоритмическая торговлятрейдингонлайн-трейдингалгоритмыторговые роботы
Хабы: Блог компании ITI Capital Разработка веб-сайтов
+10
25,7k 112
Комментарии 3

Похожие публикации

Лучшие публикации за сутки