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

 
kaus_bonus:


вы серьезно?)) левая рука борется с правой?) кто тогда будет спонсировать выборы и т.д.

http://www.rbc.ru/finances/19/10/2015/5624cf299a79472c1c14ac85

и т.д.


Ну в итоге сами и понесли убытки, и это не единственный крупный игрок на рынке. Случайность может иметь разные инвестиционные горизонты, и распределения прибылей и убытков на каждом инвест горизонте примерно равны, вероятность схавтить черного лебедя одинаковая, о чем писал, например, Э. Петерс. А борьба с монополиями это ключевая роль гос-ва и конкурентного рынка, иначе бы мы покупали хлеб по 1000$
 
Олег avtomat:

Если же задача сформулирована как задача определения управляющего сигнала

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


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

Какой же выход?

Моя первая мысль была это уйти от форекса, торговать криптовалютой раз она вся такая свободная и независимая. Но раз цена крипты обычно выражена в долларах - то и цена btc/usd тоже получит плохие непредсказуемые свойства от usd, тоже плохо. Я думаю стоит попробовать торговать кроссы крипт - btc/ltc например (биткойн-лайткоин). Я видел рекламу у какого-то брокера что у них есть btc/usd в MT4, надо поискать не кухню с btc/ltc в MT5. В худшем случае можно пойти напрямик на биткоин биржу, но придётся писать свою программу чтоб роботом торговать через их rest апи.

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

 
Dr.Trader:

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

Правильно поставленная задача - это уже наполовину решенная задача.

Желаю успехов!

 
Dr.Trader:

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


Моя первая мысль была это уйти от форекса, торговать криптовалютой раз она вся такая свободная и независимая. Но раз цена крипты обычно выражена в долларах - то и цена btc/usd тоже получит плохие непредсказуемые свойства от usd, тоже плохо. Я думаю стоит попробовать торговать кроссы крипт - btc/ltc например (биткойн-лайткоин). Я видел рекламу у какого-то брокера что у них есть btc/usd в MT4, надо поискать не кухню с btc/ltc в MT5. В худшем случае можно пойти напрямик на биткоин биржу, но придётся писать свою программу чтоб роботом торговать через их rest апи.

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

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

На настоящий момент уперлись в разного рода производные от самой предсказываемой валютной пары.

А если взять другие валютные пары. Я занимался этим. Есть валютные пары, которые имеют предсказательную способность для пары EURUSD, а есть, которые вообще не предсказывают эту валютную пару.

Но имеется более серьезная мысль.

Дело в том, что курс валюты, например USD, напрямую зависит от разного рода макроэкономических показателей: ставки ФРС, ВВП.... Вполне возможно, что выявленные Вами смены паттернов связаны с изменениями макроэкономических показателей. У них периодичность месяц - это очень быстро. Обычно квартал или сезон.

 

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

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

В итоге был создан индикатор (Рис.), который отражал именно мой подход к рынку, к его прогнозированию. Вкратце опишу его работу. Сначала происходит предобработка котировок, затем затем создается так называемая "идеальная" модель, которая имеет хорошую сглаженность и минимальное количество перегибов. Но эта модель, имея эти преимущества имеет большой недостаток, она отстает на приличное (10-12) количество баров. Следующая задача состояла в компенсации задержки "идеальной" модели. Эту задачу до сих пор решаю. Но результаты есть. На Рис. вы можете видеть прогнозные значения "идеальной" модели, Желтая - на 5 баров, Красная - на 7 баров вперед. Продвинуться далее вперед, даже на 1 бар, используя прошлые данные не получается, появляется много ложных срабатываний, нарушается сглаженность. Т.е. из истории я вытянул максимум. На мой взгляд в формировании следующих баров участвуют очень гремучая смесь предикторов начиная от объемов, заканчивая корреляционными связями между торгуемым и десятками остальных инструментов. (причем хочу уточнить, что корр. связи очень кратковременны, у меня не получалось выявить более менее долгосрочную связь). 

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


 
Egor Manakhov:

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

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

