Обсуждение статьи "Применение нечеткой логики в трейдинге средствами MQL4"

 

Опубликована статья Применение нечеткой логики в трейдинге средствами MQL4:

В данной статье предлагаются примеры применения теории нечетких множеств в трейдинге средствами MQL4. Описывается разработка индикатора и советника с использованием библиотеки FuzzyNet для MQL4.

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

Как бы торговал человек, которому как раз присуща нечеткость категорий, различное мнение при схожих сигналах на вход? Он бы пытался оценить тренд, задаваться вопросом: а насколько он средний, или, может быть, он ближе к сильному, или сильный, но не настолько, чтобы входить двойным лотом по стратегии? Все это может описать нечеткая логика. Она не ставит жестких границ между категориями, она их как бы размывает и тем самым делает торговую систему более гибкой, сочетая в себе дисциплину робота и гибкость человеческого мышления. В этой статье предлагаются примеры применения системы нечеткой логики в трейдинге средствами MQL4.


Рис. 6. Описание силы тренда средствами нечеткой логики

Автор: Alexander Fedosov

 

работа проделана огромная, но есть ошибки в советнике,

- утечка памяти,

- вот здесь у вас определение функции:

    bool  ClosePosAll(int magik,int OrdType=-1);

 а вызываете вы зту функцию  так:

 tr.ClosePosAll(OP_BUY);

грамматически все прошло гладко, но у вас нет маджика равного  OP_BUY...

надо так:

      tr.ClosePosAll(magic,OP_SELL);
      tr.ClosePosAll(magic,OP_BUY);

 по плодотворности применения нечетких множеств не могу ничего сказать, надо все это фундаментально изучать...

 

Автору большой респект за проделанную работу... НО! ;-)

Это ведь только половина теории нечеткой логики... Я в свое время застрял на реализации и понимании именно механизма нечеткого вывода... Нечеткий вывод предназначен как раз для создания какого-то результата совмещения двух и более нечетких правил. В итоге у меня работа застопорилась...

Идея была такая:

Сделал связку метатрейдер + база данных на 1С. (1С - потому что очень удобно и быстро можно сконфигурировать базу данных любой сложности и при этом ее видеть и управлять данными)

В метатрейдере скрипт передавал данные в 1С (через файлы) и получал команды на торговлю.

В БД 1С была создана стройная система: Входные данные -> Термы лингвистических переменных -> Лингвистические переменные -> Нечеткие правила -> Нечеткие выводы (это мне не удалось)

Правила, как оказалось, можно создавать любой сложности и направления: не только тренд, но и время в сделке, прирост прибыли/убытка сделки, просадка внутри сделки, анализ любых индикаторов (как ADX у автора) , динамика отдельных стратегий и прочее. Да, система была многовалютной и много системной :) Начинал на евро, потом пробовал подключать еще несколько инструментов для наработки статистики. Но в итоге несколько остыл, т.к. через полгода занятий по вечерам, не увидел продвижения... Сейчас занят похожей системой, но с другими принципами.

Если у кого-то есть какие-то еще наработки: делитесь, тема очень интересна, как мне кажется...

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

 
работа проделана огромная, но есть ошибки в советнике

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

Вопрос к автору - как работает система (прибыль убыток) и перспективы есть или нет? Можно в личку, т.к. здесь бываю не очень часто.
Я писал в данной статье такую мысль, что нечеткая логика сродни человеческому мышлению и его гибкости. Нечеткая, но она все же логика. Верно то, что создавать можно любой сложности, тем не менее, ее можно настроить и определить. В представленных примерах в статье описываются как нечеткие входы, так и выходы. Систему прибыль/убыток можно сделать еще более гибкой, т.е. зависящей от большего числа параметров, в этом и есть потенциал. Можно описать кучу факторов, которые бы в конечном счете влияли бы на размер СЛ и ТП. На что хотел бы обратить внимание, так это более внимательно относится к выбору функций принадлежности, описывающих какой-либо вход или выход, дабы избежать нелогичности.
Причина обращения: