Обсуждение статьи "Советник на базе универсального аппроксиматора MLP"

 

Опубликована статья Советник на базе универсального аппроксиматора MLP:

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

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

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

Для этой роли идеально подходит такой тип нейронных сетей, как MLP (multilayer perceptron), что подтверждается теоремой об универсальной аппроксимации. Эта теорема утверждает, что нейронные сети могут приближать любую непрерывную функцию. В нашем случае под "непрерывной функцией" мы понимаем процесс, происходящий в анализируемом временном ряде. В данном подходе нет необходимости прибегать к искусственным и субъективным понятиям, таким как "шум" и "переобучение", которые не имеют количественной оценки.

Рисунок 1. Преобразование одного вида информации в другой

Автор: Andrey Dik

 
Можешь сделать тест на обученном участке истории?
 

Данная статья а так же огромная серия статей про генетические алгоритмы - фикция.

Очень жаль,

Реальные тесты со статьями не совпадают ((

 
Sergey Chalyshev #:
Можешь сделать тест на обученном участке истории?

Привет, Сергей!

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

 
Sergey Chalyshev #:

1. Данная статья а так же огромная серия статей про генетические алгоритмы - фикция.

2. Реальные тесты со статьями не совпадают ((

1. Данная статья про простое использование сети MLP, а не про алгоритмы оптимизации (все из которых ты ошибочно назвал генетическими). В чем фикция? Исходные коды приложены к статье, результаты показал именно те, которые я получил сам.

2. Какие тесты и в каких именно статьях не совпадают с реальными? Хорошо бы приводить здесь примеры таких "несовпадений", чтобы общаться предметно.

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

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

 
Рядом с противоположным сигналом не работает

 

Здравствуйте, Андрей,

Выглядит как отличная статья, которая меня заинтересовала. Однако я в недоумении. Во-первых, включаемые файлы #C_AO и #C_AO_enum не присутствуют ни в одном из zip, которые я смог обнаружить. Неужели я их пропустил? И во-вторых, как я могу проверить ваши результаты, поскольку я не могу найти ни символ, ни таймфрейм, которые вы использовали. Мне кажется, что эти переменные получаются из настройки графика.

 
CapeCoddah #:

Здравствуйте, Cape.

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

Обучал на EURUSD M15, если мне не изменяет память.

 
SYAHRIRICH01 #:
Рядом с противоположным сигналом не работает

Попробуйте на счете типа неттинг. Статья даёт только идею, вы должны адаптировать советник под торговые условия вашего брокера.
 

Привет, Андрей,

Понял, спасибо за быстрый ответ.

CapeCoddah

 
Andrey Dik #:
Попробуйте его на счете типа неттинг. Статья дает только представление, вы должны адаптировать советник к торговым условиям вашего брокера.

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



Вы лучшие.