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

 
mytarmailS #:

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

Да у меня получилось, качество не прям такое как на участке обучения но всегда часть этого качества сохраняется, и по моим исследованиям форвард от 10 лет истории может быть до года, в среднем 2-3 месяца это работает на достаточно хорошем качестве, относительно участка обучения процентов 60-70 в среднем наверное. Нейросеть даст более лучшие показатели, но там нужно уже как раз эти критерии переобучения добавлять, вводить комбинированные показатели что-то типо весов, чтобы количество данных давало вес определенный, потом качество итогового бексеста например математическое ожидание или профитка и конечно же сложность итогового алгоритма который получился ( количество всех весов всех перцептронов например ). Чтобы достичь в нейросети этого, вид нейронов должен быть как можно более разный, и количество слоев и их состав тоже должен быть произвольным, тогда такое возможно. Все в основном используют нейросеть фиксированной архитектуры, но почему-то не понимают что архитектура тоже должна быть гибкой, уничтожая эту гибкость уничтожаем саму возможность минимизировать переобучение. В целом конечно эти же критерии можно применять и для простых моделек, даже нужно, тогда точно будет хороший форвард, моя модель пару месяцев точно дает вперед прибыли а обновляться настройки в течение одного дня могут . Одна из основных хитростей брать именно как можно больше данных ( 10 лет истории  и выше ), в таком случае идет поиск глобальных закономерностей, а они основаны на физике самого рынка и в большинстве случаев еще очень долго работают.

 
Evgeniy Ilin #:

Да у меня получилось, качество не.....

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

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

 
mytarmailS #:

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

Действительно серваки уже нужны ) а у меня их нет(софт я как раз под это и делал н опока все это на дохлом нетбуке висит вот только только запустил DDD ), считать приходится очень долго и мучительно. Но само по себе иного варианта нет, либо откуда-то берешь мощности и усердно их нагружаешь, при этом в динамике нужно проверять сразу 20-30 конфигураций минимум, а лучше под сотню, и под каждую сигнал вешать и мониторить, самые устойчивые которые пройдут естественный отбор и оставлять, потом пытаться еще мощности добавлять. Иного пути нет, а иначе это просто путь в никуда, как здесь многие уже писали... это действительно может на долгие годы растягиваться без понимания где копать. Альтернатива это степень форумных наук и болтовня о фазах луны и их влиянии на рынок в духе передач Прокопенко ))). КСТАТИ какое решение если не секрет ?

 
Evgeniy Ilin #:

 КСТАТИ какое решение если не секрет ?

В той книге на которую я дал ссылку это решение описано более грамотно.. ООооочень рекомендую почитать..

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

Или еще проще пример : в неделе 5 дней торговых , тренируем одну модель суто под понедельники , вторую под вторники итп..  получилось уменьшыть обуч. выборку в 5 раз и уже не 10 лет, а 2 года обучения  ну и так далее это уже от фантазии..

 
mytarmailS #:

В той книге на которую я дал ссылку это решение описано более грамотно.. ООооочень рекомендую почитать..

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

Или еще проще пример : в неделе 5 дней торговых , тренируем одну модель суто под понедельники , вторую под вторники итп..  получилось уменьшыть обуч. выборку в 5 раз и уже 10 лет, а 2 года обучения  ну и так далее это уже от фантазии..

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

 
Evgeniy Ilin #:

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

ну тогда

)))


=====

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

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

 
mytarmailS #:

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

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

 
Evgeniy Ilin #:

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

Я плохо понимаю твое видиние, поетому не буду спорить..

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

(как трейдер что выставил уровень, цена может прийтик уровню  через 5 минут, а может и через день , но ситуация это одна и таже )

Так вот ансамбль из таких рабочих последовательностей и будет ТС..

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


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

 
Evgeniy Ilin # :

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

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

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

Evgeniy Ilin # :

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

это не хитрость, а попытка оторваться от реальности... имхо

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

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

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

 
mytarmailS #:


Мое видение конечно не эталон, я рассуждаю в основном с точки зрения экономия времени, просто потому что я со многими общался и думаю не секрет что мы через 5 лет почитаем этот форум и возможно будем смеяться над самим собой, просто мне кажется что все наработки не пусты и нужно стараться масштабировать то что получено. Мне много раз хотелось все послать к чертям, но почему-то я этого не сделал хоть это и денег не приносит. Мне кажется все потому что этот опыт он имеет большую ценность, у каждого он свой но все что в наших силах это либо двигаться дальше либо вообще идти в кабак и спиться.. Мне кажется что просто нужно масштабировать и усиливать все то в чем есть зачатки какие-то, и еще мне кажется что скорее всего все очень просто. Чем больше я что-то усложняю и чем больше хочу туда загнать какой-то непонятной математики тем менее это все предсказуемо. Если честно то я думаю все кто годы на это потратил понимают что 100 процентов в месяц им не видать, а те кто не потратил это время посмотрят на твои 100 в год и купят сигнал у которого 100 в месяц даже не обращая внимание на то что он висит 2 месяца