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

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

Какое точное название? Или самопальная?

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

Что значит самопальная? Есть теоретическое обоснование, хорошая статья. Есть пакет RLTv3.2.6. Неплохо работающий. Вы на версию обратите внимание.

По поводу ONNX для деревянных моделей в Питоне. Смотрим пакет skl2onnx

Поддерживаемые модели scikit-learn. Последний поддерживаемый набор опций — 15.

Удачи   

skl2onnx
  • 2023.05.09
  • pypi.org
Convert scikit-learn models to ONNX
 
А главный самопал и самодур это Брейман, ведь он не в R писал. Тот еще колхозник.
 
mytarmailS #:

Видели такие циферки у себя когда нибудь?

0.99 трейн/тест, при этом модель усечена до пары итераций. Всего несколько правил остается, которые хорошо предсказывают классы.

 
Maxim Dmitrievsky #:

0.99 трейн/тест, при этом модель усечена до пары итераций. Всего несколько правил остается, которые хорошо предсказывают классы.

ТП=10 и СЛ=1000 ?)

 
Forester #:

ТП=10 и СЛ=1000 ?)

нет, это развлечение, если сделок много хочется

еще открывать на каждом баре новые
 
Vladimir Perervenko #:

Что значит самопальная? Есть теоретическое обоснование, хорошая статья. Есть пакет RLTv3.2.6. Неплохо работающий. Вы на версию обратите внимание.


Удачи   

По моим представлениям, Не самопальная, если выполняются изложенные Вами последующие условия с конкретным примером.

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

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

Обсуждать местных "гениев" не имеет смысла.

А вот катбуст.

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

 
Maxim Dmitrievsky #:
А главный самопал и самодур это Брейман, ведь он не в R писал. Тот еще колхозник.

Учите матчасть, т.е. R, чтобы не выглядеть уж совсем невеждой: практические все пакеты в  R НЕ написаны на R. Обычно это С++ или Фортран, а R - это просто доступ. Именно поэтому вычислительно емкие алгоритмы в R работают  не хуже чем C++.

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

Учите матчасть, т.е. R, чтобы не выглядеть уж совсем невеждой: практические все пакеты в  R НЕ написаны на R. Обычно это С++ или Фортран, а R - это просто доступ. Именно поэтому вычислительно емкие алгоритмы в R работают  не хуже чем C++.

Да вы что, первый раз слышу. 

Еще будет просветительская инфа какая-нибудь? )

до катбуста уже докопался.. )))

 
mytarmailS #:

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

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

как пример

цены хай лоу минутки


дальше строим простейшее упрощение цены  (создаем модель)

далее удалаем лишнее(улучшаем модель) с помощью простого извесного алгоритма по уменьшению размерности, модель стала более повторяемой

и последний возможно декоративный штрих


Интересно как будет обучаться на таких данных МО?

это тест выборка 

Видели такие циферки у себя когда нибудь?




Скорее всего переобучена, так как привязана в абсолютным значениям цены.

 

Написал функцию, которая переразмечает метки и делает их более предсказуемыми для ваших признаков, модель становится более устойчивой.

Если есть небольшой датасет, можете скинуть для проверки, и убедиться на ваших данных (или расстроиться).

Для питонщиков:

    c = coreset[coreset.columns[1:-4]] // ваш датасет без меток. Нужно брать только трейн/тест данные, на остальных не делать кластеризацию, иначе подгонка
    kmeans = KMeans(init='k-means++', n_clusters=clusters).fit(c) // кол-во кластеров - гиперпараметр
    coreset['clusters'] = kmeans.predict(c)
    mean_labels = coreset.groupby('clusters')['labels'].apply(lambda x: x.mean()) // считаем среднее по меткам каждого кластера
    coreset['labels'] = coreset.apply(lambda row: 0 if mean_labels[row['clusters']] < 0.5 else 1, axis=1) // если среднее больше 0.5, то для всех элементов кластера ставим метку 1 и наоборот
модель более устойчивой будет, если кластеры оказались репрезентативными. Поэтому методом перебора кол-во кластеров и по каким фичам кластеризовать.
Причина обращения: