Начинаем изучение AlphaGen — фреймворка автоматического поиска формульных факторов для прогнозирования рыночной доходности и формирования торговых сигналов. Разбираем, как генератор создаёт выражения из цен и объёмов, а совместная оценка факторов помогает отбирать полезные признаки для торговой модели. Рассматриваем адаптацию алгоритма к финансовым временным рядам. В практической части реализуем OpenCL-примитивы типизированного стека и маскирования токенов, обеспечивающие корректное построение формул с учётом ограничений доступной истории.
При разработке торговой системы приходится решать, какие свойства рынка передать модели. Изменение цены за несколько баров может описывать направленное движение, а отклонение от средней — удаление цены от сглаженного уровня. Колебания объёма характеризуют активность торгов. Каждый такой признак нужно проверить: связан ли он с последующей доходностью и помогает ли принять решение на выбранном горизонте.
Добавление новых индикаторов не всегда даёт новую информацию. Например, несколько признаков изменения цены за близкие периоды могут повторять один и тот же сигнал. Другой фактор окажется полезным при совместном использовании, хотя отдельно выглядит слабее. Поэтому искать признаки и оценивать их будущую комбинацию нужно согласованно.
Автоматический поиск позволяет поручить программе построение таких признаков. Для этого задают исходные данные и разрешённые операции, из которых составляются формулы. Затем требуется отсеять некорректные выражения и определить, какие из вычислимых кандидатов дополняют уже найденный набор.
В работе Generating Synergistic Formulaic Alpha Collections via Reinforcement Learning Shuo Yu и соавторы предлагают фреймворк AlphaGen. Его генератор строит формулы, а комбинационная модель оценивает их совместную связь с будущей доходностью. Эта оценка направляет дальнейший поиск: генератор обучается предлагать факторы с учётом текущего набора.
Разберём, как авторы оценивают факторы, обновляют их набор и обучают генератор. Затем начнём адаптацию средствами MQL5 и OpenCL. Практическим результатом станет маска, которая позволит генератору выбирать только структурно допустимые действия и завершать выражение в установленном лимите.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Опубликована статья Нейросети в трейдинге: AlphaGen — поиск торговых факторов:
При разработке торговой системы приходится решать, какие свойства рынка передать модели. Изменение цены за несколько баров может описывать направленное движение, а отклонение от средней — удаление цены от сглаженного уровня. Колебания объёма характеризуют активность торгов. Каждый такой признак нужно проверить: связан ли он с последующей доходностью и помогает ли принять решение на выбранном горизонте.
Добавление новых индикаторов не всегда даёт новую информацию. Например, несколько признаков изменения цены за близкие периоды могут повторять один и тот же сигнал. Другой фактор окажется полезным при совместном использовании, хотя отдельно выглядит слабее. Поэтому искать признаки и оценивать их будущую комбинацию нужно согласованно.
Автоматический поиск позволяет поручить программе построение таких признаков. Для этого задают исходные данные и разрешённые операции, из которых составляются формулы. Затем требуется отсеять некорректные выражения и определить, какие из вычислимых кандидатов дополняют уже найденный набор.
В работе Generating Synergistic Formulaic Alpha Collections via Reinforcement Learning Shuo Yu и соавторы предлагают фреймворк AlphaGen. Его генератор строит формулы, а комбинационная модель оценивает их совместную связь с будущей доходностью. Эта оценка направляет дальнейший поиск: генератор обучается предлагать факторы с учётом текущего набора.
Разберём, как авторы оценивают факторы, обновляют их набор и обучают генератор. Затем начнём адаптацию средствами MQL5 и OpenCL. Практическим результатом станет маска, которая позволит генератору выбирать только структурно допустимые действия и завершать выражение в установленном лимите.
Автор: Dmitriy Gizlyk