Алгоритмическая торговля на базе самообучающегося алгоритма

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


2017-09-28 12:30

Алгоритмическая торговля на базе самообучающегося алгоритма

Студент из Стэнфордского университета написал алгоритмическую торговую модель, в которой торговал самообучающий алгоритм. Задачей было победить в конкурсе Quantiacs, поскольку победитель получает инвестиции в размере $1 млн, участник, занявший второе место — $500 тыс, третье — $250 тыс.

Для тестирования были использованы данные от 3800 торговых дней(от 1 января 2001 до сегодняшнего дня), в которых была цена и проторгованный объем. Использовались различные фьючерсные контракты(валютные пары(EUR/USD и т.п.), металлы(XAU/USD и т.п.). А для оценки эффективности торговли использовался Коэффициент Шарпа. Торговая система анализировала последние 504 торговых дня, и представляла из себя 2520 мерный массив содержащий торговую информацию.

Алгоритм обучался на базе 7 технических индикаторов, показавших наибольшую эффективность: Average True Range (ATR)(14,45); соотношение Exponential Moving Average за 12, 26, и 50 дней к Exponential Moving Average за 100 дней; On Balance Volume indicator (5, 15), за 60 дней; Percentage Price Oscillator (PPO); Percentage Volume Oscillator (PVO); Rate of Change (ROC)(5, 21), за 125 дней; отношение 100 дневной Simple Moving Average (SMA) в 200 дневной; Relative Strength Index(RSI) за 14 дней; William %R за 14, 45, и 125 дней.

Для прогнозирования будущих значений цены и волатильности использовались следующие самообучающиеся алгоритмы:

• линейная регрессия;

• нейронная сеть(в MATLAB);

• алгоритм случайный лес(алгоритм сочетает в себе две основные идеи: метод бэггинга Бреймана, и метод случайных подпространств(в MATLAB));

• усиленный градиент(Gradient boosting(GMB)).

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

Для прогнозирования будущей волатильности алгоритм анализировал технические индикаторы и PCA(представляет из себя 82 мерный вектор, полученный из оригинального фьчерсного вектора путем отбора каждого из пяти типов переменных(объем, цена и т.п.) за каждые 3 для из последних 150 дней, разделенных по значения текущего дня). Было проведено сравнение технических индикаторов с системой на базе PCA:

Алгоритм

PCA (82): Обучение 0.631 / Резюме 0.490 / Тест 0.473

Технические индикатора (18):Обучение 0.710 /Резюме 0.645 / Тест 0.637

Технические индикаторы (7): Обучение 0.713 /Резюме 0.647 / Тест 0.639

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

Алгоритм

Линейная регрессия: Обучение 0.713 / Резюме 0.647 / Тест 0.639

Нейронная сеть: Обучение 0.734 / Резюме 0.660 / Тест 0.632

Алгоритм случайный лес: Обучение 0.731 / Резюме 0.664 / Тест 0.649

Усиленный градиент: Обучение 0.701 / Резюме 0.666 / Тест 0.638

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

Алгоритм

Линейная регрессия: Обучение 0.169 / Резюме 0.142 / Тест 0.138

Нейронная сеть: Обучение 0.088 / Резюме 0.013 / Тест -0.088

Алгоритм случайный лес: Обучение 0.236 / Резюме 0.069 / Тест -0.102

Усиленный градиент: Обучение 0.328 / Резюме 0.154 / Тест 0.028

В торговом роботе предсказание волатильности было объедено с предсказанием прибыли и на базе их значений, система открывает позиции в портфеле состоящем из различных фьючерсов (валютные пары(EUR/USD и т.п.), металлы(XAU/USD и т.п.). По итогам, Коэффициент Шарпа был больше единицы, а прибыль составила 6,63%.

Комментарии: