Нейро-прогнозирование фин.рядов (на основе одной статьи) - страница 9

 
nikelodeon:


В итоге набрав статистику можно прийти к выводу, что цель тренировки максимальный баланс не всегда хорошо. Но тут возникнет немного другой вопрос, как найти ту самую цель, чтобы НС работала хорошо в будущем.

Попробовал разные варианты своего советника с НС, т.е. по балансу, профитфактору, матожиданию, просадке в валюте депозита и просадке в %. И смотрел на форвардные тесты, как до участка оптимизации, так и после.

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

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

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

 
Reshetov:

Попробовал разные варианты своего советника с НС, т.е. по балансу, профитфактору, матожиданию, просадке в валюте депозита и просадке в %. И смотрел на форвардные тесты, как до участка оптимизации, так и после.

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

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

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

подгонка весов нейросети требует триллионы вариантов, а га может выдать только 10-18 тыс.

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

 
Reshetov:

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

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

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

А количество сделок контролируется? НС штука гибкая, если ей просто поставить минимальную просадку в качестве целевой функции обучения, НС запросто может найти и вариант с нулевой просадкой. Если архитектура и математика конкретной НС позволяет, НС просто подберет веса так что будет мало (статистически незначимое количество) сделок, зато совсем без просадки... Может именно поэтому на других входах и сетях не работает?

Я часто использую похожий вариант: критерий = макс. баланс - просадка, но с обязательным контролем минимума кол-ва сделок. Т.е. я считаю что НС должна делать не менее 100 сделок в год, и если она покажет супер результат но с 99 сделок - результат выбрасывается автоматически...

 
mersi:

подгонка весов нейросети требует триллионы вариантов, а га может выдать только 10-18 тыс.

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


А Вы используете ГА тестера для обучения НС? Как у Вас получилось и что же это за НС такие? Сколько "весов" вы сможете "подогнать" с помощью такого подхода?
 
Figar0:

А Вы используете ГА тестера для обучения НС? Как у Вас получилось и что же это за НС такие? Сколько "весов" вы сможете "подогнать" с помощью такого подхода?

Пока Юрий отвечает, скажу как было у меня.

Всего 21 вес. Переменные принимают значения от -1 до 1. Шаг оптимизации переменных я сделал 0.05.

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

То есть, это был предел для оптимизатора, что то типа 9999999999999999999.

Моя тема: https://www.mql5.com/ru/forum/126476

 
Figar0:

А Вы используете ГА тестера для обучения НС? Как у Вас получилось и что же это за НС такие? Сколько "весов" вы сможете "подогнать" с помощью такого подхода?

20 синапсов.

8 входов

скрытые слои 4 + 3

1 выход

все нейроны с Fa - гиперболический тангенс

===========

Таких сетей три. Выходы всех трех образуют комитет.

сначала обучается сеть первая. выходы двух остальных нулевые

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

затем подключается третья сеть к двум уже работающим и подгоняются веса как и в предыдущем случае

 
Figar0:

А количество сделок контролируется? НС штука гибкая, если ей просто поставить минимальную просадку в качестве целевой функции обучения, НС запросто может найти и вариант с нулевой просадкой.

В тестере метатрейдера не получится нулевая просадка, т.к. он считает по эквити, а не балансу. Т.е. даже если все сделки в подгонке будут профитные, все равно просадка будет не нулевая, т.к. у свечей есть тени.

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

 
mersi:

подгонка весов нейросети требует триллионы вариантов, а га может выдать только 10-18 тыс.

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

Вы неправильно подбираете архитектуру нейросети. На самом деле сетка должна быть такой, чтобы незначительное изменение в настройках (весов и порогов) давало тот же самый результат на выходах. Если архитектура сетки перенаворочена, то ей требуется сверхювелирная настройка, а результатом таких наворотов будет переобучение (подгонка).

Например, у меня архитектура такая, что 10 тысяч проходов ГА для нее уже с избытком, т.е. после оптимизации появляются одинаковые результаты (по балансу, профит фактору, матожиданию и просадке) с немного различающимися настройками. Это позволяет сетке выдавать правильные результаты в более широком диапазоне настроек - она более толстокожая.

 

Пояснения к предыдущему посту.

предположим, вам удалось обучить сеть и она хорошо различает паттерны 3 и 6.

цель второй и третей сетей (в моем случае) - не допускать срабатывание советника при встрече с паттернами з и б, которые первая сеть приняла за 3 и 6.

 
Reshetov:

Вы неправильно подбираете архитектуру нейросети. На самом деле сетка должна быть такой, чтобы незначительное изменение в настройках (весов и порогов) давало тот же самый результат на выходах. Если архитектура сетки перенаворочена, то ей требуется сверхювелирная настройка, а результатом таких наворотов будет переобучение (подгонка).

Например, у меня архитектура такая, что 10 тысяч проходов ГА для нее уже с избытком, т.е. после оптимизации появляются одинаковые результаты (по балансу, профит фактору, матожиданию и просадке) с немного различающимися настройками. Это позволяет сетке выдавать правильные результаты в более широком диапазоне настроек - она более толстокожая.

Все исследователи нейросетей с этим утверждением не согласны.

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

поэтом большинство склоняется к сетям с 2-3 скрытыми слоями.