Jump to content
Programmer

Рубрика: Искусственный интеллект

Recommended Posts

Programmer

Уважаемые программисты, системщики и просто посетители раздела!

 

Данная ветка будет посвящена инновационным подходам в написании советников. Обсуждение, любые вопросы, предложения и просто конструктивная критика приветствуются.

Это первая рубрика раздела, она создаётся экспериментально. Если ветка будет неинтересна, то она будет закрыта.

 

Ведущий рубрики: БорисMQL4

Share this post


Link to post
Share on other sites
Programmer

От ведущего:

 

«Искусственный интеллект». Тематика данной ветки будет посвящена идеям соображениям и их последующей реализации по поводу создания универсального подхода в написании торговых роботов с применением инновационных способов решения всех сопутствующих задач. К примеру, расчет системы с возрастающим числом параметров всегда был трудоемким и в некоторых случаях даже невозможным... Как же можно решить эту проблему? Решение есть. Надо каждый параметр представить в виде хромосомы, которая в математическом представлении имеет вид реальной химической последовательности.

 

В общем, о создании эффективных алгоритмов вычисления на MQL4, с применением способов генетического алгоритма само оптимизации многочисленных технических параметров и критериев прямо во время выполнения торговых задач без существенного замедления в работе. Распознавания рыночных ситуаций и тенденций по принципу схожести или не схожести с накопленными во время работы представлениями о направлении тренда, о ярко или слабо выраженной тенденции и так далее и тому подобное.

 

С уважением, БорисMQL…

Share this post


Link to post
Share on other sites
10%

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

Share this post


Link to post
Share on other sites
olnikt

У меня такой вопрос. Можно ли на языке mql4 запрограммировать, чтобы советник при наступлении определённого условия производил самооптимизацию параметров и далее работал именно с ними?

 

С уважением,

 

olnikt


Бесплатно автоматизирую торговые системы с подтверждённым положительным результатом торговли от трёх месяцев.

 

С уважением,

 

olnikt, http://mt4programm.ucoz.ru/

Share this post


Link to post
Share on other sites
10%

А я бьюсь над тем как учесть деформацию параметров индикатора в зависимости от степени волатильности рынка! Вот - на сколько надо изменить оптимизированный параметр индикатора, на таком то по волатильности графике, если волатильность цены изменилась?

Share this post


Link to post
Share on other sites
БорисMQL4

Как вы уже поняли, эта ветка создана с целью внесения ясности в понимании такого понятие как Искусственный интеллект.

 

А для начала разберемся, что такое генетический алгоритм.

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

 

Генетические алгоритмы были впервые применены в начале 70-х годов (Голландия, 1975). В основу данного алгоритма легла зависимость, выявленная человечеством в долгой борьбе с природой. Оказалось, что эволюции биологических видов зависит от составных частей хромосом (ДНК).

 

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

 

Есть ответ и на этот вопрос. Во-первых, нам необходима популяция отдельных представителей вида, чтобы можно было отобрать тех, кто произведет на свет следующее поколение. Во вторых, необходим критерий оценки качества жизненного решения, которое будет принимать какой-либо представитель вида. То есть адекватность оценки. Чаще всего это критерий c2 (хи-квадрат - критерий согласия). Другими словами, чем лучше решение, тем выше значение адекватности, возвращенное функцией. Значит, поступок, совершенный индивидуумом привел к сохранению его жизни, а возможно и к улучшению ее качества. В то время, чем ниже значение адекватности решения, тем меньше вероятность того, что оно перейдет в следующее поколение популяции. То есть, как гласит народная мудрость: два раза на одни и те же грабли только "не очень умные" наступают. А популяции "не очень умные" не нужны. Таким образом, используя эту технику, алгоритм может значительно сократить число возможных решений, которые необходимо проверить.


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
10%

А я в тестере отключил "генетический алгоритм". Для первого прогона лучше понятны тогда результаты теста. Мы же не просто ищем сочетание параметров с наибольшим ростом баланса, а некое сочетание интересов, да еще отвечающее торговой идее. Вот когда границы параметров очерчены - после этого пожалуйста - можно.

Share this post


Link to post
Share on other sites
БорисMQL4
У меня такой вопрос. Можно ли на языке mql4 запрограммировать, чтобы советник при наступлении определённого условия производил самооптимизацию параметров и далее работал именно с ними?

 

С уважением,

 

olnikt

 

А вот и одна из моих работ.

Эксперт работает по сигналам пересечений двух MA с некоторыми ограничениями с целью минимизации ложных сигналов. Эксперт в заданный момент запускает само оптимизацию и оптимизирует все свое параметры, такие как периоды MA, стопы и другие. В точке оптимизации выводится горизонтальная линия для наглядности и наилучшие варианты за оптимизацию. Это один из вариантов по само оптимизации который можно организовывать в торговых роботах подобного рода. В нем я использовал переборный метод оптимизации, он наиболее прост по своей сути и тривиален в программировании. Для поиска оптимального решения (Лучших значений Per_ma1, Per_ma2, Shyrina_r, StopLos_Buy, StopLos_Sell) требуется последовательно вычислить наилучшие значения для заданных параметров с целью достижения максимума прибыли за исторический период. Недостатком этого метода является большая вычислительная нагрузка, так как для этих пяти параметров в лучшем случае требуется провести примерно 12 960 000 000, то есть почти 13 миллиардов вычислений. Однако, если перебор всех вариантов за разумное время возможен, то можно быть абсолютно уверенным в том, что найденное решение действительно оптимально. Мне все же пришлось отклониться от простого перебора всех значений, и прибегнуть к последовательной выборке значений с последующим уточнением вычислений. Этого эксперта в ближайшее время я собираюсь все токи доработать, как только будет результат, сразу выложу здесь.

Годится только для тестера, если кому-то он станет, интересен, можете доработать на свой вкус.

Edited by БорисMQL4

Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
БорисMQL4

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


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
БорисMQL4
А я в тестере отключил "генетический алгоритм". Для первого прогона лучше понятны тогда результаты теста. Мы же не просто ищем сочетание параметров с наибольшим ростом баланса, а некое сочетание интересов, да еще отвечающее торговой идее. Вот когда границы параметров очерчены - после этого пожалуйста - можно.

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

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


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
БорисMQL4

А теперь вопрос ко всем кого заинтересовала эта тема. Отвечайте, пожалуйста, по существу вопроса…

 

Можно ли считать корректным следующее определение: "Решение является точным, если никакое дальнейшее повышение точности измерений не меняет полученного результата"?


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
BidAsk
А теперь вопрос ко всем кого заинтересовала эта тема. Отвечайте, пожалуйста, по существу вопроса…

 

Можно ли считать корректным следующее определение: "Решение является точным, если никакое дальнейшее повышение точности измерений не меняет полученного результата"?

нельзя :-)

  • Upvote 1

Share this post


Link to post
Share on other sites
БорисMQL4

А вот и обновленная версия моего торгового робота BAS-Trader_v1.01.

Исправлены все основные ошибки, добавлен еще один параметр Koefficient1, он влияет на объем открываемых позиций, значение может быть от 0,01 до 20, не путайте это не объем, а коэффициент. Чем больше Koefficient1, тем больший риск, но хорошая итоговая прибыль, чем он меньше, тем риски меньше, но и прибыль соответственно значительно меньше. На пример, прогоняем на истории с 2007.08.14 до сегодняшнего дня, на 4 часовом периоде EURUSD с начальным балансом 100$, при Koefficient1=0,01 чистая прибыль составила 1142$, а с Koefficient1=2 чистая прибыль составила уже 74482$, то есть за 14 месяцев баланс увеличился в 700 раз.

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


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites
AstraTrader

БорисMQL4

Не понимаю, как у вас получились такие результаты теста. Я и период ставил такой же и параметры. Но у меня получается так:

post-51254-1404211656,4955_thumb.jpg

Share this post


Link to post
Share on other sites
Eugenio
БорисMQL4

Не понимаю, как у вас получились такие результаты теста. Я и период ставил такой же и параметры. Но у меня получается так:

Все зависит от ДЦ.

Share this post


Link to post
Share on other sites
olnikt
А вот и обновленная версия моего торгового робота BAS-Trader_v1.01.

Исправлены все основные ошибки, добавлен еще один параметр Koefficient1, он влияет на объем открываемых позиций, значение может быть от 0,01 до 20, не путайте это не объем, а коэффициент. Чем больше Koefficient1, тем больший риск, но хорошая итоговая прибыль, чем он меньше, тем риски меньше, но и прибыль соответственно значительно меньше. На пример, прогоняем на истории с 2007.08.14 до сегодняшнего дня, на 4 часовом периоде EURUSD с начальным балансом 100$, при Koefficient1=0,01 чистая прибыль составила 1142$, а с Koefficient1=2 чистая прибыль составила уже 74482$, то есть за 14 месяцев баланс увеличился в 700 раз.

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

За советник, конечно, спасибо, но вот то, что он в ex4... Портит как-то картинку.


Бесплатно автоматизирую торговые системы с подтверждённым положительным результатом торговли от трёх месяцев.

 

С уважением,

 

olnikt, http://mt4programm.ucoz.ru/

Share this post


Link to post
Share on other sites
alex1978
А вот и обновленная версия моего торгового робота BAS-Trader_v1.01.

 

Исправлены все основные ошибки, добавлен еще один параметр Koefficient1, он влияет на объем открываемых позиций, значение может быть от 0,01 до 20, не путайте это не объем, а коэффициент. Чем больше Koefficient1, тем больший риск, но хорошая итоговая прибыль, чем он меньше, тем риски меньше, но и прибыль соответственно значительно меньше. На пример, прогоняем на истории с 2007.08.14 до сегодняшнего дня, на 4 часовом периоде EURUSD с начальным балансом 100$, при Koefficient1=0,01 чистая прибыль составила 1142$, а с Koefficient1=2 чистая прибыль составила уже 74482$, то есть за 14 месяцев баланс увеличился в 700 раз.

 

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

За больший период льёт наглухо

post-36042-1404211656,7192_thumb.jpg

Share this post


Link to post
Share on other sites
Eugenio
За больший период льёт наглухо

Ну, дык)) грааля то нет, нужно оптимизировать его каждую неделю.

Share this post


Link to post
Share on other sites
alex1978
Ну, дык)) грааля то нет, нужно оптимизировать его каждую неделю.

Оптимизировать имеет смысл не сливной советник. Чтобы в процессе оптимизации улучшить общие показатели ПРИБЫЛЬНОГО cоветника, подкорректировать просадку , профит фактор и т.п..в связи с меняющимся рынком.

А если льёт наглухо то никакая оптимизация не спасёт. Нужно в корне менять систему.

Share this post


Link to post
Share on other sites
alex1978

Вот в свободном доступе нашёл, причём исходник.

На котировках Альпари с 2002 года по сейчас..

такой имеет смысл отптимизировать. А сливного "добра" да ещё скомпилированного везде полно.

post-36042-1404211656,924_thumb.gif

Share this post


Link to post
Share on other sites
olnikt
Вот в свободном доступе нашёл, причём исходник.

На котировках Альпари с 2002 года по сейчас..

такой имеет смысл отптимизировать. А сливного "добра" да ещё скомпилированного везде полно.

 

А можно ссылку, плиз?


Бесплатно автоматизирую торговые системы с подтверждённым положительным результатом торговли от трёх месяцев.

 

С уважением,

 

olnikt, http://mt4programm.ucoz.ru/

Share this post


Link to post
Share on other sites
alex1978
А можно ссылку, плиз?

Даже не оптимизировал. Думаю если пооптимизировать, можно намного круче бэктест получить.

Просто в настройках тейки уменьшил, причём " от балды". С 2002 прогнал -по тестам даже в таком виде неплохо.

Вот за последний год тест..

зы:

В свободном доступе иногда встречаются интересные идеи. Но мало-где-то 1 на полсотни.

Я за последний месяц штук 400 протестил, кое-что нашёл интересное. Осталось ещё где-то с тысячи:-P

Дотестирую, буду оптимизировать и смотреть что с этим можно сделать.:-P

tttttt.mq4

StrategyTester2008.zip

post-36042-1404211657,2102_thumb.jpg

Share this post


Link to post
Share on other sites
AstraTrader
Все зависит от ДЦ.

ясно. Ну не думал, что рез-ты могут быть настолько разными.

Share this post


Link to post
Share on other sites
10%

могут могут. вот тест по котировкам одного швейцарского ДЦ в архиве. Посмотри - не пожалеешь. А тож самое в Альпари дает в 100 раз меньше профита.

причина в том что на чем меньшем периоде работает советник и чище график в ДЦ, и чем меньший профит заложен тем разница будет больше.

10.rar

Share this post


Link to post
Share on other sites
БорисMQL4
За больший период льёт наглухо

 

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

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

:no:


Пишу на заказ - советники, индикаторы, скрипты и другое ПО для терминала MetaTrader 4.

mt4soft.ru

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×