Обсуждение статьи "Нейросети — это просто (Часть 43): Освоение навыков без функции вознаграждения"

 

Опубликована статья Нейросети — это просто (Часть 43): Освоение навыков без функции вознаграждения:

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

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

Для тестирования мы использовали модифицированный советник "DIAYN\Test.mq5". Внесенные изменения затронули только алгоритмы подготовки данных в соответствии с архитектурой моделей и процесс подготовки исходных данных. Также была изменена последовательность вызова прямых проходов моделей. Процесс построен аналогично описанным ранее советникам для сбора базы примеров и обучения моделей. Подробный код советника доступен во вложении.

Результаты тестирования модели Результаты тестирования модели

В результате тестирования обученной модели была достигнута небольшая прибыль, с профит-фактором 1.61 и фактором восстановления 3.21. За 240 баров тестового периода модель совершила 119 сделок, при этом почти 55% из них были закрыты с прибылью.

Автор: Dmitriy Gizlyk

 
Здравствуйте,  спасибо за проделанную работу.  Можно ли сразу задать нейросети задачу делить стратегию по торговым сессиям?
 
77slava #:
Здравствуйте,  спасибо за проделанную работу.  Можно ли сразу задать нейросети задачу делить стратегию по торговым сессиям?

Добрый вечер,
Если хотите настроить четко по времени, можно добавить one-hot вектор идентификации сессии и конкатенировать его  вектором исходных данных.
Второй вариант, добавить к исходным данным тайм-эмбединг. Его можно настроить с желаемой периодичностью. Для торговых сессий подойдет период в сутки. Для сезонности, можно настроить на год.

Причина обращения: