Нейросетевые советники (на основе нейронной сети)

ProgerM

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

vlad_123

Местный знаток
Приподниму тему ;)
Ну что - занимается ли еще кто-нибудь нейросетями и советниками на их основе?
Что сейчас есть модного в свободном доступе?
 

Portatus

Активный участник
Присоединяюсь

Приподниму тему ;)
Ну что - занимается ли еще кто-нибудь нейросетями и советниками на их основе?
Что сейчас есть модного в свободном доступе?

Тема интересная, но почему-то заглохла очень быстро
 

Хелогар

Прохожий
может кто подсказать по ПО для создания советников на основе нейронных сетей ?
 

HerrKlausner

Интересующийся
Здрасьте, приехали.
Все нейронные системы гральны только на истории, для неё они и созданы - забудьте про них...
Я не знаток нейросетей, но читая об их видах, применении и результатах, я прихожу к выводам: 1.Не тот тип сетей вероятнее всего используют трейдеры. 2. Не тот способ обучения. 3. Не те данные для обучения. Рынок очень многогранен, если дать сети только OLHC, то будет мало толку. Есть ведь время, объемы, скорость изменения объема, скорость изменения цены. Изменение угла отклонения от оси времени. Очень много входных параметров для обучения, а используется только голый график. Понятное дело получим подгон под историю.
 

HerrKlausner

Интересующийся
В общем и целом, идея постройки нейронки для торговли на форекс такова: 1. Используя классифицирующие нейросети, мы учим сов определять виды свечных паттернов, они так или иначе иногда отрабатываются, так что учитывать их нужно. 2. Тем же способом учим сов реагировать на новости, благо список их известен и данные можно брать с того же форексфактори. Иногда реакция на новости не такая, как ожидается, но чаще всего в зависимости от показателей реакция предсказуема, фактор новостей важен, думаю это неоспоримо, так что его тоже берем в расчет. 3. Опять же с помощью классифицирующих сетей учим сов определять, какая сейчас ситуация - флет, или тренд. 4. Если модуль из прошлого пункта сказал, что тренд, то с помощью отдельного модуля мы определяем какой - вверх, или вниз. 4. На меньших ТФ по сравнению с выбранным основным, ищем фигуры разворота или продолжения движения, опять же с помощью классифицирующих сетей. 5. Отдельный модуль учим определять торговые уровни и их важность, с учетом того насколько давно уровень актуален, присваиваем ему уровень значимости. 6. Еще один модуль учим прогнозировать волатильность, на основании прошлых данных (вероятнее всего рекуррентные сети придутся в самый раз). На основании показаний этого модуля можно использовать какие угодно системы расстановки позиций с динамическими расстояниями и чем угодно еще, опять же динамическим. 7.отдельным пунктом должны стоять 4 модуля, которые должны давать нам Open, Close, Low, High следующего бара и на этом основании давать сигнал buy, или sell. 8. Решения из всех модулей принимающих решения о buy, либо sell подаем центральному модулю принятия решений, который исходя из весов присвоенных подчиненным модулям выдаст единственное решение что сов будет делать.
P.s. Обязательно внедрить автоматическое обучение всей системы при работе, сов должен каждый день-неделю учиться на основании прошлого опыта (выбор интервала обучения зависит от выбранного ТФ и стратегии). Стратегий под такой инструмент анализа можно приспособить великое множество. Но инструмент надо создать, и это ясно, что он будет состоять из внешних библиотек, которые будут выдавать решение и передавать его в МТ по специальному скрипту-переходнику.
P.p.s. Описание методик создания обучающих выборок и прочие подробности займут немало страниц и это уже тема для более узких обсуждений.
Просьба ногами не пинать, с радостью выслушаю конструктивную критику идеи.
 

Bullra

Новичок
В общем и целом, идея постройки нейронки для торговли на форекс такова: 1. Используя классифицирующие нейросети, мы учим сов определять виды свечных паттернов, они так или иначе иногда отрабатываются, так что учитывать их нужно. 2. Тем же способом учим сов реагировать на новости, благо список их известен и данные можно брать с того же форексфактори. Иногда реакция на новости не такая, как ожидается, но чаще всего в зависимости от показателей реакция предсказуема, фактор новостей важен, думаю это неоспоримо, так что его тоже берем в расчет. 3. Опять же с помощью классифицирующих сетей учим сов определять, какая сейчас ситуация - флет, или тренд. 4. Если модуль из прошлого пункта сказал, что тренд, то с помощью отдельного модуля мы определяем какой - вверх, или вниз. 4. На меньших ТФ по сравнению с выбранным основным, ищем фигуры разворота или продолжения движения, опять же с помощью классифицирующих сетей. 5. Отдельный модуль учим определять торговые уровни и их важность, с учетом того насколько давно уровень актуален, присваиваем ему уровень значимости. 6. Еще один модуль учим прогнозировать волатильность, на основании прошлых данных (вероятнее всего рекуррентные сети придутся в самый раз). На основании показаний этого модуля можно использовать какие угодно системы расстановки позиций с динамическими расстояниями и чем угодно еще, опять же динамическим. 7.отдельным пунктом должны стоять 4 модуля, которые должны давать нам Open, Close, Low, High следующего бара и на этом основании давать сигнал buy, или sell. 8. Решения из всех модулей принимающих решения о buy, либо sell подаем центральному модулю принятия решений, который исходя из весов присвоенных подчиненным модулям выдаст единственное решение что сов будет делать.
P.s. Обязательно внедрить автоматическое обучение всей системы при работе, сов должен каждый день-неделю учиться на основании прошлого опыта (выбор интервала обучения зависит от выбранного ТФ и стратегии). Стратегий под такой инструмент анализа можно приспособить великое множество. Но инструмент надо создать, и это ясно, что он будет состоять из внешних библиотек, которые будут выдавать решение и передавать его в МТ по специальному скрипту-переходнику.
P.p.s. Описание методик создания обучающих выборок и прочие подробности займут немало страниц и это уже тема для более узких обсуждений.
Просьба ногами не пинать, с радостью выслушаю конструктивную критику идеи.

C первыми двумя пунктами всё понятно, а дальше... Впринципе можно обучить сову всем паттернам, будь-то гармоничиским или свечным. Даже построение уровней будет непроблемой. Но спрашивается: где взять суперкомпьютер?
 

HerrKlausner

Интересующийся
С применением современных пакетов для работы с нейросетями, работа идет достаточно быстро. Тот же neurosolutions создает сети простенькие сравнительно, для наших прикладных задач их допиливать надо, но учатся они сравнительно быстро. Мощностей хватит, это не такая великая беда. Свечные паттерны и прочее - не беда, самые основные хотя бы. А остальные критерии, как те же новости, парсим с сайта, сравниваем актуальное значение с прогнозным и смотрим реакцию рынка, на этом основании и учим нейронку, про волатильность - еще проше, можно подать значения индюка ATR на вход, да хоть с периодом 1. Все эти задачи реал но решаемы, особенно при наличии алгоритмов переобучения. Да и выборки огромные не нужны. Например для торговли на D1 выборки огромные точно не нужны. Мой небольшой опыт работы с нейросетями говорит о том, что чем меньше шума во входных данных, тем точнее прогноз. Поэтому в силу убогости моего набора инструментов, я торгую на D1 и результаты меня радуют. Правда окончательные решения приходится принимать самому, часть модулей заменять своим умом, некоторых модулей просто нет. Но даже это все равно дает более менее хороший результат по точности предсказаний, что уж говорить о полноценном наборе, который на голову преевосходит все жесткие МТС и немалую часть трепйдеров-ручников. Вопрос лишь в том, кто готов заняться воплощением этой идеи. Ищу единомышленников.
 

HerrKlausner

Интересующийся
Можно для начала написать простенький сов из 4 независимых перцептронов, каждый из которых будет анализировать только один показатель: Open, Close, High, или Low. Показания всех перцептронов будут подаваться центральному модулю принятия решений, который на основе предсказанных значений построит новую свечу, присвоит ей класс (бычья/медвежья), а отдельный модуль, который предсказывает волатильность (Перцептрон, либо реккурент), выдаст данные на основании которых будет рассчитан тейк и стоп, либо шаг сетки, если поставить сетку, ну не суть важно. На основании этих данных сов будет ставить сделку со временем жизни 1 свеча, либо после тралить профит, если он превысил заданные значения, либо можно поначалу без тралов и прочего, просто посмотреть как себя такая модель поведет. И если успешно, то потом улучшать алгоритмами установки ордеров, и/или дополнительными аналитическими модулями.
 

alexejshevchenko

Интересующийся
Можно для начала написать простенький сов из 4 независимых перцептронов, каждый из которых будет анализировать только один показатель: Open, Close, High, или Low. Показания всех перцептронов будут подаваться центральному модулю принятия решений, который на основе предсказанных значений построит новую свечу, присвоит ей класс (бычья/медвежья), а отдельный модуль, который предсказывает волатильность (Перцептрон, либо реккурент), выдаст данные на основании которых будет рассчитан тейк и стоп, либо шаг сетки, если поставить сетку, ну не суть важно. На основании этих данных сов будет ставить сделку со временем жизни 1 свеча, либо после тралить профит, если он превысил заданные значения, либо можно поначалу без тралов и прочего, просто посмотреть как себя такая модель поведет. И если успешно, то потом улучшать алгоритмами установки ордеров, и/или дополнительными аналитическими модулями.

Добрый день!
Я сейчас как раз занимаюсь подобной системой. Только хочу сделать не на свечах, а на различных наборах индикаторов.
Если у Вас есть опыт с обучением, сможете подсказать?
Проблема у меня вот в чём:
Использую библиотеку FANN
взял 4 значения индикатора RSI для 2-х таймфреймов.
Нормализовал значения от -1 до 1
при обучении я открывается позиция на покупку и после закрытия проверяется результат. Если закрылась с прибылью, то для обучения подаём сигнал 1, иначе -1.
После обучения, при проверке сигнала, функция возвращает одно и тоже значение.
При обучении использую FANN_SIGMOID_SYMMETRIC_STEPWISE
 

