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

 
Andrey Kisselyov:

сколько раз убеждаюсь, и все одно и тоже, языком все всегда быстро делается.
я своим клиентам всегда говорю, не бывает быстрых советников, это кропотливый труд:
1 необходимо формализовать ТС и составить техзадание
2 перевести его в код понятный машине
3 проверить на наличие ошибок в исполнении логики
4 проверить на ошибки исполнения в торговле
5 внести дополнительные изменения согласно выявленных ошибок логики и исполнения
6 протестировать в тестере и на реальных данных
7 дополнить советник функциями которые ему необходимы в работе на реале
и т.д. и т.п.

функция программиста заключается только(2,5) в том, чтобы перевести ваше тз на язык машины и в случае обнаружения вами несоответствия его работы вашему тз, исправить ошибки, на этом работа программиста законченна, ваш советник работает по вашему техзаданию.

все остальное это ваша работа по созданию, проверке и доработки(модернизации) вашего советника.

с уважением.

P.S. на создание нормального прибыльного советника у вас может уйти до полу года, а то и больше, если он вам действительно нужен.


На самом деле нужна просто надёжная открывашка и закрывашка, неужели у Вас на это пол года уйдёт????? Тогда Вы нам не подходите...

 
Vizard_:

В реале будет красны п...)))
Прости, Учитель)))



А вот это спорно... Фокусник. Потому как реально там данные на вход не подаются и по сути это работа самих коэфицентов полинома..... А наличие входных данных думаю только улучшит эквити. Ну это так.... ИМХО!!!!

 
Mihail Marchukajtes:

На самом деле нужна просто надёжная открывашка и закрывашка, неужели у Вас на это пол года уйдёт????? Тогда Вы нам не подходите...

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

с уважением.
 
Vizard_:

Он 14 год уже эту лабуду пишет)))

тогда понятно.

с уважением.
 

Идиоты, всё уже давно сделано, просто нужна надёжная открывашка с обработкой ошибок сервера..... Я уею.... :-)

 
Mihail Marchukajtes:

Идиоты, всё уже давно сделано, просто нужна надёжная открывашка с обработкой ошибок сервера..... Я уею.... :-)

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

с уважением.

P.S. не забудьте указать время исполнения 2 часа, по вашему работы там на 5 минут, так что если программист будет большим пальцем левой ноги писать и то успеет.
 
Dr. Trader:


Если сравнить предсказания в статье и эти, то видно что предсказанные тренды отлично совпадают в обеих моделях, но в статье модель гораздо лучше ловит резкие скачки. А арима - со скачками цены как повезёт, и эти "не повезло" будут вызывать самые большие просадки. Плюс в свойствах модели видно что сезонность не используется. Пока-что статья выигрывает :(

Нужно ещё очень много аримовской интуиции чтобы правильно выставить пределы поиска ar,i,ma коэфициентов, и заставить модель искать сезонные параметры. 


Обсуждать ариму без анализа остатка на ARCH занятие совершенно пустое. Бывают ряды, которые после моделирования аримой имеют стационарный остаток. Но обсуждать ошибку предсказания на предположении, что она стационарна - это не серьезно. Остаток этот чрезвычайно фасонист. 

 

Ещё немного подправил пример с Arima https://www.mql5.com/ru/forum/86386/page467#comment_5649703

Сезонность не работала потому что период данных определялся как 1, и из-за этого auto.arima самовольно отключала сезонность. Поставил в коде период 48 (сутки на тф H12), как в статье.

Ещё можно использовать функцию findfrequency() из пакета forecast чтоб определить период автоматически, для этих данных функция возвращает 24.

Так вышло лучше, модель попадает в резкие скачки значений, и гораздо лучше предсказывает приросты значений.
arima train r^2: 0.516988
arima test r^2: 0.5346457
arima test diff r^2: 0.8407468
arima test diff accuracy: 0.8288288 

Но это далеко не идеал, в статье прогнозы гораздо точнее. Похоже что причина в том что у данных несколько преобладающих периодов (24, 48, 336 - полсуток, сутки, неделя), а арима даже с сезонностью не может попасть в три периода сразу.
Поискал можно ли обучить в R Arima с несколькими сезонностями, похоже что нет, так что качественнее предсказать не получится. Теперь понятно почему в статье такие сложности, каждой моделью автор пытается поймать разные периоды колебаний у значений.

 
Mihail Marchukajtes:

ООО А вот и наш всеми любимый Фокусник!!!! Ну что набрал какашек полные рук???? Вот тебе повод покидатся ими....

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

Ну что м теперь будете говорить про переобучение????

На рынке любой классификатор переобучается, потому что рынок не стационарный. Если хотим что бы не переобучилось то нужно обучить НС за всю историю. Иначе всегда будет так что рыночный цикл изменился и модель испортилась. Поэтому единстыенный грамотный подход это переобучение или дообучение в процессе торговли :) мы же здесь не верим в граали, которые будут давать стабильно по 1000% в мес на истории в 15 лет без вмешательства.

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

 
Dr. Trader:

Ещё немного подправил пример с Arima https://www.mql5.com/ru/forum/86386/page467#comment_5649703

Сезонность не работала потому что период данных определялся как 1, и из-за этого auto.arima самовольно отключала сезонность. Поставил в коде период 48 (сутки на тф H12), как в статье.

Ещё можно использовать функцию findfrequency() из пакета forecast чтоб определить период автоматически, для этих данных функция возвращает 24.

Так вышло лучше, модель попадает в резкие скачки значений, и гораздо лучше предсказывает приросты значений.
arima train r^2: 0.516988
arima test r^2: 0.5346457
arima test diff r^2: 0.8407468
arima test diff accuracy: 0.8288288 

Но это далеко не идеал, в статье прогнозы гораздо точнее. Похоже что причина в том что у данных несколько преобладающих периодов (24, 48, 336 - полсуток, сутки, неделя), а арима даже с сезонностью не может попасть в три периода сразу.
Поискал можно ли обучить в R Arima с несколькими сезонностями, похоже что нет, так что качественнее предсказать не получится. Теперь понятно почему в статье такие сложности, каждой моделью автор пытается поймать разные периоды колебаний у значений.


Не могли бы выложить сам отчет о подгонке с параметрами?

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