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

 

нужно отказываться от цены в представлении ВР, это самое нелепое представление для МО, в случаи с рынком.  имхо...

но как представлять хз.. 

 
Поддержу беседу, При классификации на предмет истина или лож, важно не как сеть резделила эти понятия, а важно как она стабильно разделяет их в будущем. И само разделение не важно, важно чтобы оно было стабильным. Это из области что стабильно сливающую ТС также сложно сделать как и наливающую. Я например делаю так, чренирую сеть каждый день, в соотвествии с объёмом предыдущего дня и открытого интереса. Потом на протяжении 3-4 сигналов выстраиваю модель так (бывает переворачиваю сигналы на противоположный) так сказать ориентирую её по рынку, и вуаля, сеть делит плохие от хороших стабильно. Вот что самое важное....
 
BlackTomcat:

1)  У Вас есть временной разрыв между этими периодами?

2)  Закономерность выдохлась, её распознали и очень многие начали её эксплуатировать. Из-за этого она превращается в обратную закономерность. 

3) Сейчас как-раз работаю над ТС, использующей графические методы. По-моему, если где и есть пока работающие закономерности, то только здесь.

4) Хотел бы ещё внести кое-какие уточнения к своему предыдущему посту. Там я, вроде как, жестко прошёлся по анализу отдельных баров. Но на самом деле это не так. Анализ отдельных баров имеет право на существование, но эти ключевые бары, обычно, лежат не области вершин.

1) на сколько я помню то нет, картинки не первой свежести, уже не помню..

2) приятно что не я один так думаю 

3) я тоже..., умею даже заходить со стопом в три тика и брать 1к2 , 1к5 в 50% случаев,  но фомализировать матиматически это невозможно, а значит мусор

 4) все нужно уметь искать

 

п

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

 
mytarmailS:

3) я тоже..., умею даже заходить со стопом в три тика и брать 1к2 , 1к5 в 50% случаев,  но фомализировать матиматически это невозможно, а значит мусор

А вот тут я с Вами не соглашусь. :) Я практически уверен, что графические методы можно и нужно формализовывать. Возможно, что из-за определённой сложности и происходит деление на 95% и 5% тех, кому это удалось. Но если и есть путь к успеху на бирже, то он лежит имеено через эту область. Во всяком случае на экране я многое вижу, хотя от ошибок это не избавляет. Однако, всегда есть альтернативный сценарий. И хорошая новость заключается в том, что если всё правильно и ВОВРЕМЯ распознавать, то перестроиться на альтернативный сценарий развития событий не составит большого труда, пусть даже и с некоторыми (небольшими) потерями.
Ещё хочу добавить то, что с какого-то момента я стал очень скептические относиться ко всем математическим (индикаторным) методам. Они подкупают своей простотой реализации, но в этой простоте и кроется их бесполезность. У биржевой торговли давняя (даже можно сказать "древняя") история, и вряд ли в те времена кто-то сидел и высчитывал стохастики и RSI. :) А вот чертить линии на графике - это запросто. И если целые поколения трейдеров на этом воспитывались и обучались, то почему внезапно это должно перестать работать? С появлением вычислительной техники всё усложнилось и ускорилось, теперь трендовые каналы можно углядеть даже в тиковых движениях. Но тот факт, что они до сих пор существуют, как-раз говорит в пользу того, что их и надо использовать.
У графических методов есть ещё один важнейший плюс: они показывают вам ЦЕЛЬ! Они показывают, куда (правильнее сказать -  к чему) стремится цена. Когда вы знаете, где находится цель ценового движения, вопрос о его направлении снимается сам собой.

 
BlackTomcat:
А вот тут я с Вами не соглашусь. :) Я практически уверен, что графические методы можно и нужно формализовывать. Возможно, что из-за определённой сложности и происходит деление на 95% и 5% тех, кому это удалось. Но если и есть путь к успеху на бирже, то он лежит имеено через эту область. Во всяком случае на экране я многое вижу, хотя от ошибок это не избавляет. Однако, всегда есть альтернативный сценарий. И хорошая новость заключается в том, что если всё правильно и ВОВРЕМЯ распознавать, то перестроиться на альтернативный сценарий развития событий не составит большого труда, пусть даже и с некоторыми (небольшими) потерями.
формализовать то оно формализовано, машине объяснить не возможно, я точно не знаю как
 

Не буду делать ссылок,так как несколько постов упускают одну важную деталь.

Значение целевой переменной не может соответствовать по времени значения предикторов, а именно: значение целевой переменной должно быть сдвинуто назад. Если на 1, то это будет предсказание на один шаг вперед, если на 10, то предсказание на десять шагов вперед. 

 

Целевая переменная, учитель, должна заглядывать вперед.

 

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