soblaznkms

Новичок форума
оптимизация на ренко

Используйте ренко график для упрощения нахождения нейро совой закономерностей.
test.PNG

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

andreyDO

Новичок форума
С нейронами сколько не пробовал, получается слишком долго. И не понятно чему там нейроны научились. Чаще плохому, то есть подгонке под историю. Потому что форвардтесты не очень.
Повеселее пошло дело с обучением нечеткого классификатора(fuzzy logic) с помощью нейросети. Только MQL для этих целей совсем не подходит из за производительности. Придется наверное писать на C утилиты для обучения.
 

Вложения

  • fuzzy_test.gif
    fuzzy_test.gif
    17 КБ · Просмотры: 238

Ugar

Гуру форума
Зачем писать, если уже давно написано вагон?
Есть например специальная программа для трейдинга Neuroshell DayTrader. В ней уже есть небольшой набор нейронных индикаторов, но и отдельно к ней написано ещё куча всяких. Есть в составе тестер оптимизатор, то же нейронный. Есть и софт для трансляции истории из МТ4, есть советники для трансляции сигналов в МТ4.
 

Ugar

Гуру форума
Вагон по fuzzy logic?
Да у нас в стране всего несколько человек, понимающих что это такое
В нашей стране это в какой? Не надо забывать что на этом форуме общаются луди из разных стран. В любом случае, не стоит ориентироваться на софт только одной страны.
Я считаю что если трейдер не может обучить нейронную сеть в собственном черепе на извлечение прибыли с биржи, то и программную не сможет. Какого бы типа эта сеть не была.
 

andreyDO

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

andreyDO

Новичок форума
Но даже это все равно дает более менее хороший результат по точности предсказаний, что уж говорить о полноценном наборе, который на голову преевосходит все жесткие МТС и немалую часть трепйдеров-ручников. Вопрос лишь в том, кто готов заняться воплощением этой идеи. Ищу единомышленников.
Я долго мучил перцептроны, но результаты меня не впечатлили. Потом я однажды увидел у одного человека систему прогнозирования на fuzzy logic.
Она прогнозировала результаты спортивных соревнований. Эффективность- более 85%!
Понемногу начал вникать в эту тему. Тут нужно перестраивать свой мозг для понимания. Все мы если чему то учились в плане математики и логики, то на четких моделях.
Любой нечеткий классификатор, выдающий решение, может быть реализован в виде четкого, но потребует на порядки больше ресурсов.
К сожалению у нас в преподавании тема fuzzy logic на зачаточном уровне, если не на нулевом.
Я экспериментировал с прогнозированием на нечетких моделях. Результаты впечатлили. Там где потребовался бы суперкомпьютер, fuzzy выдавало прогнозы выше 80% на обычном компе и быстро.
Удручает отсутствие инструментария и литературы. Из доступного- fuzzy tool box для mathlab.
По литературе на русском- только украинский профессор Штовба.
Плюсы fuzzy в том, что после оптимизации классификатора видно по весам, насколько существенны те или иные входы в твоей модели, в отличие от перцептрона, особенно при скрытых слоях.
 

transcendreamer

Местный знаток
Я долго мучил перцептроны, но результаты меня не впечатлили. Потом я однажды увидел у одного человека систему прогнозирования на fuzzy logic.
Она прогнозировала результаты спортивных соревнований. Эффективность- более 85%!
Понемногу начал вникать в эту тему. Тут нужно перестраивать свой мозг для понимания. Все мы если чему то учились в плане математики и логики, то на четких моделях.
Любой нечеткий классификатор, выдающий решение, может быть реализован в виде четкого, но потребует на порядки больше ресурсов.
К сожалению у нас в преподавании тема fuzzy logic на зачаточном уровне, если не на нулевом.
Я экспериментировал с прогнозированием на нечетких моделях. Результаты впечатлили. Там где потребовался бы суперкомпьютер, fuzzy выдавало прогнозы выше 80% на обычном компе и быстро.
Удручает отсутствие инструментария и литературы. Из доступного- fuzzy tool box для mathlab.
По литературе на русском- только украинский профессор Штовба.
Плюсы fuzzy в том, что после оптимизации классификатора видно по весам, насколько существенны те или иные входы в твоей модели, в отличие от перцептрона, особенно при скрытых слоях.

вот тут есть библиотека по теме
https://www.mql5.com/ru/code/13717
хотя Вы наверняка уже её видели

PS жаль тема тяжелая так быстро не вкурить
идейно мне видится чтото типа fuzzy random forest
но это пилить и пилить
 

extreme911

Интересующийся
вот тут есть библиотека по теме
https://www.mql5.com/ru/code/13717
хотя Вы наверняка уже её видели

PS жаль тема тяжелая так быстро не вкурить
идейно мне видится чтото типа fuzzy random forest
но это пилить и пилить

Есть еще бесплатный зорро - http://www.zorro-trader.com/
И к нему прикручивается R, который кажется понимает Fuzzy Logic
https://cran.r-project.org/web/packages/sets/
 
Верх