Постов с тегом "deep learning": 14

deep learning


Deep learning и прогноз рыночных цен

Добрый вечер, коллеги!

Сам то я всегда скептически относился к AI, но один резидент СЛ (один из 3.5 человек, которые внимательно читают мои посты), а именно — уважаемый SergeyJu  — убедил меня в необходимости более глубокого изучения Machine Learning.
Тут все просто на самом деле — при построении общей теории заработка на рынке я предложил считать все индикаторы ТС полиномиальными (благо, теория это позволяет при достаточно  высокой степени используемых полиномов).
Напротив, SergeyJu законно возразил мне, что классические индикаторы ТА, кроме операций сложения, умножения и деления, также успешно используют функции min и max. И это разумно.

Далее, вместо функций min и max (элементарное рассуждение) можно использовать их аналоги — abs, sign, функцию Хевисайда и любые другие пороговые функции.
Простое рассуждение показывает что, поскольку от индикатора торговой системы нам требуется только знак (про MM мы пока не рассуждаем), то операцию деления можно опустить и ограничиться сложением, вычитанием, умножением, min и max.

( Читать дальше )

Q-learning в алготрейдинге

    • 24 ноября 2023, 02:32
    • |
    • bascomo
  • Еще
Привет! Новая интересная тема в ночь, как я люблю, а так же ликбез для тех, кто хочет достичь больше большинства (и стать успешным меньшинством), и стремится к новым свершениям.

Размышляя и говоря о самообучающихся торговых системах, невозможно пройти мимо Machine Learning / Deep Learning (ML / DL), и это — пост, который посвящён этой теме.

Q-learning в алготрейдинге

О технологиях ИИ и областях их применения в алготрейдинге
Я бы разделил применение ML в трейдинге на три части:
  1. Классический ML, который представлен, например, библиотекой scikit-learn. Она позволяет обрабатывать данные статистически, а так же предоставляет простые модели классификации, кластеризации и регрессии. Функций этой библиотеки достаточно, чтобы несколькими строчками кода выявить наличие или отсутствие зависимостей/корреляций в данных, разбить данные на кластера и выполнить другие типовые задачи, в том числе, препроцессинг данных (предварительную обработку) — стандартизацию, нормализацию, очистку и т.п. Кроме того, её можно использовать для уменьшения размерности, что может пригодиться, например, для выявления значимых метрик торговых стратегий для дальнейшей фильтрации и отбора по существенным. И это только одна библиотека, а их теперь существует множество.


( Читать дальше )

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

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

Вот простой пример предсказания функции синуса. y = sin(x)

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

На самом деле, мне кажется это довольно большая проблема в целом. 

( Читать дальше )

Тестирование торговой стратегии на основе RL

Здарова комерады,

И так продолжим рассказ о том как тестировать обученного агента, о котором был рассказ тут: https://smart-lab.ru/blog/655417.php

В общем пару дней обучал я нашего агента, и решил проверить как он там справляется с торговлей, тем более что на валидационных данных при использовании созданной торговой среды, он показывал уж очень приятные проценты. Что кстати, явилось сигналом проверить, а не сделал ли я какой ошибки. И конечно же, я ее сделал.
Ошибка оказалась простецкой, в обучающей среде, я выбирал изначально 20 исторических цен, 10 были видны сразу, каждая последующая добавлялась на следующем шаге. Однако сперва я проводил преобразование данных к промежутку от 0 до 1 в самом начале, по всем 20 значением сразу. Т.е. получилось что я как бы заглядываю в будущее %).

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

( Читать дальше )

70m, больше акций и RL

На фоне текущего роста портфель обновил максимум и взял отметку в 70 млн рублей.


По совпадению я как раз завершил постепенный процесс увеличения перечня анализируемых акций, доведя их количество до 111 штук. На MOEX акций примерно в два раза больше, но у остальных совсем уж плохо с ликвидностью. В качестве потенциального направления развития можно добавить ETF, ДР, а в перспективе MOEX обещает и иностранные акции подвезти.


Для учета информации в нескольких валютах прийдется существенно переработать блок хранения данных. Опять же по совпадению прочитал пару книжек про Domain-driven design — руки чешутся переписать все чуть более грамотно.


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


Эксперемент: Часть 5. Неудачи. Торговая система на базе глубокого обучения от начала до реальных торгов.

Всем привет. 

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



( Читать дальше )

Tорговая система на базе глубокого обучения от начала до реальных торгов. Часть IV. TFX продолжение.

Итак, в ходе моего эксперемента, как это часто бывает, я отошел немного в сторону и погрузился в рассмотрение работы TFX pipeline. Что на самом деле довольно не плохо, так как теперь понимаю как он работает.
Однако TFX, как и большинство опен сорс софта, имеет свои проблемы:

  • Как я писал в предыдущем посте, компоненты работают в основном только с тренировочным и оценочным (train, eval) наборами данных
  • Версия TFX 0.15 работает только с estimator API — однако говорят что в версии 0.21 ввели поддержку keras моделей без конвертирования ее в estimator, к сожалению не удалось это опробовать, так как в этой версии они сломали interactive context. Конечно, можно было бы и без него, просто все компоненты загнать в пайплайн, но хотелось, что бы и в ноутбуке все работало. 
  • При использовании keras моделей, так и не разобрался как заставить работать TFMA в полную силу, а штука выглядит забавной. Если кто то в курсе, буду рад совету %).

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

( Читать дальше )

Эксперимент: торговая система на базе глубокого обучения от начала до реальных торгов. Часть III. Начинаем работу с TFX

Всем привет, 
если кому-то все еще интресно, мы продолжаем. Ох и медленно длится у меня процесс )

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



( Читать дальше )

CloseToAlgotrading: Еще один пример того, как мы можем улучшить нашу торговое окружение!

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

В прошлый раз, некоторые участники smart-lab'а скептически отнеслись к докеру, в этом случае он нам тоже очень пригодиться, что бы легко и быстро запустить сам Tensorflow serving.

В общем смотрим :) комментируем.



( Читать дальше )

....все тэги
UPDONW
Новый дизайн