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

 
Maxim Dmitrievsky:

Как минииум нужно делать аффинные преобразования чартов, потомоу что паттерны идут под разными углами наклонов (самоаффинные структуры),

т.е. сжимать или растягивать шаблон по высоте.... ? - интересный вариант. Но думаю, что сжимать растягивать нужно не более чем на 30-50%, иначе можно по ночным случайным колебаниям пытаться искать шаблоны на волатильном времени амер. сессии например. И там и там разные закономерности действуют и разные игроки.
Если принять сжатие растяжение до 30-50% в работу, то прирост количества  найденных шаблонов наверное будет не очень большим, что возможно не сильно скажется на прогнозе и потому можно им пренебречь...  впрочем это надо проверить.

И совсем неясно как это сжатие в коде МТ реализовать не пользуясь готовыми внешними продуктами...

поиск на разных тф

мне кажется даже на М1 и М5 уже разные закономерности. И искать одинаковые шаблоны на них неправильно. Шаблоны могут и быть похожи, но причины породившие такую форму графиков будут разными.

 
elibrarius:
Других вариантов сравнения 2-х ценовых графиков не вижу. Какие еще есть варианты...?

Допустим есть два массива цен, в каждом по 5 цен
первый a1,a2,a3,a4,a5
второй b1,b2,b3,b4,b5

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

2) Ряд цен спорно называть паттерном; должно быть некое математическое описание фигуры которую образуют эти цены. Например можно найти прирост цены на каждом баре, и эти приросты уже использовать как некое описание паттерна.
первый паттерн получится по формуле a5-a4, a4-a3, a3-a2, a2-a1
второй - b5-b4, b4-b3, b3-b2, b2-b1

3) "похожесть" паттернов - либо корреляция (сам не проверял), либо декартово расстояние по теореме пифагора (проверял, сработало непллохо) -
sqrt(  ((a5-a4)-(b5-b4))^2 + ((a4-a3)-(b4-b3))^2 + ((a3-a2)-(b3-b2))^2 + ((a2-a1)-(b2-b1))^2 )
ну или что-то ещё, я думаю должны быть и варианты получше.

 
elibrarius:

т.е. сжимать или растягивать шаблон по высоте.... ? - интересный вариант. Но думаю, что сжимать растягивать нужно не более чем на 30-50%, иначе можно по ночным случайным колебаниям пытаться искать шаблоны на волатильном времени амер. сессии например. И там и там разные закономерности действуют и разные игроки.
Если принять сжатие растяжение до 30-50% в работу, то прирост количества  найденных шаблонов наверное будет не очень большим, что возможно не сильно скажется на прогнозе и потому можно им пренебречь...  впрочем это надо проверить.

И совсем неясно как это сжатие в коде МТ реализовать не пользуясь готовыми внешними продуктами...

мне кажется даже на М1 и М5 уже разные закономерности. И искать одинаковые шаблоны на них неправильно. Шаблоны могут и быть похожи, но причины породившие такую форму графиков будут разными.

Для лучшего понимания лучше изучить св-ва фракталов. В частности, как я уже писал - это скейлинг и самоаффинность

Скейлинг, по определению - на разных временных интервалах формируются похожие паттерны. Мы можем взять 1 мин котировки и построить по ним массив синтетических ТФ с заданным множетилем, по этому массиву производить поиск похожего паттерна на текущий.

Самоаффинность - паттерны похожи, но никогда не точно такие же. Это основная проблема при выборе критериев "похожести", корреляция здесь не подходит.

Разница проявляется больше в наклоне паттернов (угле наклона линии регрессии) чем в их сжатии\растягивании. Я строил ЛР по текущему паттерну, затем, при поиске, брал котировки с других участков и менял угол наклона ЛР до угла наклона ЛР текущего паттерна, в итоге он чаще находил похожие паттерны. При построении же прогноза делалось преобразование прогнозной кривой с учетом наклона ЛР текущего паттерна.

Далее. Самоаффинность(самоподобие) фракталов имеет еще одну интересную особенность - внутри крупного патерна формируются точно такие же, но более мелкие. Алгоритм поиска - берем (например) последние 500 баров 1час ТФ со здвигом 10 баров, и в тестере бежим по минуткам или 5-минуткам и ищем паттерны, похожие на 1-час паттерн. Нашли - проецируем последние 10 баров с 1 час на 5-мин паттерн - это и есть прогноз. Делать это тоже с учетом углов наклона регр. Это то, как делал я.

Кроссвалидацию по группе следующих друг за другом паттернов еще не делал, но тема, как кажется, интересная

 
Dr. Trader:

Допустим есть два массива цен, в каждом по 5 цен
первый a1,a2,a3,a4,a5
второй b1,b2,b3,b4,b5

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

2) Ряд цен спорно называть паттерном; должно быть некое математическое описание фигуры которую образуют эти цены. Например можно найти прирост цены на каждом баре, и эти приросты уже использовать как некое описание паттерна.
первый паттерн получится по формуле a5-a4, a4-a3, a3-a2, a2-a1
второй - b5-b4, b4-b3, b3-b2, b2-b1

3) "похожесть" паттернов - либо корреляция (сам не проверял), либо декартово расстояние по теореме пифагора (проверял, сработало непллохо) -
sqrt(  ((a5-a4)-(b5-b4))^2 + ((a4-a3)-(b4-b3))^2 + ((a3-a2)-(b3-b2))^2 + ((a2-a1)-(b2-b1))^2 )
ну или что-то ещё, я думаю должны быть и варианты получше.


Замечена интересная особенность: можно искать паттерны не по графикам а по индикатору RSI, интересно это тем что как не детрендируй и не поворачивай график, рси, построенный на нем, будет показывать примерно одно и то же, т.е. отпадает необходимость поворачивать графики на угол. Но на выходе (прогноз) нужно будет все равно преобразовать с учетом наклона ЛР. Плюс можно строить на полученных индикаторах кросскорреляцию и прочие ништячки.
 

Maxim Dmitrievsky и  Dr. Trader
Похоже, что вы много времени уделили поиску шаблонов на истории, наподобие сделанного мной индикатора.
Вы продолжаете этим пользоваться или перешли на нейросети, т.к. поиск шаблонов оказался бесперспективным? Или результативность этих подходов все-таки одинакова, а разница лишь в скорости?

 
elibrarius:

Maxim Dmitrievsky и  Dr. Trader
Похоже, что вы много времени уделили поиску шаблонов на истории, наподобие сделанного мной индикатора.
Вы продолжаете этим пользоваться или перешли на нейросети, т.к. поиск шаблонов оказался бесперспективным? Или результативность этих подходов все-таки одинакова, а разница лишь в скорости?

Я позабросил работу с паттернами т.к. она не дала сразу ожидаемого результата, какого хотелось, попозже вернусь к теме. И очень много придумывать и делать нужно, трудоемко и неочевидно пока не сделаешь. До этого у меня с другом были разработки по теме фрактального анализа по ф-ии Вейерштрасса-Мандельброта, но там тоже использовалась корреляция, нормальные паттерны находил через раз. Сейчас, если осилю свертки или придумаю еще какой-то новый способ поиска паттернов то вернуть.. короче уперся я в корреляцию, она не подходит
 
Maxim Dmitrievsky:
Я позабросил работу с паттернами т.к. она не дала сразу ожидаемого результата, какого хотелось, попозже вернусь к теме. И очень много придумывать и делать нужно, трудоемко и неочевидно пока не сделаешь. До этого у меня с другом были разработки по теме фрактального анализа по ф-ии Вейерштрасса-Мандельброта, но там тоже использовалась корреляция, нормальные паттерны находил через раз. Сейчас, если осилю свертки или придумаю еще какой-то новый способ поиска паттернов то вернуть.. короче уперся я в корреляцию, она не подходит

Вот, если интересно, 100 лет назад записывал ролик по фрактальному анализу вводный. К анализу паттернов имеет непосредственное отношение, с моей точки зрения.


 

А на каком принципе простые НС (простой МЛП) строят прогноз?

Мне кажется на обычной корреляции - т.к. вес связей между нейронами растет от количества повторений сигнала по этой линии при совпадающем ответе НС, если линия была то в + то в - она и останется около 0 - а это по сути обычное усреднение. Затем используя эти веса находим похожесть входной комбинации предикторов среднему на периоде обучения.

 

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

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


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

А если заниматься индикаторами - то куча времени уйдёт на подбор самих индикаторов и цели для обучения; Выбор и обучение модели (нейронка, лес, бустинг) времени много не займёт.

 
Maxim Dmitrievsky:
Я позабросил работу с паттернами т.к. она не дала сразу ожидаемого результата, какого хотелось, попозже вернусь к теме. И очень много придумывать и делать нужно, трудоемко и неочевидно пока не сделаешь. До этого у меня с другом были разработки по теме фрактального анализа по ф-ии Вейерштрасса-Мандельброта, но там тоже использовалась корреляция, нормальные паттерны находил через раз. Сейчас, если осилю свертки или придумаю еще какой-то новый способ поиска паттернов то вернуть.. короче уперся я в корреляцию, она не подходит


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

хач стайл трейдинг рулит..........

Причина обращения: