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

 
Maxim Dmitrievsky #:
Это сведение к общему виду, которое ничего не гарантирует. Для этого там добавлены настройки, сколько и чего исправлять.

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

Поэтому и думаю, что если сразу проверить, то это сократит время на весь этот цикл.

 

Придумываю стратегии, чисто из наблюдений за рынком - для разметки и обучения.

Стратегии простые - в основном пару параметров значимых.

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

 
Aleksey Vyazmikin #:

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

Поэтому и думаю, что если сразу проверить, то это сократит время на весь этот цикл.

No

Совсем другой принцип, совсем другие цели.
Целое больше, чем сумма его частей. Не надо вырывать из контекста. Так вы не увидите слона.
 
Maxim Dmitrievsky #:

No

Совсем другой принцип, совсем другие цели.
Целое больше, чем сумма его частей. Не надо вырывать из контекста. Так вы не увидите слона.

Значит мы видим суть по разному. Ладно.

 
Aleksey Vyazmikin #:

Значит мы видим суть по разному. Ладно.

Суть изначально написана: уменьшить переобученность классификаторов, что как бы автоматически подразумевает улучшение на новых данных. С учётом того, что хоть какие-то закономерности имеются, но из-за переобученности их не видно.

Случайная разметка сделок создаёт много шума и противоречий. Метод избавления от противоречий указан Буддой.
Через настройки можно регулировать и смотреть что получилось.

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

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


 
Maxim Dmitrievsky #:
Суть изначально написана

Эта идея понятна.

Я просто вижу, как в динамике меняются эти вероятностные смещения.

Вот квантовый отрезок на обучении

Он же на валидации (обычно это test у меня)

И он же ниже на тесте (exam у меня).

На графиках построен ZZ по балансу ошибок (взвешенный баланс классов - при 50% на 50% мы прибавляем +1 при классе "1" и вычитаем -1 при классе "0") видно, что в динамике каждой выборки есть смещение закономерности, т.е. примеров с классом "0" преимущественно больше - тенденция. Такой квантовый отрезок (или кластер) будет хорош и при обучении.

А вот другой вариант ниже на графиках - три выборки подряд (train, test, exam).


Видно что на train была явная тенденция и класс "1" встречался чаще среднего, но вот на выборке "test" ситуация изменилась, здесь уже появилось напротив смещение в сторону нуля, пусть и не большом на этом примере, но бывает большое, а вот на exam ситуация опять нормализовалась и появился тренд на 2/3 со смещением вероятности, хотя потом опять во флэт ушли.

Может быть и такой случай, что на test и exam будет наблюдаться противоположное смещение вероятности на протяжении всей выборки - т.е. некая закономерность перестала работать.

 
Aleksey Vyazmikin #:

Эта идея понятна.

Я просто вижу, как в динамике меняются эти вероятностные смещения.

Вот квантовый отрезок на обучении

Он же на валидации (обычно это test у меня)

И он же ниже на тесте (exam у меня).

На графиках построен ZZ по балансу ошибок (взвешенный баланс классов - при 50% на 50% мы прибавляем +1 при классе "1" и вычитаем -1 при классе "0") видно, что в динамике каждой выборки есть смещение закономерности, т.е. примеров с классом "0" преимущественно больше - тенденция. Такой квантовый отрезок (или кластер) будет хорош и при обучении.

А вот другой вариант ниже на графиках - три выборки подряд (train, test, exam).


Видно что на train была явная тенденция и класс "1" встречался чаще среднего, но вот на выборке "test" ситуация изменилась, здесь уже появилось напротив смещение в сторону нуля, пусть и не большом на этом примере, но бывает большое, а вот на exam ситуация опять нормализовалась и появился тренд на 2/3 со смещением вероятности, хотя потом опять во флэт ушли.

Может быть и такой случай, что на test и exam будет наблюдаться противоположное смещение вероятности на протяжении всей выборки - т.е. некая закономерность перестала работать.

