Эксперимент: Можно Ли Создать Эффективную Торговую Стратегию, Используя Машинное Обучение И Исторические Данные



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

В нашем блоге мы много пишем о создании
торговые роботы и алгоритмические торговые технологии.

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

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

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

Представляем вашему вниманию описание эксперимента и выводы, к которым пришел исследователь.



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

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

Фьючерсы на Квантиак .

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

скомпилировано.

Цель конкурса — получить стратегию с оптимальной эффективностью, измеряемой коэффициентом Шарпа (отношение средней прибыли к средней волатильности).

Победитель получает инвестиции в размере $1 млн, участник, занявший второе место, получает $500 тысяч, третье место получает $250 тысяч.



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

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

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

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

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



Алгоритмы

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

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

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

Распределение обучающей и тестовой выборок было хронологическим – обучающие примеры содержали 80% исходных данных, а тестовые – последние 20% данных.



Полученные результаты

Прежде чем сравнить производительность различных алгоритмов машинного обучения, исследователь выполнил выборку с помощью линейной регрессии:
Алгоритм Обучение р 2 резюме р 2 Тест р 2
ПКА (82) 0.631 0.490 0.473
ТИ (18) 0.710 0.645 0.637
ТИ (7) 0.713 0.647 0.639
Вот PCA метод главных компонент , и TI — технические индикаторы.

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

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

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

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

Алгоритм Обучение р 2 Резюме р 2 Тест р 2
ЛР 0.713 0.647 0.639
НН 0.734 0.660 0.632
РФ 0.731 0.664 0.649
ГБМ 0.701 0.666 0.638
Здесь LR — линейная регрессия, NN — нейронные сети, RF — случайный лес, GBM — дерево решений повышения градиента.

Наилучшие результаты были достигнуты при использовании алгоритма случайного леса.

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

Алгоритм Обучение р 2 резюме р 2 Тест р 2
Р.

Р.

0.169 0.142 0.138
НН 0.088 0.013 -0.088
РФ 0.236 0.069 -0.102
ГБМ 0.328 0.154 0.028
Здесь RR — это регуляризованная регрессия (которая оказалась наиболее эффективной), а остальные сокращения идентичны использованным выше.

Отрицательные значения соответствуют «коротким продажам».

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

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

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

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

По данным ресурса Инвестопедия Коэффициент Шарпа 1 и выше считается хорошим показателем, коэффициент Шарпа 2 и выше считается очень хорошим, а коэффициент Шарпа 3 и выше считается отличным.

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

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

Теги: #алгоритмический трейдинг #трейдинг #онлайн-торговля #Алгоритмы #торговые роботы #Разработка сайтов

Вместе с данным постом часто просматривают: