Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 2771
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Чего готового нет?
Привязки к графику котировки.
Привязки к графику котировки.
ну торговля то хоть какая велась? или все на уровне тестов в р-ке?
ну торговля то хоть какая велась? или все на уровне тестов в р-ке?
Только R
я в МО далеко не профи, поэтому хотелось бы узнать как можно решить одну задачу.
как известно, для перевода температуры из Фаренгейта в Цельсия используется стандартная формула: C = (F-32)*5/9
градиентный бустинг показывает отличные результаты в выборке in-sample, но за ее пределами ошибка сразу увеличивается.
почему? ведь формула очень простая. что тогда говорить о сложной связи на валютном рынке)
как сделать так, чтобы этот алгоритм показывал хорошие результаты на OOS?
я в МО далеко не профи, поэтому хотелось бы узнать как можно решить одну задачу.
как известно, для перевода температуры из Фаренгейта в Цельсия используется стандартная формула: C = (F-32)*5/9
градиентный бустинг показывает отличные результаты в выборке in-sample, но за ее пределами ошибка сразу увеличивается.
почему? ведь формула очень простая. что тогда говорить о сложной связи на валютном рынке)
как сделать так, чтобы этот алгоритм показывал хорошие результаты на OOS?
Разве не лучший выход - оптимизировать в тестере стратегий количество нейронов, слоёв и видов функций (в первых одни, в последнем - другие) активации? А в качестве изменения весов использовать обратное распространение ошибки?
Решил проверить идею. Однослойная сеть (количество слоёв не умею расширять), функция тангенс (не умею менять) у нейронов, на выходе функции нет (не умею ставить). Обратное распространение ошибки. обучаемый период: год - 2021/08/01—2022/08/01
Оптимизация заключалась в подборе следующих параметров:
- количество входных данных (циклом посылал на вход запрашиваемое количество разниц цен закрытия N0-N1, можно и другое, но руки не дошли) - от 1 до 999 (больше переменная массива не дала сделать), шаг 1.
- количество нейронов - от 1 до 99 999 (не смейтесь), шаг 1.
- количество сетов (Bar++[количество входных данных]) - 9 999, шаг 1. Поскольку обучение производилось на часовом графике, то в году 6500 баров. В итоге почти до полутора года, думаю, нормально.
- коэффициент обучения на выходе : от 0 до 1 с шагом 0.00001.
- коэффициент обучения на входе: от 0 до 1 с шагом 0.00001
- количество эпох - от 1 до 1000, шаг 1.
Так вот, сразу скажу про количество эпох - не получилось что-то изменить, что 1-на эпоха, что 1000, разницы особо не заметил, наверное какие-то ошибки есть.
НО! Интересные наблюдения:
- чем больше количество нейронов, тем больше сделок (почти каждую свечку, если они прогнозируются в разные направления)
- коэффициент обучения на входе в первой 10-ке лучших результатов чаще всего близится к 0.7
- коэффициент обучения на выходе в первой 10-ке лучших результатов чаще всего близится к 0.07
- самые лучшие результаты показывает формула: кол-во входных данных < количество нейронов < количество сетов. Самый лучший результат (насколько хватило терпения ждать) было примерно так: около 200 входных данных, около 300 нейронов и около 400 сетов. Почему лучший результат? Потому что на бэктесте - волнообразный планомерный рост, на форварде 2 месяца - волнообразный планомерный рост и... на периоде перед бэктестом около 2-х месяцев - волнообразный планомерный рост.
Ради интереса 99 999 нейронов - 50 на 50, но, закономерно - самая высокая прибыль - или самая высокая просадка. При этом, кол-во входов делал не больше 100, кол-во сетов - не больше 100. Ждать долго. Но, неизвестно, что показали бы результаты с 1000 входными данными и 1000 сетами, либо 10 000.
я в МО далеко не профи, поэтому хотелось бы узнать как можно решить одну задачу.
как известно, для перевода температуры из Фаренгейта в Цельсия используется стандартная формула: C = (F-32)*5/9
градиентный бустинг показывает отличные результаты в выборке in-sample, но за ее пределами ошибка сразу увеличивается.
почему? ведь формула очень простая. что тогда говорить о сложной связи на валютном рынке)
как сделать так, чтобы этот алгоритм показывал хорошие результаты на OOS?
Только R
Постоянно удивлялся, почему веса подбираются в тестере стратегий? Это же подгонка...
Разве не лучший выход.....
Грусть приходит после этих слов. Не уж то жить с этим.. че делать то
Вроде основные варианты, куда еще смотреть...