Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 3606
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
З.Ы. мне кажется, что предложенный расчет слишком оптимистичный.
Так уже лучше.
Если чередование выпадения кластеров подчиняется некоторому вероятностному закону, то для вычисления итоговой вероятности прибыльной сделки необходимо учитывать этот закон. Рассмотрим пример для трех кластеров.
Пример для трех кластеров
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
Также предположим, что вероятности выпадения каждого кластера подчиняются некоторому вероятностному закону. Например, вероятности выпадения кластеров могут быть следующими:
Вычисление итоговой вероятности
Для вычисления итоговой вероятности прибыльной сделки необходимо учитывать вероятности выпадения каждого кластера и их вероятности прибыльной сделки.
Вероятность прибыльной сделки для каждого кластера, учитывая вероятность его выпадения:
P ( прибыльная сделка для кластера 1 ) = P ( кластер 1 ) × P ( A 1 ) = 0.3 × 0.6 = 0.18 P(прибыльная сделка для кластера 1)=P(кластер 1)×P(A1)=0.3×0.6=0.18 P ( прибыльная сделка для кластера 2 ) = P ( кластер 2 ) × P ( A 2 ) = 0.5 × 0.5 = 0.25 P(прибыльная сделка для кластера 2)=P(кластер 2)×P(A2)=0.5×0.5=0.25 P ( прибыльная сделка для кластера 3 ) = P ( кластер 3 ) × P ( A 3 ) = 0.2 × 0.4 = 0.08 P(прибыльная сделка для кластера 3)=P(кластер 3)×P(A3)=0.2×0.4=0.08Итоговая вероятность прибыльной сделки:
P ( прибыльная сделка ) = P ( прибыльная сделка для кластера 1 ) + P ( прибыльная сделка для кластера 2 ) + P ( прибыльная сделка для кластера 3 ) P(прибыльная сделка)=P(прибыльная сделка для кластера 1)+P(прибыльная сделка для кластера 2)+P(прибыльная сделка для кластера 3) P ( прибыльная сделка ) = 0.18 + 0.25 + 0.08 = 0.51 P(прибыльная сделка)=0.18+0.25+0.08=0.51Итог
Итоговая вероятность прибыльной сделки, учитывая вероятности выпадения каждого кластера и их вероятности прибыльной сделки, составляет 0.51 или 51%.
Объяснение
Этот метод позволяет корректно учесть вероятностный закон выпадения кластеров и вычислить итоговую вероятность прибыльной сделки.
Общий вывод:
Комбинирование кластеров может приводить к улучшению общей вероятности прибыльной сделки, но это зависит от конкретных условий и характеристик кластеров. Рассмотрим несколько сценариев, при которых комбинирование кластеров может быть полезным.
Сценарий 1: Независимые события
Если события (прибыльные сделки) в разных кластерах независимы, то комбинирование кластеров может увеличить общую вероятность прибыльной сделки. Это связано с тем, что вероятность того, что хотя бы одно из событий произойдет, увеличивается с увеличением числа независимых событий.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
Вероятность того, что хотя бы одно из событий произойдет:
P ( хотя бы одно из событий произойдет ) = 1 − P ( ни одно из событий не произойдет ) P(хотя бы одно из событий произойдет)=1−P(ни одно из событий не произойдет) P ( ни одно из событий не произойдет ) = ( 1 − 0.6 ) × ( 1 − 0.5 ) × ( 1 − 0.4 ) = 0.4 × 0.5 × 0.6 = 0.12 P(ни одно из событий не произойдет)=(1−0.6)×(1−0.5)×(1−0.4)=0.4×0.5×0.6=0.12 P ( хотя бы одно из событий произойдет ) = 1 − 0.12 = 0.88 P(хотя бы одно из событий произойдет)=1−0.12=0.88Таким образом, комбинирование кластеров увеличивает общую вероятность прибыльной сделки до 0.88 или 88%.
Сценарий 2: Зависимые события
Если события в разных кластерах зависимы, то комбинирование кластеров может не привести к значительному улучшению общей вероятности прибыльной сделки. В этом случае необходимо учитывать условные вероятности и корреляции между событиями.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
Если события зависимы, то для вычисления общей вероятности прибыльной сделки необходимо использовать формулу включений-исключений:
P ( A 1 ∪ A 2 ∪ A 3 ) = P ( A 1 ) + P ( A 2 ) + P ( A 3 ) − P ( A 1 ∩ A 2 ) − P ( A 1 ∩ A 3 ) − P ( A 2 ∩ A 3 ) + P ( A 1 ∩ A 2 ∩ A 3 ) P(A1∪A2∪A3)=P(A1)+P(A2)+P(A3)−P(A1∩A2)−P(A1∩A3)−P(A2∩A3)+P(A1∩A2∩A3)Если условные вероятности и корреляции между событиями неизвестны, то вычисление общей вероятности становится более сложным.
Сценарий 3: Вероятностный закон выпадения кластеров
Если чередование выпадения кластеров подчиняется некоторому вероятностному закону, то комбинирование кластеров может улучшить общую вероятность прибыльной сделки, если вероятности выпадения кластеров и их вероятности прибыльной сделки распределены таким образом, что увеличивают общую вероятность.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
И вероятности выпадения кластеров:
Вероятность прибыльной сделки для каждого кластера, учитывая вероятность его выпадения:
P ( прибыльная сделка для кластера 1 ) = 0.3 × 0.6 = 0.18 P(прибыльная сделка для кластера 1)=0.3×0.6=0.18 P ( прибыльная сделка для кластера 2 ) = 0.5 × 0.5 = 0.25 P(прибыльная сделка для кластера 2)=0.5×0.5=0.25 P ( прибыльная сделка для кластера 3 ) = 0.2 × 0.4 = 0.08 P(прибыльная сделка для кластера 3)=0.2×0.4=0.08Итоговая вероятность прибыльной сделки:
P ( прибыльная сделка ) = 0.18 + 0.25 + 0.08 = 0.51 P(прибыльная сделка)=0.18+0.25+0.08=0.51Таким образом, комбинирование кластеров увеличивает общую вероятность прибыльной сделки до 0.51 или 51%.
Заключение
Комбинирование кластеров может приводить к улучшению общей вероятности прибыльной сделки, если события независимы или если вероятности выпадения кластеров и их вероятности прибыльной сделки распределены таким образом, что увеличивают общую вероятность. В случае зависимых событий необходимо учитывать условные вероятности и корреляции между событиями.
Общий вывод:
Комбинирование кластеров может приводить к улучшению общей вероятности прибыльной сделки, но это зависит от конкретных условий и характеристик кластеров. Рассмотрим несколько сценариев, при которых комбинирование кластеров может быть полезным.
Сценарий 1: Независимые события
Если события (прибыльные сделки) в разных кластерах независимы, то комбинирование кластеров может увеличить общую вероятность прибыльной сделки. Это связано с тем, что вероятность того, что хотя бы одно из событий произойдет, увеличивается с увеличением числа независимых событий.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
Вероятность того, что хотя бы одно из событий произойдет:
P ( хотя бы одно из событий произойдет ) = 1 − P ( ни одно из событий не произойдет ) P(хотя бы одно из событий произойдет)=1−P(ни одно из событий не произойдет) P ( ни одно из событий не произойдет ) = ( 1 − 0.6 ) × ( 1 − 0.5 ) × ( 1 − 0.4 ) = 0.4 × 0.5 × 0.6 = 0.12 P(ни одно из событий не произойдет)=(1−0.6)×(1−0.5)×(1−0.4)=0.4×0.5×0.6=0.12 P ( хотя бы одно из событий произойдет ) = 1 − 0.12 = 0.88 P(хотя бы одно из событий произойдет)=1−0.12=0.88Таким образом, комбинирование кластеров увеличивает общую вероятность прибыльной сделки до 0.88 или 88%.
Сценарий 2: Зависимые события
Если события в разных кластерах зависимы, то комбинирование кластеров может не привести к значительному улучшению общей вероятности прибыльной сделки. В этом случае необходимо учитывать условные вероятности и корреляции между событиями.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
Если события зависимы, то для вычисления общей вероятности прибыльной сделки необходимо использовать формулу включений-исключений:
P ( A 1 ∪ A 2 ∪ A 3 ) = P ( A 1 ) + P ( A 2 ) + P ( A 3 ) − P ( A 1 ∩ A 2 ) − P ( A 1 ∩ A 3 ) − P ( A 2 ∩ A 3 ) + P ( A 1 ∩ A 2 ∩ A 3 ) P(A1∪A2∪A3)=P(A1)+P(A2)+P(A3)−P(A1∩A2)−P(A1∩A3)−P(A2∩A3)+P(A1∩A2∩A3)Если условные вероятности и корреляции между событиями неизвестны, то вычисление общей вероятности становится более сложным.
Сценарий 3: Вероятностный закон выпадения кластеров
Если чередование выпадения кластеров подчиняется некоторому вероятностному закону, то комбинирование кластеров может улучшить общую вероятность прибыльной сделки, если вероятности выпадения кластеров и их вероятности прибыльной сделки распределены таким образом, что увеличивают общую вероятность.
Пример
Предположим, у вас есть три кластера с вероятностями прибыльной сделки:
И вероятности выпадения кластеров:
Вероятность прибыльной сделки для каждого кластера, учитывая вероятность его выпадения:
P ( прибыльная сделка для кластера 1 ) = 0.3 × 0.6 = 0.18 P(прибыльная сделка для кластера 1)=0.3×0.6=0.18 P ( прибыльная сделка для кластера 2 ) = 0.5 × 0.5 = 0.25 P(прибыльная сделка для кластера 2)=0.5×0.5=0.25 P ( прибыльная сделка для кластера 3 ) = 0.2 × 0.4 = 0.08 P(прибыльная сделка для кластера 3)=0.2×0.4=0.08Итоговая вероятность прибыльной сделки:
P ( прибыльная сделка ) = 0.18 + 0.25 + 0.08 = 0.51 P(прибыльная сделка)=0.18+0.25+0.08=0.51Таким образом, комбинирование кластеров увеличивает общую вероятность прибыльной сделки до 0.51 или 51%.
Заключение
Комбинирование кластеров может приводить к улучшению общей вероятности прибыльной сделки, если события независимы или если вероятности выпадения кластеров и их вероятности прибыльной сделки распределены таким образом, что увеличивают общую вероятность. В случае зависимых событий необходимо учитывать условные вероятности и корреляции между событиями.
А что такое "прибыльные сделка"? Это какая вероятность? 0.5, 0.6 ....
Куда делся порог, который и долен формализовать понятие "прибыльная сделка". Причем проблема в том, что вычисленный порог должен остаться "порогом" хотя бы на следующем шаге предсказания.
А что такое "прибыльные сделка"? Это какая вероятность? 0.5, 0.6 ....
Куда делся порог, который и долен формализовать понятие "прибыльная сделка". Причем проблема в том, что вычисленный порог должен остаться "порогом" хотя бы на следующем шаге предсказания.
Попробуем сначала сгруппировать наблюдения по кластерам и определить те кластеры, в которых меньше всего противоречий.
Противоречия - это когда сделки внутри одного и того же кластера имеют разные метки {0;1}, что создает путаницу при обучении финальной модели.
Кластеры, в которых меньше всего противоречий, можно исправить. Присвоив всем наблюдениям внутри кластера одинаковые метки, противоречия снимаются. Метка определяется в соответствии со средним значением меток внутри кластера. Если оно больше 0.5, то все метки будут 1 и наоборот.
Поскольку кластеров много, будут существовать кластеры как на покупку, так и на продажу. Чем больше кластеров, тем сбалансированнее датасет.
Вторая модель будет фильтровать выбранные кластеры (торговать) от тех, которые были отсеяны из-за того, что в них больше всего неопределенности (не торговать).
Потом измерим ошибки обеих моделей и протестируем всю кострукцию на новых данных, с разным количеством кластеров.
В самом конце, постараемся сгруппировать кластеры таким образом, чтобы максимизировать итоговую вероятность прибыльной сделки, по теорверу. И сравним эти вероятности с итоговыми результатами (торговля с учетом ООС). Если будет обнаружена зависимость результата от такой вероятностной оценки, то можно будет делать более осмысленную разметку датасетов.
Переразметка датасета без учета вероятностей тогда будет выглядить так (питон):
Продолжение следует.. :)
Первый тест с рандомными настройками. ООС справа от вертикальной пунктирной линии.
Алго работает, ошибок нет. Дальше будут тесты с разными настройками (наверное уже завтра).
Ошибки обучения для основной и мета моделей:
>>> models[-1][1].get_best_score() {'learn': {'Accuracy': 0.6983374882369451, 'Logloss': 0.5674870408082323}, 'validation': {'Accuracy': 0.6428351309707242, 'Logloss': 0.5995984001032943}} >>> models[-1][2].get_best_score() {'learn': {'Logloss': 0.17194942035963293, 'F1': 0.775644666590935}, 'validation': {'Logloss': 0.17439066040537665, 'F1': 0.7693925848014725}} >>>Немного непонятно, что вторая модель не смогла безошибочно отделить плохие кластеры от хороших, хотя они линейно разделимы.
Ошибка второй оценивается через F1, потому что классы могут оказаться сильно несбалансированными.
Еще пример с другим кол-вом кластеров. Странно, почему у некоторых форумян ничего не получается, ведь это так просто и даже код есть.
Таким образом, переобучение моделей снимается через удаление противоречий в разметке. Признаков здесь вообще не касаемся. А для лучших зафитов нужна другая теория.
Самое вкусное (про вероятности) будет потом. Нужно подготовить тесты.
Еще можно немного тригернуть ... Оно работает сразу, без оптимизируемых параметров/гиперпараметров.
ООС справа от вертикальной пунктирной линии.
К сожалению, чем короче OOS, тем выше вероятность облома.
Ф-я для самостоятельной проверки обломов
Конструктивно.