Обсуждение статьи "Нейросети — это просто (Часть 33): Квантильная регрессия в распределенном Q-обучении"

 

Опубликована статья Нейросети — это просто (Часть 33): Квантильная регрессия в распределенном Q-обучении:

Продолжаем изучение распределенного Q-обучение. И сегодня мы посмотрим на данный подход с другой стороны. О возможности использования квантильной регрессии в решение вопрос прогнозирования ценовых движений.

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

Как всегда, обучение модели осуществлялось на исторических данных EURUSD, таймфрейм H1. В качестве обучающей выборки использовались исторические данные за 2 последних года.

Работа обученной модели была проверена в тестере стратегий. Для этого был создан советник "QRDQN-learning-test.mq". Советник также был создан на базе аналогичных советников из предыдущих статей. И его код не претерпел значительных изменений. В с его полным кодом можно ознакомиться во вложении.

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

График тестированиия модели

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



Автор: Dmitriy Gizlyk

 

hi,

thanks for your hard work, appreciate your time and effort. 

had to grab VAE from article #22 when I tried to compile QRDQN. 

but running into this error, 


'MathRandomNormal' - undeclared identifier VAE.mqh 92 8


Im guessing the VAE library in #22 is outdated?



 
Arjang Aghlara #:

hi,

thanks for your hard work, appreciate your time and effort. 

had to grab VAE from article #22 when I tried to compile QRDQN. 

but running into this error, 


'MathRandomNormal' - undeclared identifier VAE.mqh 92 8


Im guessing the VAE library in #22 is outdated?



Hi, you can load updated files from this article https://www.mql5.com/ru/articles/11619

Нейросети — это просто (Часть 31): Эволюционные алгоритмы
Нейросети — это просто (Часть 31): Эволюционные алгоритмы
  • www.mql5.com
В предыдущей статье мы начали изучение безградиентных методов оптимизации. И познакомились с генетическим алгоритмом. Сегодня мы продолжаем начатую тему. И рассмотрим ещё один класс эволюционных алгоритмов.
 
Dmitry Gizlyk # :

Hi, you can load updated files from this article https://www.mql5.com/en/articles/11619

thanks for your reply,

I did that and that error is fixed, but 2 more popped up.

one

'Create' - expression of 'void' type is illegal QRDQN.mqh 85 30


2

''AssignArray' - no one of the overloads can be applied to the function call QRDQN.mqh 149 19

could be one of 3 function(s) QRDQN.mqh 187 19
   bool CBufferFloat::AssignArray(const double&[]) NeuroNet.mqh 4107 22
   bool CArrayFloat::AssignArray(const CArrayFloat*) ArrayFloat.mqh 41 22
   bool CArrayFloat::AssignArray(const float&[]) ArrayFloat.mqh 40 22