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

 
Farkhat Guzairov:

Т.е. Вы уже что применяете из того, что тут озвучивали (не все читал, так как это просто не реально 1200 стр). Можете дать ссылку где это используется вами, у вас 100500 сигналов, наверное какой то из них и есть тот самый.

Я использую CatBoost и "волшебное" дерево от Дока, там у меня своя методология. В настоящий момент только тестирование происходит на реальном счете, которое выявило ряд проблем с предикторами, в результате чего я вынужден буду обучаться с нуля, по дереву - это примерно потеряно пол года. Кэтбуст печет модели достаточно быстро, там все уже практически автоматизировано от создания модели, отбора, до применения модели в торговле. С кэтбустом мне очень сильно помогли, особенно с интерпретатором моделей на MQL. Если новых багов не будет выявлено, то до весны планирую нагрузить реальными деньгами модели - модели буду применять пачками, на каждую модель по 1 лоту, будет два счета - на покупку и продажу.

 
Aleksey Vyazmikin:

Я использую CatBoost и "волшебное" дерево от Дока, там у меня своя методология. В настоящий момент только тестирование происходит на реальном счете, которое выявило ряд проблем с предикторами, в результате чего я вынужден буду обучаться с нуля, по дереву - это примерно потеряно пол года. Кэтбуст печет модели достаточно быстро, там все уже практически автоматизировано от создания модели, отбора, до применения модели в торговле. С кэтбустом мне очень сильно помогли, особенно с интерпретатором моделей на MQL. Если новых багов не будет выявлено, то до весны планирую нагрузить реальными деньгами модели - модели буду применять пачками, на каждую модель по 1 лоту, будет два счета - на покупку и продажу.

Что за "волшебное" дерево от Дока? Где посмотреть подробности?
 
elibrarius:
Что за "волшебное" дерево от Дока? Где посмотреть подробности?

Там скрипт на R с генетическим алгоритмом по созданию дерева, отбираются поколения по улучшению энтропии. Потом идет какой то финальный отбор. Я забираю все деревья для финального отбора и вытаскиваю из них листья для отдельных дальнейших измерений в MT5. Скрипт публично не выкладывался, поэтому и подробных описаний нет. Видимо это как из леса выбирать лучшее дерево, но тут есть ограничение по глубине для избегания переобучения, ну и процесс занимает на всех ядрах примерно 2 дня на последней выборке, где не все бары, а только сигналы на вход, а если все бары за 3 года, то там расчет идет 1,5 месяца. После окончания расчета я делаю расщепление дерева, т.е. убираю столбец с корневым предиктором лучшего дерева популяции и запускаю все по новой, оказалось что и на 40 такой процедуре бывают создаются очень хорошие листья, таким образом я пришел к выводу, что лучший математический расклад дерева не всегда является самым эффективным, и одна информация мешает проявлению другой, что оказалось уже позже используют в том же CatBoost, когда рандомно выбирают предикторы из всей выборки для построения одного дерева.

 
Aleksey Vyazmikin:

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

Вот так же и неожиданные шпильки и ложные прабои отвлекают трейдера от цели.

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

до этого такие дропы отбивались на изи

внимательно нужно ролики смотреть

 
Aleksey Vyazmikin:

Там скрипт на R с генетическим алгоритмом по созданию дерева, отбираются поколения по улучшению энтропии. Потом идет какой то финальный отбор. Я забираю все деревья для финального отбора и вытаскиваю из них листья для отдельных дальнейших измерений в MT5. Скрипт публично не выкладывался, поэтому и подробных описаний нет. Видимо это как из леса выбирать лучшее дерево, но тут есть ограничение по глубине для избегания переобучения, ну и процесс занимает на всех ядрах примерно 2 дня на последней выборке, где не все бары, а только сигналы на вход, а если все бары за 3 года, то там расчет идет 1,5 месяца. После окончания расчета я делаю расщепление дерева, т.е. убираю столбец с корневым предиктором лучшего дерева популяции и запускаю все по новой, оказалось что и на 40 такой процедуре бывают создаются очень хорошие листья, таким образом я пришел к выводу, что лучший математический расклад дерева не всегда является самым эффективным, и одна информация мешает проявлению другой, что оказалось уже позже используют в том же CatBoost, когда рандомно выбирают предикторы из всей выборки для построения одного дерева.

Код приложите пожалуйста (или в лс), интересно посмотреть. Может что-то новое найдется.

Кстати, в Alglib для выбора разбиения в каждом узле используется случайный набор предикторов (50% от общего кол-ва по умолчанию). Это вроде стандартный подход от создателей Random Forest. В итоге получается широкое разнообразие деревьев.
Но вот лучшие из них сложно найти, т.к. разница в итоговой ошибке не более 1%. Т.е. все деревья приходят примерно к одному результату, но в одном дереве по одному предиктору было разделение раньше, в другом дереве по тому же предиктору позже (т.к. раньше он был исключен из списка для разделения).


А вообще с отбором предиктов беда. Я уж думаю, что для проверки 100 предикторов сделать полный перебор добавляя по 1 и оставлять улучшающие результат. Если вы 40 раз исключаете корневой предиктор, после сложных расчетов, то может полным перебором проще? Или у вас там предикторов эдак с тысячу?

 
Aleksey Vyazmikin:

Там скрипт на R с генетическим алгоритмом по созданию дерева, отбираются поколения по улучшению энтропии. Потом идет какой то финальный отбор. Я забираю все деревья для финального отбора и вытаскиваю из них листья для отдельных дальнейших измерений в MT5. Скрипт публично не выкладывался, поэтому и подробных описаний нет. Видимо это как из леса выбирать лучшее дерево, но тут есть ограничение по глубине для избегания переобучения, ну и процесс занимает на всех ядрах примерно 2 дня на последней выборке, где не все бары, а только сигналы на вход, а если все бары за 3 года, то там расчет идет 1,5 месяца. После окончания расчета я делаю расщепление дерева, т.е. убираю столбец с корневым предиктором лучшего дерева популяции и запускаю все по новой, оказалось что и на 40 такой процедуре бывают создаются очень хорошие листья, таким образом я пришел к выводу, что лучший математический расклад дерева не всегда является самым эффективным, и одна информация мешает проявлению другой, что оказалось уже позже используют в том же CatBoost, когда рандомно выбирают предикторы из всей выборки для построения одного дерева.

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

 
Maxim Dmitrievsky:

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

до этого такие дропы отбивались на изи

внимательно нужно ролики смотреть

К сожалению, Вы не анализируете получаемую информацию, отключите комментарий и посмотрите своими глазами.

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

 
Aleksey Vyazmikin:

К сожалению, Вы не анализируете получаемую информацию, отключите комментарий и посмотрите своими глазами.

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

алгоритм alphastar были ИЗМЕНЕН специально для ревашна с полного обзора карты на кусочное, они туо не доделали все как надо

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

это баг

с вами общаться вообще себя не уважать

 
Maxim Dmitrievsky:

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

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

Спасибо за картинку, когда я имел возможность общаться с Доком, то так оно и было.

 
Aleksey Vyazmikin:

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

Спасибо за картинку, когда я имел возможность общаться с Доком, то так оно и было.

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