Блог им. Replikant_mih

Написал рисечер (майнер) паттернов.

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

 

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

 

Рецепт для создания этого алго-блюда простой (по нему можно много блюд настрогать):

— Где-то берем паттерны.

— Решаем, как оценить меру совпадения заданного участка и заданного паттерна.

— Решаем, как оценить качество паттерна на основе совокупности измерений совпадения с выборкой участков.

— Собственно, всё это по кругу гоняем.

 

Для на коленке мне рецепт понравился, наверняка есть и другие.

57 комментариев
есть. в ts lab большинство элементарно рисуется.
avatar
u-gyn, Что рисуется? Майнер паттернов?

И как рисуется?
avatar
Replikant_mih,
Что рисуется?
Робот, торгующий по паттернам.
И как рисуется?

Кубиками
avatar
u-gyn, Ну эт другое, вроде.
avatar
Не верю я в действенность этих паттернов. Сдается мне, что все эти взаимосвязи нам только кажутся и не более чем игра нашего воображения.(
avatar
3Qu, это самоисполняющееся пророчество по сути. если все знают, что пробитие линии шеи в h&s к падению — то на дневках лихорадочно начинают шортить и паттерн срабатывает.
я не люблю классические паттерны ТА, но в br на дневках 16.07.2021 линия шеи была пробита и я вошел в шорт, а 19.07 было падение с 73 до 67.
avatar
3Qu, Вот и посмотрим)).
avatar
3Qu, паттерны есть. И довольно стабильные в мат. моделях. Только пока своими глазами не увидишь опережение-отставание цены от расчетного вектора, ни фига не поймешь, как это всё кодить.
А увидеть — это чтение правильной литературы, и работа с графиками.
avatar
Вера в паттерны свойственна детям, начинающим трейдерам и идиотам))
avatar
$100, от поэтому вы не видели профит, вы нашли способ проверять идеи! Респект это пол дела, теперь осознайте что любая идея это алгоритм другими словами паттерн ну и под пивко каждый выходной раз в неделю придумывайте новый паттерн потом проверяйте на истории это вы умеете хорошо))
И однажды вы найдете профит
avatar
$100, Надеюсь, из этого списка во мне говорит внутренний ребенок)). Хотя я ж не верю, я ж проверяю).
avatar
Replikant_mih, многие вещи были открыты именно потому, что исследователь не знал, что «это не работает»
avatar
Максим Иванов, Да, зашоренность, конечно, не способствует раскованным исследованиям).
avatar
«Где-то берем паттерны» Так в этом вся фишка… В это все и упирается где достать формализуемой годноты?.. и ответ весёлый) родить самому))
avatar
technic, Разные варианты возможны — нагуглить, нарисовать самому, на графике наразмечать. Можно просто вообще всё примеривать, а дальше отсеивать если не работает.
avatar
Replikant_mih, получается что вы созерцаете график пока не зачешется пятка) потом делаете пометки «где вход, где выход» И Майнер начинает проверять эту идею… получается симбиоз машины и человека где рутина достаётся машине)
avatar
technic, Не, это я перечислил навскидку возможные варианты, как это можно делать на данном этапе. Я что-то типа рандомлю паттерны и каждый оцениваю, тут на первое место выходит не найти на входе в этот генератор хорошие паттерны, а научиться качественно паттерн оценить чтобы разделить соловьев от воробьев).
avatar
Replikant_mih, не надо изобретать колесо. Проги ВА типа EWA 3.0-6.0 уж давно размечают фрактал Вильямса на предмет его 8 фаз времени в любых таймах. Проблема именно в соответствии идеальной модели и графика. Волновой анализ именно и задает допуски в размерах(расположения) паттернов. Просто читаем правила расположения волн(паттернов).Хвала Эллиоту.! Он открыл глаза на форму свечей.
avatar
_G_, Да, там в ML много вариантов возможно. Не хотел ввязываться во что-то тягучее долгое, сложное.
avatar
_G_, Я кстати сразу прикрутил OOS контроль чтоб хотя бы приблизительно понять, насколько оно работает.
avatar
_G_, Ну да, там глубже надо копать, а я щас не хочу снова закапываться).
avatar
Replikant_mih, Если в ML загнать последовательность свечек и «попросить» предсказать следующую, то ML внутри себя построит отличный майнер паттернов. Я бы даже сказал лучший из возможных. Как нетрудно догадаться, на практике это, с сожалению, не работает.
avatar
Иван Портной, Ну вы же в этом не разбираетесь), соответственно и выводу вашему я могу не доверять. «В ML загнать» — ML это подход, линейная регрессия и нейросети вида трансформер это две несколько разные вещи, а еще можно разные таргеты выставлять и признаковое пространство и представление задачи под тип задач ML и т.д.
avatar
Replikant_mih, 
Ну вы же в этом не разбираетесь)
Приятно иметь дела с телепатом))). Я же в двух словах написал. Хотите подробнее? Извольте. Возьмите лес. Пространство признаков сформируйте из N свечей. Достаточно взять Close-Open. Целевую возьмите размер и цвет предсказываемой свечи. Обучите. У вас будет лучший в мире майнер паттернов.
avatar
Иван Портной, Сорри если ошибся). Просто вы так пишете о ML как будто это что-то монолитное (просто чтобы получить «лучший» нужно пробовать разные архитектуры, играться с параметрами и признаковым описанием и тот кто с этим работал, это знает). Вот и подумалось.
avatar
Replikant_mih, моя мысль была чиста и прозрачна, как слеза. Один из простейших вариантов приложения ML к котировкам, который не избежал, пожалуй, ни один неофит ML, это и есть по сути майнер паттернов. Только продвинутый и совершенный.
avatar
_G_, OOS — out of sample, если по человечески — отложенная выборка, если ещё более по человечески, данные, которые модель ещё не видела. Т.е. я нахожу и оцениваю паттерны не некоторых данных. Щас я беру много акций и часть из них показываю скрипту — там они ищет и оценивает паттерны, а второй кусок данных — другие акции — их он не видит — там я смотрю как типа хорошие паттерны себя показывают уже по факту без подгонки.
avatar
Replikant_mih, хороший паттерн один.Это фрактал Вильямса.Все остальное его производные.
avatar
ezomm, Это не паттерн, вернее можно его рассматривать как паттерн, только выхлоп с него будет маленький. А если использовать его для того чтобы поверх накручивать какие-то абстракции, то в данном случае абстракции — не производные, а сама суть, а фрактал — кубик, из которых все собирается. Да, можно и так. Там просто посложнее будет такое сделать, поэтому так не делал ещё, но в идеях есть.
avatar
Replikant_mih, все варианты в пространстве квадрата  8\8… типа как шахматная доска.Но главное в аксиомах про прогресс(тренд-импульс) и регресс -коррекция тренда. Простая формула чередования глубины(2+4=100%) и формы 2х коррекций(простая-сложная) импульса гениальна. Ведь это внутренняя структура тренда.
avatar
_G_, Да, типа того))). Но у меня много перебора, медленно все, поэтому надежда может тлеть долго)).
avatar
Replikant_mih, «много перебора, медленно все,» — из-за чего? комп медленно обрабатывает?
avatar
Максим Иванов, Ну как сказать, даже если код у тебя супе-тормозной, компьютер тоже виноват ведь если бы он был в 100 раз мощнее, то и такой бы код проглотил). В данном случае причина в очень большом числе операций, операций сопоставления паттерна с некоторым произвольным участком графика. 
avatar
Replikant_mih, я как раз для этих целей на прошлой неделе поставил себе Ryzen 9 5950х (5 Ггц, 32 ядерный) 
avatar
Максим Иванов, Крутяк, моя наколенная программа пока однопоточная кстати).
avatar
Replikant_mih, у меня тоже, но я разбиваю календарные периоды на части и запускаю сразу несколько экземпляров wld на разных периодах. Каждый wld крутится на своем ядре соответственно.

avatar
 Как в том анекдоте 
— А теперь со всей этой хернёй мы попробуем взлететь...
avatar
О'Грин, Ага).
avatar
_G_, не возникло мысли почему так? ))
avatar

— Где-то берем паттерны.

— Решаем, как оценить меру совпадения заданного участка и заданного паттерна.


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

Если не секрет, как именно ищите?

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

avatar

CloseToAlgoTrading, 

>> «Меня вот это очень смутило, отчего все пишут какими то абстракциями, дали бы конкретику.»

У «все пишут какими-то абстракциями» 2 основные причины, думаю — 1. У кого-то более развито абстрактное мышление — ему так комфортней, 2. В трейдинге где высока конкуренция, слишком светить детали может быть чревато, а следить за деталями влом, а оставаться на абстрактном уровне — и комфортно и безопасно)).


 

Если не секрет, как именно ищите?

 

Да рандомлю я паттерны, а дальше смотрю, есть ли в нем что-то.

>> «Я как то пытался делать простой детектор объектов, но честно скажу скусил на разметке данных, ибо даже самый простой графический паттерн сложно найти и доставерно интерпретировать, а так же постоянно скатываешься в то что размечаешь не все, а только те которые нравятся по направлению движения. Делал разметку обычными боксами, потом можно туже yolo подобучить. Правда после долгих размышлений пришел к выводу, что все же лучше учить контрольными точками, но разметить данные опять же руки пока не дошли. »

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

avatar
_G_, Пока ты инженер-разработчик, то это может быть интереснее.
 Как только ты становишься пилотом ( трейдером, доверившим «самолёту» весь свой депо), у которого ставка — жизнь, то вечер перестаёт быть томным.
avatar

Тема очень интересна. У меня самого робот торгует по паттернам, полный автомат. Пока не могу похвастаться супер результатами, но торгую в плюс. 

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

 

Если у вас что-то получится, то интересно будет обсудить детали подхода. 

avatar
Максим Иванов, Классно. А вы как это делаете? Если совсем в общих чертах для начала? Как понимаете что паттерн сматчился с данным участком графика, ну второй вопрос — где паттерны берете?
avatar

Replikant_mih, пока отбор паттерна полностью глазами и ручной, потом прогон его на истории. Поэтому процесс идет очень медленно. 

Один из моих выводов могу слить — паттерны на дневках у меня не заработали совсем. В итоге полностью отказался от анализа дневок. Хотя в первых версиях я сначала анализировал дневки и только если вероятность по дневкам показывала больше 50%, то уже искал точки входа на младших таймфреймах.

avatar

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

Методы поиска обратные повсеместным методам дают преимущество. Если по ТРИЗ, то задачу стоит переформулировать в соответствии с целями. Цель алготрейдеров не искать паттерны на ценовом ряду, а забрать деньги с рынка. И тут оказывается, что паттерны можно не искать, не мурыжить ценовой ряд, а начать с конца и построить инверсную систему. 

Методы поиска, оптимизации у всех одинаковые, как и инструментарий.

 

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

 

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

 

Что имеешь в виду? Искать движ, а потом смотреть, что ему предшествовало? Или что?

avatar
Replikant_mih, движ все ищут, и все смотрят что потом. Не надо делать как все.

Александр Дрозд, Мне, честно говоря, сложно оценить, что делают «все». Я всегда делаю сам по себе, теоретически я могу прийти туда куда и все, но скорее вряд ли).

 

А что ты тогда имеешь в виду под: начать с конца и построить инверсную систему?

avatar

теги блога Replikant_mih

....все тэги



UPDONW
Новый дизайн