Примеры: Используем нейронные сети в MetaTrader

 

New article Используем нейронные сети в MetaTrader has been published:

В статье показано как применять нейронные сети в программах на MQL, используя свободно распространяемую библиотеку FANN. На примере стратегии с использованием индикатора MACD построен эксперт, использующий нейросетевую фильтрацию сделок, которая привела к улучшению характеристик торговой системы.

Author: Mariusz Woloszyn

 

как показала собственная практика - использование дополнительных фильтров только подгоняет результаты под историю...

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

 
dimeon:

как показала собственная практика - использование дополнительных фильтров только подгоняет результаты под историю...

Вам же ясным русским языком написали:


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

 
Прилагаю установщик библиотеки для тех, кто не может скачать ее с официального сайта - http://fann2mql.wordpress.com/download/
 
Огромное спасибо Автору. FANN довольно известная нейросетевая библиотека и то что Автор прикрутил ее к МТ4 и написал об этом статью - есть большая польза .
 

Хотелось бы пояснений относительно формирования входного вектора.

Написано: InputVector[i + 2] = InputVector[i - 2] - InputVector[i - 1];, причем i начинается с нуля, значит пытаемся посмотреть отрицательные идексы массива.

Что предполагалось формировать на входе - сигнальную и основную линию macd плюс их разницу с последующего отсчета?

 
Rosh:
Прилагаю установщик библиотеки для тех, кто не может скачать ее с официального сайта - http://fann2mql.wordpress.com/download/
Большое спасибо, потому что через моего провайдера так и не удается достучаться до официального сайта
 
marketeer:

Хотелось бы пояснений относительно формирования входного вектора.

Написано: InputVector[i + 2] = InputVector[i - 2] - InputVector[i - 1];, причем i начинается с нуля, значит пытаемся посмотреть отрицательные идексы массива.

Что предполагалось формировать на входе - сигнальную и основную линию macd плюс их разницу с последующего отсчета?

Наверное нужно: InputVector[i + 2] = InputVector[i + 1] - InputVector[i];


или еще как?

 
Reshetov:
marketeer:

Хотелось бы пояснений относительно формирования входного вектора.

Написано: InputVector[i + 2] = InputVector[i - 2] - InputVector[i - 1];, причем i начинается с нуля, значит пытаемся посмотреть отрицательные идексы массива.

Что предполагалось формировать на входе - сигнальную и основную линию macd плюс их разницу с последующего отсчета?

Наверное нужно: InputVector[i + 2] = InputVector[i + 1] - InputVector[i];


или еще как?

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

Спасибо автору!


Библиотека оказалась рабочей.


Вот первые результаты:



Первые результаты


Последние 251 сделок - это подгонка под историю. Все остальное слева - OOS.


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


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


Желающие обсудить на форуме могут перейти по ссылке: На радость нейросетевикам, быстрая и бесплатная библиотека для MT4


Там же выложен код переделанного советника.

 

как бы я хотел прочитать простую и крайне понятную - для самых маленьких! )) - статейку о том, что такое нейронная сеть, и как это она так самообучается....

на простых, элементарных примерчиках...

посоветуйте материальчик, только не википедию, лады?..