Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 2413
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Проще взять любую связку фича-целевая и фильтровать сигналы по времени до тех пор, пока не будет найден устойчивый сигнал. И собрать из таких моделек бота
Либо я не понял сути, тогда напишите подробней, либо я не понимаю, чем предложенные действия отличаются от добавлении к предиктору_1 дополнительного предиктора_2, содержащего информацию о времени?
Тут подумал, как можно улучшить метод отбора предикторов/признаков/фичей через анализ полученной модели.
Накидал для себя идеи для реализации алгоритма, но решил поделится ими с уважаемым сообществом, может, до начала работы над реализацией этого алгоритма, будет конструктивная критика или добавления/уточнения алгоритма. Интересна мысли о том, что ничего работать не будет с обоснованием.
Отбор предикторов по частоте их использования (Feature importance) при создании модели CatBoost
Идея заключается в том, что у каждого алгоритма есть свои особенности построения деревьев, и мы будем отбирать те предикторы, которые чаще используются алгоритмом конкретным алгоритмом, в данном случае CatBoost.
Однако, для оценки равномерности по шкале времени, будем использовать множество выборок и сводить их данные в единую таблицу. Такой подход позволит отсеять случайные события, оказавшие сильное влияние на выбор предиктора в одной из моделей. Закономерности, на которых построена модель, должны встречаться на протяжении всей выборки, что может способствовать правильной классификации на новых данных. Данная особенность применима к данным, получаемым с рынка, т.е. данным не имеющим завершенности, в том числе со скрытой цикличностью, т.е. не временной, а событийной. При этом желательно штрафовать предикторы, которые в одном из участков не вошли в 30%-50% лучших, что позволит отобрать предикторы, которые наиболее часто оказываются востребованы при создании моделей на разных временных участках.
Так же, для снижения фактора случайности, нужно использовать модели с разным значением Seed, думаю что таких моделей должно быть от 25 до 100. Стоит ли добавлять коэффициент в зависимости от качества полученной модели или просто усреднить все результаты по предикторам - пока не знаю, но думаю, что надо начинать с простого, т.е. просто усреднить.
Важным является вопрос использования таблицы квантования, он может иметь решающую роль при отборе придкторов. Если таблицу не фиксировать, то каждая модель будет создавать свою таблицу для подвыборки, что не даст возможности сопоставлять полученные результаты, поэтому таблица должны быть общей для всех выборок.
Получить таблицу квантования можно:
Квантовать можно самому до подачи в буст - все будет под вашим контролем.
От 0 до0,00005 =0,00005 от 0,00005 до 0,00010 = 0,00010 и т.д
Квантовать можно самому до подачи в буст - все будет под вашим контролем.
От 0 до0,00005 =0,00005 от 0,00005 до 0,00010 = 0,00010 и т.д
В третьем варианте получения таблицы квантования предусмотрена оценка и пользовательских таблиц квантования, которые я предварительно генерирую. Эксперименты показывают, что не всегда это лучший вариант. Кстати, раз пошел разговор о числовых последовательностях, то какие ещё можно использовать шаги кроме линейных, Фибоначчи, экспоненциональных?
В третьем варианте получения таблицы квантования предусмотрена оценка и пользовательских таблиц квантования, которые я предварительно генерирую. Эксперименты показывают, что не всегда это лучший вариант. Кстати, раз пошел разговор о числовых последовательностях, то какие ещё можно использовать шаги кроме линейных, Фибоначчи, экспоненциональных?
Либо я не понял сути, тогда напишите подробней, либо я не понимаю, чем предложенные действия отличаются от добавлении к предиктору_1 дополнительного предиктора_2, содержащего информацию о времени?
Вам 3х мало? И так утроилось число экспериментов)) куда еще?
Конечно мало :) На самом деле у меня происходит подбор оптимальной таблицы для каждого предиктора, и чем больше небор, тем лучше. В последней версии скрипта вообще отбираются лучшие интервалы из всех таблиц и совмещаются в одну таблицу для каждого предиктора.
Есть пока причины не писать подробности, но они когда-нибудь появятся. Части схемы уже описывались тут. Вижу это единственным вменяемым вариантом, не привязанным к шелухе отбора признаков. В идеале признаки могут быть любыми, метки тоже. Задача алгоритма откалиброваться под них, с учетом временной составляющей (фильтрация мест, где эти признаки не работают). Пруфы - мета лейбелинг от Прадо с некоторым тюнингом этого подхода. Вы находитесь совершенно в другой степи, поэтому понимания может и не возникнуть.
Да, про калибровку алгоритма, действительно, ничего не ясно. Даже если отфильтровали места на обучении, то как распознавать места эти при применении - не ясно.
Фанат фильма матрица?
Любителям фреймворков.
https://habr.com/ru/post/559796/
и в пандан рекомендую - пробуйте прикрутить куда фантазии хватит -Постоянные Фейгенбаума.