В итоге был создан индикатор (Рис.), который отражал именно мой подход к рынку, к его прогнозированию. Вкратце опишу его работу. Сначала происходит предобработка котировок, затем затем создается так называемая "идеальная" модель, которая имеет хорошую сглаженность и минимальное количество перегибов. Но эта модель, имея эти преимущества имеет большой недостаток, она отстает на приличное (10-12) количество баров. Следующая задача состояла в компенсации задержки "идеальной" модели. Эту задачу до сих пор решаю. Но результаты есть. На Рис. вы можете видеть прогнозные значения "идеальной" модели, Желтая - на 5 баров, Красная - на 7 баров вперед. Продвинуться далее вперед, даже на 1 бар, используя прошлые данные не получается, появляется много ложных срабатываний, нарушается сглаженность. Т.е. из истории я вытянул максимум. На мой взгляд в формировании следующих баров участвуют очень гремучая смесь предикторов начиная от объемов, заканчивая корреляционными связями между торгуемым и десятками остальных инструментов. (причем хочу уточнить, что корр. связи очень кратковременны, у меня не получалось выявить более менее долгосрочную связь). 

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



Интересно!!!!! Ваш индикатор хорошо сглаживает колировки, но сама линия не несёт в себе прогноз. То есть она идёт по принципу, куда фига туда дым. Как правило такие ТС чувствительны к количеству ложных сигналов. Интересно как вы получили прогнозные значения????
 

чел просто решил впарить свое барахло.... машку какую то...под шумок...типа на самом деле хочет поддержать беседу)...ну ну ...

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

Дело в том, что курс валюты, например USD, напрямую зависит от разного рода макроэкономических показателей: ставки ФРС, ВВП.... Вполне возможно, что выявленные Вами смены паттернов связаны с изменениями макроэкономических показателей. У них периодичность месяц - это очень быстро. Обычно квартал или сезон.

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

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

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

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

Выводов нет. Продолжаю ковырять форекс дальше.

 
Mihail Marchukajtes:

Интересно!!!!! Ваш индикатор хорошо сглаживает колировки, но сама линия не несёт в себе прогноз. То есть она идёт по принципу, куда фига туда дым. Как правило такие ТС чувствительны к количеству ложных сигналов. Интересно как вы получили прогнозные значения????


Да сглаживание приличное, но и задержка по фазе не малая. Повторюсь главная идея состоит в том, чтобы добиться максимальной сглаженности и минимального количества переломов. Затем за счет обучения нейронной сети и линейной регрессии пытаться восстанавливать эту модель, поэтапно двигаясь к нулевому бару сохраняя сглаженность.(сглаженность мне нужна преимущественно для алготорговли, а минимальное количество переломов для того чтобы было, что "откусить" у рынка, даже если я восстановил фазу только на 7 баров из 10-12) 

Прогнозные значения в виде желтой и красной линии получены обучением нейронной сети, используя "идеальную" линию в виде целевой функции, а предиктами являются полиномы перекрывающие выборку по амплитуде и по фазе. Но обучение "желтой" и "красной" модели немного отличается, допустим даже из=за того, что для обучения "красной" использовал как предикт "желтую" модель. Обучение производил на минутном графике AUDJPY, выборка 1500-2000 баров. Полученные модели работают на всех таймфреймах, на всей истории не смотря существенный по амплитуде разбег котировок.

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


 

Графики прибыли на тему "паттерновая модель против нейронной сети".

Обе модели обучались торговать eurusd в плюс в октябре 2016 года; константный лот, без стопов и тейков; всегда в сделке лонг или шорт; торговля на H1 по ценам открытия. Торговля на графике - последних 5 лет, включая один месяц обучающих данных.

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

На графиках есть место где сервер не дал нормальные тики, там какой-то слив, то место игнорируйте.


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


А вот модель с распознаванием паттернов. Результат в минусе, но всё равно лучше нейронки. И есть куча периодов времени когда она приносила прибыль неделями. Но потом сливала.
Прикольно, но пока не ясно что с этим делать.


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