Блог им. aimaster

Трейдер должен хорошо разбираться в рынках, остальное должен сделать компьютер

    • 17 сентября 2018, 10:48
    • |
    • aimaster
  • Еще
Всем привет!

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

Это несколько странно, с учетом того, что в других областях применение машинного обучения развивается семимильными шагами. Мне кажется, трейдинг — как раз та область, где эти технологии должны быть (и будут) востребованы.

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

Тут главное — не рассматривать нейросети как волшебный инструмент, которому достаточно подать цену на вход и получить точный прогноз на выходе. Такое применение сомнительно. Но если говорить об анализе множества условий — сети могут быть весьма полезны.

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

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

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

Какими могут быть эти факторы, кроме цены самого инструмента? Я бы выделил следующие группы:

1. Какие то общие характеристики финансового инструмента и параметры торговли, например: день недели, объем торгов, открытый интерес и т.д.

2. Факторы, вытекающие из технического анализа графика цены:
  • изменение цены в предыдущие дни;
  • гепы, пробои уровней;
  • значения каких то индикаторов (например, выше или ниже moving average).
3. Новости, политические события, корпоративные отчеты и макроэкономические события (повышение ставки и т.д.)

4. Изменения цены других финансовых инструментов и их влияние (нефть на рубль и т.д.)

Я сделал простенький сервис - ai-finmarkets.ru, который позволит попробовать использовать нейронную сеть в своей торговле, при этом не обладая какими-либо знаниями в области программирования или нейросетей. 
Вам нужно подготовить excel файл с историческим набором различных факторов и загрузить его в сервис. Сервис подаст его на вход нейросети, она обучится на основе этого файла и выдаст вам прогнозное значение на следующий период и оценку точности прогноза.

Там же можно найти более подробное описание формата файла и посмотреть пример использования сервиса для акций Apple.

В примере используются следующие факторы:

Change — процент изменения цены за прошедший квартал;
Gap — размер гэпа на следующий день после выхода отчета;
Day movement — изменение цены на следующий день после выхода отчета (с открытия сессии до момента входа в сделку);
SP500 change — изменение индекса S&P500 за прошедший квартал;
Earning delta — изменение прибыли по сравнению с прошлым кварталом согласно вышедшему отчету.

На выходе нейросеть дала мне 66% точных предсказаний по направлению сделки. Обольщаться здесь, конечно, не стоит, но как пример и основу для дальнейших исследований использовать можно. Если тема интересна, пишите в комментариях о своем опыте использования нейросетей для анализа и выявления закономерностей.
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
3.6К | ★5
19 комментариев
эх ктоб еще на пальцах объяснил что такое нейронная сеть... 

вернее что это такое понятно, а вот написать свою чот никак… начинаю разбираться и как баран на новые ворота смотрю на кучу формул… ну не математик я а там все объяснение в формулах идет (( 
avatar
Тихая Гавань, большинство и не пытается разобраться, а тупо юзает чужое ПО.
avatar
SergeyJu, ну имхо чужое ПО ничего не даст.. 

avatar
Тихая Гавань, почему эксель, ворд, базу данных, виндоус, наконец, можно использовать, не разбираясь в програмистских кишках, а сетевые пакеты нельзя?
avatar
SergeyJu, вы правы, я просто вообще не понимаю их, и не знаю с какой стороны к ним подойти.. 
непонятен принцип внутренней работы, а потому сужу как нуб в сем вопросе

avatar
Тихая Гавань, зачем писать свою? сейчас есть множество качественных, хорошо описанных библиотек
avatar
1. Мы зарабатываем не на направлении, а на сделке. Критерий настройки неверный.
2. Очень многие пытались настроить сетку как Вы, в лоб. Что-то не видать успехов В чем Ваши преимущества? 
avatar
SergeyJu, 
1. Пока сервис считает %win/loss, учитывая только выбор направления (угадали или нет). Возможно потом добавиться еще что то, учет drowdown и прочих вещей.
2. Акцент нужно делать на факторах/условиях, а не настройках нейросети. Если подавать факторы, в которых нет закономерности — никакая сеть не поможет. Это всего лишь инструмент, который позволяет искать закономерности и использовать их, при большом количестве факторов.
avatar
aimaster, Метод обучения сети ???
avatar
aimaster, Сколько гигабайт данных  я могу загрузить в  ваш сервис?
avatar
aimaster, Если сеть не делает сделок , а пытается  просто угадать знак, то как ее вообще оценивать?
avatar
Алексей Никитин, никак. Типичная ошибка новичка.
avatar
Алексей Никитин, если говорить о сервисе на ai-finmarkets.ru, то эту сеть никак не надо пока оценивать. В ней нет ничего особенного (обычная ltsm). Пока все, что предлагает сервис — это оценить не сеть, а именно Ваши данные. Вы загружаете файл с данными, смотрите процент угадывания направлений. Если он высокий — это повод задуматься о том, что в данных есть закономерность и стоит предпринимать какие то действия по дальнейшим исследованиям. Возможно в будущем в сервис добавятся дополнительные функции. Вы какие хотели бы видеть?
avatar
aimaster, значение имеет все, и архитектура сети, и качество входных данных, и критерии настройки. В общем, нужна упорная творческая работа. Потому и нет массового внедрения сетей в трейдинг, что на тяп-ляп не выходит цветочек аленький, а серьезно самостоятельно работать умеют далеко не все. 
avatar
SergeyJu, согласен с Вами, что все должно учитываться. Но, как мне кажется, из «и архитектура сети, и качество входных данных, и критерии настройки» трейдер должен заниматься вот этим «качество входных данных», остальное должно быть в виде библиотек, инфраструктурных сервисов и программных решений. 
avatar
Нейронная сеть,  очень очень простая штука. Если рассматривать крайне  упрощенную модель, то  считайте что 1  нейрон  это  sma пусть гибкая  но все же sma.  в  итоге  получаем дикую комбинацию разных sma.

Но главное это обучить сеть. Т.Е  подобрать адскую кучу весов  внутри каждой sma так  чтобы  в итоге получился нужный результат.

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

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

Читайте на SMART-LAB:
🔄 ВТБ Мои Инвестиции обновили тарифы. Насколько это интересно?
С 1 августа в ВТБ Мои Инвестиции начали действовать обновленные тарифы. Если посмотреть на изменения целиком, видно, что основной акцент сделали на...
Фото
«Ренессанс страхование» запустила реферальную программу для партнеров
Группа запустила реферальную программу для партнерской сети. Новый механизм позволяет действующим агентам, брокерам, субагентам и любым рефералам...

теги блога aimaster

....все тэги



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