Смысл такой. Берем развороты, например, машки. От этих разворотов на истории движемся вперед и помечаем рассматриваемый разворот в прошлом, после которых цена изменилась на некоторое число пипсов, например на 100.  Нашли. Берем следующий разворот, ищем изменение на 100 пипсов,  и таким образом формируем учителя. Эта идея очень выпукло демонстрирует сам подход по формированию целевой переменной: целевая переменная должна реализовывать "заглядывание вперед", что вполне реализуемо на исторических данных. Предсказание по модели обеспечивается именно  целевой переменной, а не применением оператора predict .

В этой идее есть еще один важный нюанс. Совершенно очевидно ЧТО мы предсказываем: мы предсказываем будущий рост/падение цены на 100 пипсов.  Это например выгодно отличается от ЗЗ, в котором учитель помечается "1" для колена вверх и "0" для колена вниз. Если вдуматься, то ЧТО предсказываем?

 

Итак требования к целевой переменной:

1. Целевая переменная должна заглядывать вперед 

2. Должно быть четкое понимание ЧТО предсказываем. 

 

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

 

ПС.

По моей просьбе идея проверялась, но не удалось найти предикторы для ее реализации. 

 
Alexey Burnakov:
Отвечаю вам обоим.

Модель ничего не стоит если ее оценку проводить на данных, на которых выбиралась модель. ДАЖЕ если это период данных, на которых модель не обучалась.

Вдумайтесь.

Есть 1) переобучение. Это когда догоняем модель на обучающих данных до состояния почти идеала. На других данных нет обобщающей способностиьи слив.

А есть 2) selection bias (оптимистичный выбор модели). Это когда выбирается лучшая модель или комитет на данных, на которых УЖЕ известно поведение модели. И еще раз - ДАЖЕ если это тестовый отрезок.

Получается такая реалия. Непереобученная модель, выбранная по тестовым блокам кроссвалидации (такая, что на тесте идет в плюс), потенциально подогнана под ТЕСТ. Для уменьшения этого эффекта придумали вложенную крлссвалидацию. Уже выбранную модель (или комитет) нужно еще на других данных проверить.

 То есть - это валидация метода выбора модели.

Еще раз повторю, у меня тоже есть десятки моделей, я также ворошу предикторы и параметры. И эти модели идут в солидный плюс на периоде 8 лет каждая! И это тестовый период. Но когда выбранные по тесту "лучшие" модели проверяются отложенной выборкой, там сюрпризы. И это называется - Модель подгоняется под кроссвалидацию. 

Когда это понятно, продолжается чистый эксперимент. Если это не понятно, увидите на реале многократное падение качества. Что и наблюдается в 99% случаев.

Алексей!

По моим представлениям, Вы переоцениваете важность формальных инструментов типа "кросс-валидации" или "комитетов моделей".

При разработке моделей должен быть критерий оценки, который НИКАК, НИКАКИМ БОКОМ не связан с процессом обучения.

Перечислю эти критерии:

1. Проверка модели на временном интервале ЗА интервалом обучения.

2. Прогон в тестере советника, использующего модель. Причем советник без ММ, самый примитивный. Никаких стопов,  тэйк-профитов и прочая, прочая...

Если на каком-либо пункте получены результаты, сильно отличающиеся от результатов при обучении, то модель ПЕРЕОБУЧЕНА, т.е предикторы не имеют предсказательную способность для целевой переменной. Перечисленные критерии не говорят: что делать, как изменить - эти критерии говорят об одном: МОДЕЛЬ ПЕРЕОБУЧЕНА.

 

ПС.

Для ярых сторонников МКЛ замечу, что без всех тех действий и инструментов, которые обсуждаются на этой ветке, тестер вообще не дает никаких оснований рассуждать о будущем поведении торговой системы. Тестер говорит: "Вот такие результаты для данного временного периода". Все. Тестер дает ровно одну цифру, например, профит фактор, который относится к конкретному историческому периоду. А статистику можно получить только в R.   А тестер - это финальная часть проектирования модели, но не замена всего процесса разработки.

 
mytarmailS:

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

В кодобазе видел индикаторы, которые линиями дивергенции помечают.
 
СанСаныч Фоменко:

Алексей!

1) По моим представлениям, Вы переоцениваете важность формальных инструментов типа "кросс-валидации" или "комитетов моделей".

 

2) Тестер дает ровно одну цифру, например, профит фактор, который относится к конкретному историческому периоду. А статистику можно получить только в R.   А тестер - это финальная часть проектирования модели, но не замена всего процесса разработки.

Ув. СанСаныч,

Про комитеты можно не говорить, это частный случай в процессе выбора модели. Про валидации - нет, не переоцениваю.

2) МТ не дает распределения статистики. 

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