квест какой то, а не статья
1.
в тексте статьи или в исходниках нет описания константы 10 000 (1 и 4 нуля) , поиском по статье используется 51 раз
было подозрение, что это количество знаков для EURUSD , но тогда почему тут 100 000 (1 и 5 нулей):
inB[15]=(iOpen(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i)))-iLow(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i))))*100000; inB[16]=(iHigh(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i)))-iOpen(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i))))*100000; inB[17]=(iHigh(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i)))-iLow(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i))))*10000; inB[18]=(iHigh(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i)))-iOpen(NULL,PERIOD_H1,i+1))*10000; inB[19]=(iOpen(NULL,PERIOD_H1,i+1)-iLow(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_H1,i))))*10000;
откуда цифры 10000 и 100000? что они означают?
2. эксперт PythonTestExpert
этот код вообще загадка:
void OnTick() { MqlDateTime stm; TimeToStruct(TimeCurrent(),stm); for(int i=0; i<=14; i++) { in[i]=in[i+5]; }
подозреваю, что сдвигаем массив каждый тик, а начальные значения массива откуда берем? ... ниже вообще загадка заполняем этот массив с 15-го элемента до конца массива
3.
почему код индикаторов DibMin1-1.mq5 и DibMax1-1.mq5 одинаковый на 99% разнесен в 2 индикатора, а не выполнен в одном индикаторе с 2-мя линиями (буферами)?
4. по Python тоже вопросы, сначала ни одного комментария к скрипту Python , ни цели написания скрипта, но в конце статьи внезапно появилось описани0е, что же делал скрипт, а то, что мы уже использовали данные этого скрипта при оптимизации эксперта... ну возвращайся читатель и ищи где же были данные этого скрипта, может быть это:
?
Я бы не писал, что мне статья не понравилась ( или статья абсурдна ?), но название статьи "Практическое применение нейросетей в трейдинге. Python" очень громкое, и жаль, что теперь поисковики будут выводить эту статью в первых результатах поиска
квест какой то, а не статья
1.
в тексте статьи или в исходниках нет описания константы 10 000 (1 и 4 нуля) , поиском по статье используется 51 раз
было подозрение, что это количество знаков для EURUSD , но тогда почему тут 100 000 (1 и 5 нулей):
откуда цифры 10000 и 100000? что они означают?
2. эксперт PythonTestExpert
этот код вообще загадка:
подозреваю, что сдвигаем массив каждый тик, а начальные значения массива откуда берем? ... ниже вообще загадка заполняем этот массив с 15-го элемента до конца массива
3.
почему код индикаторов DibMin1-1.mq5 и DibMax1-1.mq5 одинаковый на 99% разнесен в 2 индикатора, а не выполнен в одном индикаторе с 2-мя линиями (буферами)?
4. по Python тоже вопросы, сначала ни одного комментария к скрипту Python , ни цели написания скрипта, но в конце статьи внезапно появилось описани0е, что же делал скрипт, а то, что мы уже использовали данные этого скрипта при оптимизации эксперта... ну возвращайся читатель и ищи где же были данные этого скрипта, может быть это:
?
Я бы не писал, что мне статья не понравилась ( или статья абсурдна ?), но название статьи "Практическое применение нейросетей в трейдинге. Python" очень громкое, и жаль, что теперь поисковики будут выводить эту статью в первых результатах поиска
Спасибо за хорошие вопросы!!!
1. 10 000 или 100 000? " * " или " / " ? и т. д. Мы формируем входные данные для НС. (Нейронной сети которая находится в моей черепной коробке визуально понравились те данные, которые были выведены в файл. Может быть они так же понравятся нейронной сети, которая находится в другой коробке. Шутка.) С НС надо экспериментировать, как с гиперпараметрами самой нейросети, архитектурой - так и входными данными. Здесь скорее всего не "дважды два - четыре", а "дважды два -?"
2. По вопросу PythonTestExpert . Я упустил, тот момент, что необходимо было пояснить - эксперт мы запускаем в тестере стратегий на H1 по ценам открытия. И сдвиг кластера индикаторов производится на каждом баре. В другом случае, я использую сдвиг индикаторов на 00 часов - раз в сутки. Здесь тоже необходимо экспериментировать.
3. Два индикатора - чисто для удобства и это частный случай. Зачастую стратегии строятся на торгах в каком либо одном направлении. И, поэтому, для выборки данных удобнее пользоваться одной линией индикатора, которая показывает либо максимальный экстремум дня, либо минимальный. Здесь тоже экспериментировать со сдвигом - "вперед-назад".
4. По скрипту Python - да может я, хотел слишком упростить... Но перед собой я ставил в данной статье цель - показать простоту практического применения нейронных сетей с помощью интеграции Python. На данной стадии - получение входных данных, обучение и тестирование. " Нажми на кнопку и получи результат". Не знаю, раскрыта ли эта тема в таком виде? Не мною. Другими. Но я хотел этим поделиться...
5. И в качестве шутки по вопросу абсурда - не абсурд ли смотреть в ящик на набор формул, которые обозвали техническими индикаторами и пытаться заработать денег!!!))).
5. И в качестве шутки по вопросу абсурда - не абсурд ли смотреть в ящик на набор формул, которые обозвали техническими индикаторами и пытаться заработать денег!!!))).
абсурдна статья по причине того, что невозможно вот сесть и прочитать материал, нет ни последовательного изложения, нет описания методики, нет цели исследования - я не веду речь от простого к сложному, нет просто логики в следовании излагаемого материала
вот это
В процессе работы над статьей решил также привести пример другого подхода к обучающим целям НС. Для этого внесем некоторые изменения в скрипт PythonIndicators.
это признак, того, что материал статьи подготовлен абы как, хотите исследовать дополнительные возможности приведенной методики - опишите новые цели, опишите, что будем использовать из готового кода
а в таком изложении это выглядит как, а не попробовать нам методом "научного тыка" покрутить еще что-нибудь - "я крутил и точно знаю, что получим:"
Здесь логика такова, что мы обучаем НС на достигнутых целях, а не на событиях, которые должны только произойти. Что, согласитесь, логичнее. Ведь оценивать прошедшие события легче, чем давать прогнозы.
В результате получим вот такой индикатор.
про
Вот некоторые результаты оптимизации.
вообще не хочу комментировать - набор вырезок из Paint-а ? почему на скринах разные даты, разные размеры? где значения-параметров оптимизации?
что это? - это гугл "поиск по картинке" ? это выглядит у Вас так:
абсурдна статья по причине того, что невозможно вот сесть и прочитать материал, нет ни последовательного изложения, нет описания методики, нет цели исследования - я не веду речь от простого к сложному, нет просто логики в следовании излагаемого материала
вот это
В процессе работы над статьей решил также привести пример другого подхода к обучающим целям НС. Для этого внесем некоторые изменения в скрипт PythonIndicators.
это признак, того, что материал статьи подготовлен абы как, хотите исследовать дополнительные возможности приведенной методики - опишите новые цели, опишите, что будем использовать из готового кода
а в таком изложении это выглядит как, а не попробовать нам методом "научного тыка" покрутить еще что-нибудь - "я крутил и точно знаю, что получим:"
про
вообще не хочу комментировать - набор вырезок из Paint-а ? почему на скринах разные даты, разные размеры? где значения-параметров оптимизации?
что это? - это гугл "поиск по картинке" ? это выглядит у Вас так:
В принципе я со всем согласен - доработаю статью с учетом замечаний. Спасибо...
В принципе я со всем согласен - доработаю статью с учетом замечаний. Спасибо...
отлично!
материал востребован, по крайней мере меня очень интересует это направление
ЗЫ: да вот еще к предыдущему моему сообщению - все результаты исследований в статье должны иметь эффект воспроизводимости, мало того, что это подтверждает достоверность статьи, так и к Вам отпадут вопросы, откуда Вы это взяли ( Ваши скриншоты оптимизации), ну и скорее всего это будет полезно в качестве обучающего материала
с ув.
установили пакет MT5, но ни разу его не использовали. Можно убрать все индикаторы и торговать из питоновской программы, для лаконичности
Да, мы индикаторы использовали для обучения НС в питоновской программе. А другая питоновская программа будет потом торговать используя, обученные НС...
4. По скрипту Python - да может я, хотел слишком упростить... Но перед собой я ставил в данной статье цель - показать простоту практического применения нейронных сетей с помощью интеграции Python. На данной стадии - получение входных данных, обучение и тестирование. " Нажми на кнопку и получи результат". Не знаю, раскрыта ли эта тема в таком виде? Не мною. Другими. Но я хотел этим поделиться...
5. И в качестве шутки по вопросу абсурда - не абсурд ли смотреть в ящик на набор формул, которые обозвали техническими индикаторами и пытаться заработать денег!!!))).
"показать простоту практического применения нейронных сетей с помощью интеграции Python" Вам не удалось. Ту процедуру которую Вы предлагаете нельзя назвать простой. А интеграции так вообще нет.
"получение входных данных, обучение и тестирование" - это все можно и нужно выполнять в Python. пакет MetaTrader5 для этого собственно и написан.
Без оптимизации гиперпараметров нейросети и качественной подготовки входных данных ни о каком серьезном результате говорить не приходится. В Python есть все для выполнения этих архиважных и не простых этапов. В вашей статье этого нет.
" Нажми на кнопку и получи результат" - это не о Вашем подходе. В машинном обучении развивается целое направление - автоматизация машинного обучения. Там да, собрал данные, передал программе и она сама определит способы и методы препроцессинга, подберет модель или модели, которые для этих данных позволяют получить наилучшие результаты, оптимизирует гиперпараметры и выдаст готовый результат для использования.
В статье показана неверная последовательность этапов создания и использования нейросети - это главный недостаток по моему мнению. То, что не используется интеграция в полном объеме - печально, но не смертельно. А с названием статьи конечно нужно быть скромней.
Удачи
"показать простоту практического применения нейронных сетей с помощью интеграции Python" Вам не удалось. Ту процедуру которую Вы предлагаете нельзя назвать простой. А интеграции так вообще нет.
"получение входных данных, обучение и тестирование" - это все можно и нужно выполнять в Python. пакет MetaTrader5 для этого собственно и написан.
Без оптимизации гиперпараметров нейросети и качественной подготовки входных данных ни о каком серьезном результате говорить не приходится. В Python есть все для выполнения этих архиважных и не простых этапов. В вашей статье этого нет.
" Нажми на кнопку и получи результат" - это не о Вашем подходе. В машинном обучении развивается целое направление - автоматизация машинного обучения. Там да, собрал данные, передал программе и она сама определит способы и методы препроцессинга, подберет модель или модели, которые для этих данных позволяют получить наилучшие результаты, оптимизирует гиперпараметры и выдаст готовый результат для использования.
В статье показана неверная последовательность этапов создания и использования нейросети - это главный недостаток по моему мнению. То, что не используется интеграция в полном объеме - печально, но не смертельно. А с названием статьи конечно нужно быть скромней.
Удачи
Если вы посмотрели ролик в конце статьи, то обратили внимание, что весь процесс получения данных, обучения НС(на тех гиперпараметрах) и построение результирующего индикатора занимает по времени до 2х минут. Не сложно и доступно для любого трейдера, а не только для "избранных".
По вопросу интеграции... Весь творческий процесс происходит на этапах описанных в данной статье, особенно на получении входных данных и выборках этих данных. Лично я использую для этого собственные индикаторы. И сейчас вас немного напрягу))) - на данном этапе развития нейронных сетей гиперпараметры для анализа чистого временного ряда особого значения не имеют. В основном НС сейчас "заточены" под робототехнику(в широком понимании). Для классификации. То есть они работают отлично на законченных образах. Но если мы обучим НС на кошечках и собачках, а покажем ей только ухо - то, утрированно, можем получить ответ, что это пионер в пилотке. А, в нашем деле законченные образы есть только в прошлом, а в настоящем их нет... Поэтому так важен данный этап подготовки к обучению НС. А интеграция... - это уже чисто технический процесс. Python его значительно упрощает и переводит в плоскость практического применения в трейдинге.
После запуска двух Скриптов - PythonIndicators .mq5 , PythonPrices.mq5 создаются пустые .csv файлы - в чем может быть причина?
Спасибо

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Практическое применение нейросетей в трейдинге. Python (Часть I):
В данной статье мы поэтапно разберем вариант реализации торговой системы на основе программирования глубоких нейронных сетей на Python. Для этого мы используем библиотеку машинного обучения TensorFlow, разработанной компанией Google. А для описания нейронных сетей используем библиотеку Keras.
Остановимся на нескольких моментах подготовки к обучению нейронных сетей.
Автор: Andrey Dibrov