Я ведь и написал: исправьте метки для всех кластеров, пусть их будет 200. И сравните обучение с ООС. Если все плохо, то с такой выборкой нет смысла работать.
Если все норм, уменьшайте кол-во исправлений, для более гладкой кривой баланса, пока кривая на трейне похожа на кривую на тесте.
 
Maxim Dmitrievsky #:
Я ведь и написал: исправьте метки для всех кластеров, пусть их будет 200. И сравните обучение с ООС. Если все плохо, то с такой выборкой нет смысла работать.
Если все норм, уменьшайте кол-во исправлений, для более гладкой кривой баланса, пока кривая на трейне похожа на кривую на тесте.

В теории, почему модель может работать на новых данных, если вероятности сместятся? У меня замечательные модели получаются, если подсмотреть вероятности стабильные, но если этого не делать, то очень много ложных и плохой результат обучения. Допускаю, что Вы взяли удачные предикторы под общую разметку или короткий интервал, раз у Вас стабильно получаются хорошие модели.

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

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

 
Aleksey Vyazmikin #:

В теории, почему модель может работать на новых данных, если вероятности сместятся? У меня замечательные модели получаются, если подсмотреть вероятности стабильные, но если этого не делать, то очень много ложных и плохой результат обучения. Допускаю, что Вы взяли удачные предикторы под общую разметку или короткий интервал, раз у Вас стабильно получаются хорошие модели.

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

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

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

Я его не знал, а потом забыл.

Пример

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

  • Вероятность прибыльной сделки для кластера 1: P ( A 1 ) = 0.6 
  • Вероятность прибыльной сделки для кластера 2: P ( A 2 ) = 0.5
  • Вероятность прибыльной сделки для кластера 3: P ( A 3 ) = 0.4

Вычисление итоговой вероятности

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

  1. Вероятность того, что ни одно из событий не произойдет:

    P ( ни одно из событий не произойдет ) = ∏ i = 1 n ( 1 − P ( A i ) ) P(ни одно из событий не произойдет)=i=1n(1P(Ai))

    где P ( A i ) P(Ai) — вероятность прибыльной сделки для кластера i i.

    Для нашего примера:

    P ( ни одно из событий не произойдет ) = ( 1 − 0.6 ) × ( 1 − 0.5 ) × ( 1 − 0.4 ) P(ни одно из событий не произойдет)=(10.6)×(10.5)×(10.4) P ( ни одно из событий не произойдет ) = 0.4 × 0.5 × 0.6 = 0.12 P(ни одно из событий не произойдет)=0.4×0.5×0.6=0.12
  2. Вероятность того, что хотя бы одно из событий произойдет:

    P ( хотя бы одно из событий произойдет ) = 1 − P ( ни одно из событий не произойдет ) P(хотя бы одно из событий произойдет)=1P(ни одно из событий не произойдет) P ( хотя бы одно из событий произойдет ) = 1 − 0.12 = 0.88 P(хотя бы одно из событий произойдет)=10.12=0.88

Итог

Итоговая вероятность прибыльной сделки, учитывая вероятности для трех кластеров, составляет 0.88 или 88%.

Объяснение

  • Вероятность того, что ни одно из событий не произойдет, вычисляется как произведение вероятностей противоположных событий (то есть вероятностей того, что сделка не будет прибыльной для каждого кластера).
  • Вероятность того, что хотя бы одно из событий произойдет, вычисляется как дополнение к вероятности того, что ни одно из событий не произойдет.

Этот метод позволяет корректно учесть независимость событий и вычислить итоговую вероятность прибыльной сделки.

MathML Namespace
  • www.w3.org
MathML Namespace
 
З.Ы. мне кажется, что предложенный расчет слишком оптимистичный.
Наверное нужно ещё учитывать вероятность выпадения каждого кластера. Или вообще считать по-другому.