Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 2696

 

Ищу компаньонов в интересное и увлекательное путешествие по неведомым тропинкам в поисках таинственных предикторов/фичей/признаков.

У меня есть карта, по которой их можно будет найти, нужны руки для расстановки ловушек и обдумывания повадок и ореола обитания этих удивительных явлений.

Путь предстоит не простой, долгий, но увлекательный, и уверен, без трофеев не останемся!

Если сомневаетесь - задавайте вопросы!

 

шо, опять?!

)

 
Roman #:

Поясните пожалуйста, как работать с функциией потерь
Как задействовать целевую функцию для минимизации?

И второй вопрос.
В матлабе функция fminsearch() использует алгоритм Nelder-Mead.
В  ENUM_LOSS_FUNCTION этого алгоритма нет.
Можно рассчитывать, на добавление этого алгоритма?

Задача обучения нейронной сети заключается в поиске алгоритма, минимизирующего ошибку на обучающей выборке, для чего используется функция потерь (loss function).  Для вычисления отклонения используется метод Loss, который позволяет указать 1 из 14 видов перечисления ENUM_LOSS_FUNCTION. 

Полученные значения отклонений затем используются для уточнений параметров нейронной сети, это делается с помощью метода Derivative,  который вычисляет значения производной активационной функции и записывает в переданный вектор/матрицу.

За счет возможности расширения перечислений мы можем добавлять новые алгоритмы при необходимости.

 
Renat Fatkhullin #:

Задача обучения нейронной сети заключается в поиске алгоритма, минимизирующего ошибку на обучающей выборке, для чего используется функция потерь (loss function).  Для вычисления отклонения используется метод Loss, который позволяет указать 1 из 14 видов перечисления ENUM_LOSS_FUNCTION. 

Полученные значения отклонений затем используются для уточнений параметров нейронной сети, это делается с помощью метода Derivative,  который вычисляет значения производной активационной функции и записывает в переданный вектор/матрицу.

За счет возможности расширения перечислений мы можем добавлять новые алгоритмы при необходимости.


Разобрался на примере MAPE.

Я то думал это функция потерь которая минимизирует целевую функцию.
А это всего лишь расчет метрики.

vector Forecast = {28.252177870295327, 1.386017247821653, 1.321279511381957};
vector Fact     = {45.979999999999997, 1.710000000000000, 1.340000000000000};

double MAPE = Forecast.Loss(Fact,LOSS_MAPE);

Print(DoubleToString(MAPE,2) + " %");
19.63 %


Что то же самое в коде

vector Forecast = {28.252177870295327, 1.386017247821653, 1.321279511381957};
vector Fact     = {45.979999999999997, 1.710000000000000, 1.340000000000000};

vector loss = {0.,0.,0.};

for(int i=0; i<3; i++)
   loss[i] = fabs(Forecast[i] - Fact[i]) / Fact[i];

double MAPE = loss.Mean()*100;

Print(DoubleToString(MAPE,2) + " %");
19.63 %



В таком случае есть вопрос к описанию документации.

Нет ли здесь ошибки в описании?

ll

Может правильней было бы, 
Вычисляет значение потерь, в виде метрики MSE, MAE и т.д..?
Ведь функцию минимизации потерь надо ещё самому написать.


И тут какое-то странное описание.

i

Документация по MQL5: Методы матриц и векторов / Машинное обучение / Loss
Документация по MQL5: Методы матриц и векторов / Машинное обучение / Loss
  • www.mql5.com
Loss - Машинное обучение - Методы матриц и векторов - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Aleksey Vyazmikin #:

Ищу компаньонов в интересное и увлекательное путешествие по неведомым тропинкам в поисках таинственных предикторов/фичей/признаков.

У меня есть карта, по которой их можно будет найти, нужны руки для расстановки ловушек и обдумывания повадок и ореола обитания этих удивительных явлений.

Путь предстоит не простой, долгий, но увлекательный, и уверен, без трофеев не останемся!

Если колитесь - задавайте вопросы!

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

Сейчас нам ещё нейросети в метатрейдере сделают и вообще можно будет расслабиться 

А вообще можно просто покупать фьючерс на газ и потом продать 
 
Maxim Dmitrievsky #:
Так уже все придумано до нас, поэтому хотелось бы просто запрыгнуть в электричку 

Может и придумано, но явно нет на поверхности в открытых источниках.

Для поиска и отбора предикторов я разрабатываю системный подход, т.е. будет типизация предикторов, которые строятся, в том числе на данных индикаторов. Хотелось бы просеять код базу в поисках интересного. Вообще в моей парадигме есть понятие "Событие", это то, что может повлиять на цену, а описывается оно предикторами. Будут разные типы событий, к примеру "цена пробила уровень" (который генерируется индикатором), а описанием этих событий служат предикторы, отвечающие за время, историю события, относительность события (нормирование) - система координат будет так же подбираться.

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

Я ищу людей для ускорения процесса и усиления критического и креативного мышления.

Да, не будет заинтересованных, буду ковырять один - медленно и нудно.

 
Aleksey Vyazmikin #:

Может и придумано, но явно нет на поверхности в открытых источниках.

Для поиска и отбора предикторов я разрабатываю системный подход, т.е. будет типизация предикторов, которые строятся, в том числе на данных индикаторов. Хотелось бы просеять код базу в поисках интересного. Вообще в моей парадигме есть понятие "Событие", это то, что может повлиять на цену, а описывается оно предикторами. Будут разные типы событий, к примеру "цена пробила уровень" (который генерируется индикатором), а описанием этих событий служат предикторы, отвечающие за время, историю события, относительность события (нормирование) - система координат будет так же подбираться.

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

Я ищу людей для ускорения процесса и усиления критического и креативного мышления.

Да, не будет заинтересованных, буду ковырять один - медленно и нудно.

Я уже это все создал
 
Aleksey Vyazmikin #:

Может и придумано, но явно нет на поверхности в открытых источниках.

Для поиска и отбора предикторов я разрабатываю системный подход, т.е. будет типизация предикторов, которые строятся, в том числе на данных индикаторов. Хотелось бы просеять код базу в поисках интересного. Вообще в моей парадигме есть понятие "Событие", это то, что может повлиять на цену, а описывается оно предикторами. Будут разные типы событий, к примеру "цена пробила уровень" (который генерируется индикатором), а описанием этих событий служат предикторы, отвечающие за время, историю события, относительность события (нормирование) - система координат будет так же подбираться.

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

Я ищу людей для ускорения процесса и усиления критического и креативного мышления.

Да, не будет заинтересованных, буду ковырять один - медленно и нудно.

реальное время не забудь добавить...а то получится как у всех :-)

а-ля 2 шт: y=abs(sin(x))*sin(x) ; с частотой 1 день и 1 неделя ; сдвиг фазы лучше рассчитать заранее

потому-что вероятности сработки индикаторов и пересечения линий от них зависят

это было кстати про вредный,ненавистный тут Фурье :-)

 
mytarmailS #:
Я уже это все создал

Какой Вы молодец!

И много нашли интересного и устойчивого?

Решён вопрос с работой решения в терминале?

 
Maxim Kuznetsov #:

реальное время не забудь добавить...а то получится как у всех :-)

а-ля 2 шт: y=abs(sin(x))*sin(x) ; с частотой 1 день и 1 неделя ; сдвиг фазы лучше рассчитать заранее

потому-что вероятности сработки индикаторов и пересечения линий от них зависят

это было кстати про вредный,ненавистный тут Фурье :-)

Ну я не сообразительный, в своих фантазиях... Что значит "реальное время"?

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