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

mytarmailS #:
Можно через деревяные модели.. 
Разшыть модель на правила,  проанализировать правила по нужной статистике(повторяемость еще что то..) , посмотреть появляеться ли правило на новых данных..

Пакет "intrees"  5 строчек кода и вперед

Такое уже давно делаю с листьями, но это не совсем то - это не позволяет выявить нетипичные примеры в выборке.

Vladimir Perervenko #:

Пакет NoiseFiltersR. Посмотрите статью. 

Посмотрел статью, как я понял данный пакет не дает существенных результатов - прирост примерно 3%, но и это интересно - можете объяснить принцип его работы?

elibrarius #:
От датасета мы все время разные куски будем брать. Я оптимизирую и датасет (число строк и фичи) и параметры модели.

Забыл, у Вас целевая цвет/тип текущей часовой свечи?

Aleksey Nikolayev #:

Если с шумовыми предикторами всё более-менее понятно, то с шумовыми примерами не очень. Хотелось бы узнать побольше о способах их определения (в смысле теории, а не названий используемых пакетов/функций, хотя конечно в R всегда есть ссылки на статьи). Понятно, что при классификации должен быть класс "не торговать", поскольку стремление всё время быть в рынке считается ошибкой. Но не очень понятно как корректно описать этот класс в более-менее формальном виде.

Три варианта обработки шумовых примеров: удалить, переразметить(исправить разметку) и выделить шумовые примеры в отдельный класс. Из моего опыта около 25% выборки - "шум". Повышение качества около 5%, зависит от моделей и подготовки данных. Применяю иногда.

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

Удачи

Файлы:
Drift1.zip  2238 kb
Aleksey Vyazmikin #:

Забыл, у Вас целевая цвет/тип текущей часовой свечи?

Цвет свечи даже с ошибкой 30% может быть сливным. Мы ж не знаем сколько прибыли получим с нее.. как правило цвет хорошо угадывается в с медленных движениях цены (ночных), а 1 неугаданная сильная дневная свеча может стоить 10 маленьких ночных. Думаю, что угадывать цвет свечей - это опять иметь на выходе рандом (из за случайных размеров).
Поэтому классификацию делал с ТП, СЛ. Если они равны, то 52% успешных сделок уже прибылен. Если ТП=2*СЛ. То >33% успешных будут давать прибыль. Самое лучшее, что у меня получалось это 52-53% успешных сделок при ТП=СЛ за 2 года. Но вообще, я уже думаю на регрессию переходить с нефиксированными ТП/СЛ. Точнее как-то сделать классификацию на регрессии.

Несколько лет не был на форуме, а воз и ныне там. как в песне: "Каким ты был, таким остался, орел степной, казак лихой...".

Статистика начинается с аксиомы, которая будучи аксиомой, не обсуждается:


"Мусор на входе- мусор на выходе".


В принципе не существует и не может существовать математических методов, которые из мусора сделают конфетку. Или имеется набор предикторов ПРЕДСКАЗЫВАЮЩИХ учителя, или у его нет.

А модели практически никакой роли не играют как и разные там кросс-валидации и прочие вычислительно емкие извращения.  


PS.

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

Vladimir Perervenko #:

Есть еще одна проблема при использовании предикторов - их дрейф.

Дрейф это та же нестацынарность как я понял?

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

Vladimir Perervenko #:

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

Согласен, нестационарность (разладка) сильно всё усложняет. К сожалению, устроена она у нас гораздо сложнее чем в примере со спамом. Но учитывать её надо обязательно.

elibrarius #:
Цвет свечи даже с ошибкой 30% может быть сливным. Мы ж не знаем сколько прибыли получим с нее.. как правило цвет хорошо угадывается в с медленных движениях цены (ночных), а 1 неугаданная сильная дневная свеча может стоить 10 маленьких ночных. Думаю, что угадывать цвет свечей - это опять иметь на выходе рандом (из за случайных размеров).
Поэтому классификацию делал с ТП, СЛ. Если они равны, то 52% успешных сделок уже прибылен. Если ТП=2*СЛ. То >33% успешных будут давать прибыль. Самое лучшее, что у меня получалось это 52-53% успешных сделок при ТП=СЛ за 2 года. Но вообще, я уже думаю на регрессию переходить с нефиксированными ТП/СЛ. Точнее как-то сделать классификацию на регрессии.

Ну да, вспомнил, мне такая целевая кажется не совсем эффективной, так как не учитывает волатильность.

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

СанСаныч Фоменко #:

В принципе не существует и не может существовать математических методов, которые из мусора сделают конфетку. Или имеется набор предикторов ПРЕДСКАЗЫВАЮЩИХ учителя, или у его нет.

А модели практически никакой роли не играют как и разные там кросс-валидации и прочие вычислительно емкие извращения.  


PS.

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

Вы глубоко заблуждаетесь - нет идеальных методов построения моделей, способных самостоятельно отобрать "правильные" предикторы. Или такие мне не известны.

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

Вопрос в том, как эффективно отбирать предикторы и контролировать их аномальные изменения при применении модели.