Блог им. DenisVo |Алгоритмическая торговля с помощью самообущающегося DQN агента.

Аллоха!

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

Для эксперемента было выбранно 200 дней в обучающую выборку и 50 в тестовую. Обучались два DQN агента, один использовал Q-Network, второй Q-RNN-Network. На картинке можно видеть результаты обоих агентов после обучении на 700 итераций.

Алгоритмическая торговля с помощью самообущающегося DQN агента.



Проверялась работа агентов на 80 эпизодах по 10 раз. Как можно видеть агент использующих QRnnNetwork показал вполне себе неплохие результаты. Так что вполне возможно, что при правильной готовке можно получить таки самостоятельного агента, способного торговать не хуже чем сконструированная стратегия.

Кому интересно как создать агента при помощи TF-agents фреймворка, а так же узнать больше деталей, прошу смотреть видео. Код можно найти на гитхабе, ссылка в описании к видео.




Блог им. DenisVo |Обучение с подкреплением. Торговая среда для агента.

Всем привет.

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

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

Выглядят он так:

Обучение с подкреплением. Торговая среда для агента.



Все начинаеся с того, что агенту доступны певые 10 значений, и у нас есть всего 10 шагов, на которых мы должны получить максимальный результат. 
Агенту так же доступны 4 действия: купить, продать, пропустить шаг и закрыть открытую позицию.

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

Далее, взяв простого DQN агента, и два разных варианта среды: одна содержит только один сгенрированный ряд, вторая содержит два:

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

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

Всем привет. 

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



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

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

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

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

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

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

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

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

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



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

Блог им. DenisVo |Практический пример использования Tensorflow serving для применения ваших моделей в любой среде алгоритмической торговли.

Всем привет, 

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

И так, этот пост логическое завершение предыдущего: https://smart-lab.ru/blog/558070.php

Там было видео, в котором я рассмотрел подготовку данных. Мы получили исторические цены от yahoo сервиса, выбрали точки входа по нашей стратегии и подготовили датасет для алгоритма машинного обучения.

В сегодняшнем видео будет следующее:

— Используя tensorflow.keras api мы создадим две версии нейронной сети;
Сети очень простые и реализуют бинарную классификацию, отднако выходной слой имеет сигмоидную функцию активации и поэтому на выходе мы будем получать вероятность, а не конкретный класс. А как вы возможно помните, нейронная сеть нам нужна именно для того, что бы предстказывать вероятность получения нашей прибыли.

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

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