Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 783

 

Как мне запустить Rattle, как в статье https://www.mql5.com/ru/articles/1165?

Инсталяцию провел в консоли R(install.packages("rattle"))

В консоли R есть только "загрузить рабочее пространство" а в статье "Файл/Рабочее пространство;"

Или там делается не на консоли R, а на другой проге?

Случайные леса предсказывают тренды
Случайные леса предсказывают тренды
  • 2014.09.29
  • СанСаныч Фоменко
  • www.mql5.com
Изначально целью построения торговой системы является предсказание поведения некоторого рыночного инструмента, например, валютной пары. Цели предсказания могут быть разными, мы же ограничимся предсказанием трендов, а точнее предсказанием роста («лонгов») или падения («шортов») значений котировки валютной пары. Обычно, для решения проблемы...
 
forexman77:

Как мне запустить Rattle, как в статье https://www.mql5.com/ru/articles/1165?

Инсталяцию провел в консоли R(install.packages("rattle"))

В консоли R есть только "загрузить рабочее пространство" а в статье "Файл/Рабочее пространство;"

Или там делается не на консоли R, а на другой проге?

А все запустил.

library(rattle)
rattle()
 
Vizard_:

Аналогичные резы (в лоб), были и у меня, и у Дока(как я понял), о чем и рассказали.
Получше было, когда попытался придерживался этого и пр. -
https://en.wikipedia.org/wiki/Markov_decision_process
https://en.wikipedia.org/wiki/Partially_observable_Markov_decision_process
Крутил давно, не долго, для интереса...

есть еще какой-то частично наблюдаемый МППР, спасибо, почитаю

у меня на входе здесь 3 RSI и все, думаю что можно улучшить за счет других предикторов немного будет

 
Dr. Trader:

> а можно ли в R, увидеть на всей истории, как сбывался прогноз той же ARIMA, перебрать лучшие периоды для нее

Да, например сохранить историю баров из mt5 в csv файл, импортировать его в R, и там скользящих окном обучаться на каком-то учатске и тестировать на следюущем, и так делать циклично сдвигая это окно тренировки.

Спасибо!

 
Maxim Dmitrievsky:

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

пока у тебя не будет конкретной робастной идеи то не будет ничего.. все что ты делал все эти годы - ничего 

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

закономерности существуют в реальном мире а не в мире пакетиков, поэтому ищи их, и если найдешь то сможешь закодить даже сам

а лучше забей

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

 
Mihail Marchukajtes:

Не поверите, всю жизнь работал исключительно с классификацией и как то резко стало скучно. Мне за ночь пришлось 3 раза всё переделывать, потому как ошибка в расчёте отклонения (htcgtrn elibrarius) потянула там за собой ещё и ещё, но уже сейчас видно что бессонная ночь прошла не зря. И вот сейчас стало как то скучно, а попробовать что то новенькое было бы интересно.

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

 
elibrarius:

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

В том то и дело что работа завершена и вдруг резко стало скучно. Вчера ни одной ошибки и ещё как минимум 3-4 рабочих дня она простоит. Вопрос что делать во время работы ТС на автомате, когда желание поисследовать да и время на это есть?

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

Обновил яву и всё пошло... Ура... Так на чём мы остановились???? Ах да.... регрессия.. Итак, давайте определимся с постановкой задачи и выбора первоначальных настроек ТС.

Попробую провести аналогию из методов классификации, но сначала определимся с условиями.

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

Необходимо произвести прогнозирование изменения цены на 10 баров вперёд. То есть результатом работы модели будет значение выше или ниже нуля (направление изменения), а также степень этого изменения. То есть насколько сильно оно будет...

(Напоминаю, что я лишь задаю тон направления работы, если вы не согласны с предложенным мною условием и у Вас есть ему АЛЬТЕРНАТИВА, активно высказывайтесь. Всё обсуждаемо и поправимо)

Как Вы уже догадались речь пойдёт сейчас о целевой функции для нашей модели. Давайте сначала определим её и зафиксируем. Исходя из выше сказанного делаем следующее.

Close[i]-Close[i+10] сначала посчитаем изменения текущего клоса по отношению к клосу 10 баров назад.

Lead=Close[i-10]-Close[i] теперь сдвинем нашу функцию на 10 баров назад. Данная операция возможно ТОЛЬКО для целевых функций и вв реальной торговле использоватся не может. В итоге что мы имеем покажу на графике.

Зелёный это ченьдж, синий это лид. Лидирующий индикатор заглядывающий в будущее на 10 баров вперёд. Выглядет это вот так:

Имеем окно прогноза между двумя линиями. Посчитать изменение мы можем только на последнем баре этого окна. Тоесть зелёная линия. Но узнать это значение мы должны на первом баре этого окна (просто пример) поэтому мы смещаем график назад в виде синей линии, где уже на первом баре окна просим нашу сеть выдать нам значение которое ещё только будет. Тогда мы сможем воспользоваться этим преимуществом.

Вопросы пожелания изменения по выбору целевой есть?????

В поддержку данного подхода скажу что  давно было проведено куча исследований по целевой для регресии и пришли к выводу что чем проще функция тем лучше. Любое усложнение целевой ни капельки не улучшает показатели модели, а во много и ухудшает. Отталкиваемся от утверждения "Всё гениальное просто". При должной работе модели этой целевой будет предостаточно. Жду отклик и продолжаю...

Естественно что в целевой (синяя линия) будет отсутствовать кончик индикатора от 1 до 10 бара. Именно ИИ и должна его достроить до 0 бара. Это и будет прогноз в будущее.

Причина обращения: