Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 1012
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Очень интересно, а можно подробнее про измерение предсказательной способности?
И прежде всего чем мерить?
Писал, давал графики, выкладывал код - умельцы все закопали на этих 1000 страниц...
Лень повторять. Здесь более всего используется vtreat, я им не пользуюсь. Главное задумать на эту тему и отбросить все остальное.
Так значит Вы не ставили вопрос о том, какие настройки должны быть у ЗЗ?
Параметр ZZ для каждого инструмента и таймфрейма свой. Например для EURUSD M15 хороший начальное значение 15 пунктов(4 знака). Зависит также от предикторов которые Вы используете. По хорошему нужно оптимизировать совместно параметры предикторов и параметр ZZ. Поэтому желательно иметь непараметрические предикторы, значительно упрощается жизнь. В этом качестве цифровые фильтры показывают хорошие результаты. С использованием ансамблей и каскадного объединения я получил усредненную Accuracy = 0.83. Это очень неплохой результат. Завтра отправлю на проверку статью в которой расписан процесс.
Удачи
Параметр ZZ для каждого инструмента и таймфрейма свой. Например для EURUSD M15 хороший начальное значение 15 пунктов(4 знака). Зависит также от предикторов которые Вы используете. По хорошему нужно оптимизировать совместно параметры предикторов и параметр ZZ. Поэтому желательно иметь непараметрические предикторы, значительно упрощается жизнь. В этом качестве цифровые фильтры показывают хорошие результаты. С использованием ансамблей и каскадного объединения я получил усредненную Accuracy = 0.83. Это очень неплохой результат. Завтра отправлю на проверку статью в которой расписан процесс.
Удачи
Чрезвычайно интересно. Ждем.
Если расшарите ряды бид и аск 2004-по текушую дату попробую, я обычно учу 1-3 года а тестирую на 20-30%
датасет, лерн и тест а также исходные ряды с дукаса
Красивая кривая :) Но вряд ли она кого то заинтригует, не понятно что за софт, как Вы вычисляли эту кривую. На ваших датасетах у меня вышло не многим более 52% точности, кстати у вас там маркеры кончаются раньше фичей, я их обрезал у себя. Нужно добавить ещё разрезанные цены с которых вы получали лерн и тест, чтобы потом прогнать на быктестере результат классификатора.
PS: на самом деле любые тестерные кривые доходности и как оказалось отчеты о качестве классификации\регрессии не могут ничего доказать публике. Не давно в закрытой алготрейдерской группе проскакивала интересная мысль договориться за интерфейс для обмена готовыми моделями запеченными например в С++ dll(которые так или иначе все алготрейдеры и машинлернеры юзаю) которые на вход принимают какойнибуть json прошлое пачку рядов, а потом дополняются по событиям новыми данными(свечами, тиками, таканами и тп.), а выплёвывают прогнозы. Короче суть идеи в том чтобы обмениваться некими стандартнизированными "черными ящиками", которые затем можно проверить когда придет будущее, на тестере, когда будут данные. Только так можно понять работает ли модель или нет, ну можно ещё через веб-апи, но это геморно держать для этого впн и тд. особенно если моделей много. А так все эти цифры accuracy, Sharp ratio и тд. мало что значат, есть 100500 способов не осознанно подогнаться и столько же осознанно и разбираться в этом никто не будет, нужны более весткие доказательства.
Если у вас классификация то можно оценивать через относительную ошибку классификации или логлосс(кросс энтропию), если регрессия то подойдет rmse. Также можно замерять дифференциал ошибок на трейне и тесте и добиваться наименьшей разницы.
Как раз настройки выбраны, чтобы в трайн, валидейшн и тест было примерно одинаковое разделение по предсказанным классам.
Просто к чему все это, лес можно легко переобучить даже неглубокими деревьями, а уж если создаются деревья до чистых листов, то там будет переобучение с большей вероятностью.
И как этого избежать? Ну, тут опять начнется "мусор на входе мусор на выходе". А вообще есть ли они не "мусорные" предикторы вообще в природе.
По идее берется ROC_AUC и по горизонтальной оси значение должно перестать расти, если в предикторе есть, что-то стоящее. Но, перебрав все я не нашел ни одного.
Рисуется строго ровная линия вверх.
Но, зато ни один индикатор так не подгонит рынок по истории, это конечно да)
На счет SVM слишком он долгий, много раз начинал с ним тестировать, но как-то не впечатлило особо, плюс его тормознутось не дают в полной мере исследовать.
Как раз настройки выбраны, чтобы в трайн, валидейшн и тест было примерно одинаковое разделение по предсказанным классам.
Просто к чему все это, лес можно легко переобучить даже неглубокими деревьями, а уж если создаются деревья до чистых листов, то там будет переобучение с большей вероятностью.
И как этого избежать? Ну, тут опять начнется "мусор на входе мусор на выходе". А вообще есть ли они не "мусорные" предикторы вообще в природе.
По идее берется ROC_AUC и по горизонтальной оси значение должно перестать расти, если в предикторе есть, что-то стоящее. Но, перебрав все я не нашел ни одного.
Рисуется строго ровная линия вверх.
Но, зато ни один индикатор так не подгонит рынок по истории, это конечно да)
если на валид. участке ошибка такая же как на трейн то все должно работать. Очевидно что у вас это не так
если на валид. участке ошибка такая же как на трейн то все должно работать. Очевидно что у вас это не так
Ну, не с большой точностью одинаковы, близко. Если совсем идентичны, то это дерево глубиной три, картинку приводил.
Глубина 15 выбрана, которая показала тест более или менее.
Минут через 20 выложу разделение по классам.
Глубина три:
Глубина 15:
Вместе с тем хотя глубина 15 приводит явно к переобучению, но форвард с ним лучше. Также и на других моделях у меня. Когда не сильная переподгонка.
Форварды:
15
3
Получается предсказать метки искомого класса на 4-6% больше, чем негативный..
Красивая кривая :) Но вряд ли она кого то заинтригует, не понятно что за софт, как Вы вычисляли эту кривую. На ваших датасетах у меня вышло не многим более 52% точности, кстати у вас там маркеры кончаются раньше фичей, я их обрезал у себя. Нужно добавить ещё разрезанные цены с которых вы получали лерн и тест, чтобы потом прогнать на быктестере результат классификатора.
PS: на самом деле любые тестерные кривые доходности и как оказалось отчеты о качестве классификации\регрессии не могут ничего доказать публике. Не давно в закрытой алготрейдерской группе проскакивала интересная мысль договориться за интерфейс для обмена готовыми моделями запеченными например в С++ dll(которые так или иначе все алготрейдеры и машинлернеры юзаю) которые на вход принимают какойнибуть json прошлое пачку рядов, а потом дополняются по событиям новыми данными(свечами, тиками, таканами и тп.), а выплёвывают прогнозы. Короче суть идеи в том чтобы обмениваться некими стандартнизированными "черными ящиками", которые затем можно проверить когда придет будущее, на тестере, когда будут данные. Только так можно понять работает ли модель или нет, ну можно ещё через веб-апи, но это геморно держать для этого впн и тд. особенно если моделей много. А так все эти цифры accuracy, Sharp ratio и тд. мало что значат, есть 100500 способов не осознанно подогнаться и столько же осознанно и разбираться в этом никто не будет, нужны более весткие доказательства.
Там вначале тренировочной и тестовой выборок данных убывающие нулевые кортежи фичей, вероятно для их расчета не хватало истории, а алгоритм этого не контролировал, поэтому для корректной работы их тоже нужно удалять.
А где это такая группа, если не секрет, и можно ли туда заглянуть?
Глубина три:
Глубина 15:
Вместе с тем хотя глубина 15 приводит явно к переобучению, но форвард с ним лучше. Также и на других моделях у меня. Когда не сильная переподгонка.
Форварды:
15
3
мне кажется вам кол-во сделок надо уменьшать, походу на каждом баре..