Практическое применение нейронных сетей в трейдинге
В данной статье я хочу поднять тему применения нейронных сетей при создании торговых роботов. Это в узком понимании данной проблемы. В более широком аспекте — попытаться ответить на ряд вопросов и рассмотреть несколько проблем:
- Возможно, ли построить прибыльную систему используя машинное обучение?
- Что мы можем получить от нейронной сети?
- Логическое обоснование обучения нейронных сетей на принятие решения.
- Нейронная сеть — это сложно или просто?
- Как интегрировать нейронную сеть в торговый терминал?
- Как тестировать нейронную сеть? Этапы тестирования.
- Об обучающих выборках.
1. Возможно ли построить прибыльную систему используя машинное обучение?
Наверное, каждый новичок, который приходит на валютный рынок и пытается реально на нем торговать, не имея какой либо системы, брал в руки лист бумаги и рисовал на нем таблицу понравившихся индикаторов. Далее напротив каждого из этих индикаторов ставил либо плюсики и минусики, либо стрелочки, либо проценты вероятности движения цены, исходя из графика индикатора в терминале. Потом он подводил итог своим наблюдениям и принимал определенное решение на вхождение в рынок в определенном направлении, а если продвинулся еще дальше, то и решение входить ли в рынок вообще или оставаться вне него.
И здесь мы задумаемся — а, что же происходит в самой совершенной нейронной сети — нашем мозге. А, оказывается, все довольно просто — пронаблюдав эти индикаторы, у нас в голове складывается образ, какого-то одного, общего индикатора, подающего нам сигнал, на основе которого мы и принимаем решение. А если хотите, то цепочка сигналов складывается в индикатор. И тут нам приходится задуматься — если мы изучаем индикаторы в определенный момент времени и заглядываем в прошлое максимум на несколько периодов — как нам исследовать эти индикаторы одновременно на протяжении нескольких предшествующих лет и на основании этого исследования построить единый индикатор с дальнейшей возможностью его оптимизации.
Итак, мы получили ответ на второй вопрос — что мы можем получить от нейронной сети в результате ее обучения? И даже в большей мере надо вопрос перефразировать — что мы хотим получить от нейронной сети в результате ее обучения? А логически подумав, мы можем ответить и на первый вопрос положительно. Поскольку технически и программно это сделать возможно. Как это реализуется на практике, вы можете увидеть в видеоролике на моем канале в https://youtu.be/5GwhRnSqT78. А также посмотреть плейлист с видео онлайн теста нейросетевых модулей на этом же канале https://youtu.be/3wEMQOXJJNk
2. Логическое обоснование обучения нейронных сетей на принятие решения
Прежде чем приступать к разработке любой торговой системы, мы задаемся вопросом — на каких принципах данная система будет функционировать? У нас есть два основополагающих принципа использования флетов и продолжение тенденции. Не будем рассматривать более узкие производные от них, внутридневная торговля или нет, на фундаментальных данных, на новостях, на открытии рынков и т.д. Мне пришлось сталкиваться с описанием нейросетевых продуктов, где их авторы в примерах использования предлагали прогнозирование каких либо курсов — акций, валют и т.д.
1. График отклика нейросети обученной на прогнозе цены
Рассмотрев график отклика нейронной сети, обученной на прогноз цены, мы видим, что хоть он и повторяет график цен, но на один шаг от него отстает. Причем это не зависит от того, прогнозируем ли мы ценовые данные или производные от них. Исходя из этого, мы можем это заключение постулировать. Например: “То, что для нас вчера, для нейронной сети — сегодня”. Согласитесь, что здесь, в принципе, ни о какой полезности речи идти не может. Однако отмечу, что данный вариант при определенной доработке мы так же можем использовать.
Но мы, конечно, хотели бы использовать постулат :“То, что для НС сегодня, для нас — завтра”. Машина времени какая-то. Однако мы понимаем, что все-таки самая лучшая нейронная сеть — это наш мозг. И мы можем использовать этот постулат максимум с 50% успехом (если мы говорим о вероятности да или нет), а то и хуже. Но ведь есть еще и третий вариант: “То, что для НС вчера, для нас — сегодня”. Или так: “ То, что для нас сегодня, для НС— вчера”. Разберем, что для нас означают эти постулаты в трейдинге:
- первый — мы совершаем сделку и завтра получаем ответ от НС — открылись в правильном направлении или нет. Хотя мы это уже знаем и без НС.
- второй — мы получаем информацию от НС, совершаем сделку и завтра видим, правильная рекомендация была или нет.
- третий — мы получаем информацию от НС, когда нам надо совершить ту или иную сделку вернее надо ли нам совершать сделку в настоящий момент, и в каком направлении.
Первый вариант, естественно, мы отбрасываем сразу. А вот второй и третий для торговли подходят. Однако второй вариант — вариант как бы заглядывания в будущее. Утрировано этот вариант торговли заключается в том, что мы получаем сигнал от НС в определенный момент времени, например, по закрытию дня с прогнозом, как закроется следующий день (и в данный момент времени нас не интересует движение цены до закрытия сделки). Реализовать его для чисто механической торговли на данном этапе сложно (для прибыльной торговли). Смысл третьего варианта заключается в том, что мы отслеживаем отклик НС на протяжении торговой сессии и покупаем либо продаем, интерпретируя его. И здесь нам надо понять основное.
Какой из вариантов мы сможем реализовать, зависит от того, как мы будем обучать нейронную сеть. И согласитесь, что третий вариант реализовать все-таки легче. Если во втором мы будем использовать какую-либо информацию с прицелом на получение результата на следующий день — его закрытия (день выбран как пример, естественно, может быть какой-либо другой период), то в третьем варианте мы используем информацию, пришедшую за шаг до принятия решения — куда двинется цена в этот момент времени. В своих системах я придерживаюсь третьего варианта.
3. Нейронная сеть это сложно или просто?
Если мы говорим о разработке системы торговли с помощью нейронных сетей, то естественно возникает вопрос – а где же нам взять саму нейронную сеть, как ее обучить и интегрировать в торговый терминал. На данном этапе я пока использую готовые НС “NeuroSolutions” и Matlab. Эти платформы позволяют выбрать подходящую вам нейронную сеть, обучить и довести ее до исполняемого файла с подходящим вам интерфейсом. В результате сама программа нейронной сети может выглядеть вот так:
2. Модуль нейронной сети, созданный в среде Matlab
3. Модуль нейронной сети, разработанный с помощью Neuro Solutions
Изучая возможности применения нейронных сетей на финансовых рынках, я пришел к заключению, что сети необходимо использовать не только в качестве основного поставщика сигналов на принятие решения, но также и как прекрасную возможность разгрузить программную часть эксперта торгового терминала. Представьте, что вы решили написать эксперт, который будет использовать десяток индикаторов, а у индикаторов различные параметрами, плюс их надо будет анализировать и сравнивать на какой-то временной глубине, плюс вы будете использовать несколько временных окон.… Получится довольно-таки перегруженный эксперт для реальной торговли, и что немаловажно, его будет сложно протестировать.
Но мы можем переложить функцию терминала по расчету индикаторов на нейронную сеть, обучив их определенным образом. И далее обучать нейронную сеть уже на этих индикаторах. То есть от эксперта нам понадобится передать в модуль нейронной сети только относительные ценовые данные, которые используются в формулах индикаторов. И впоследствии принять от нейронной сети несколько “единичек” и “ноликов” и, сравнив их, принять решение.
Давайте посмотрим на примере стохастического осциллятора, что у нас получится. Вот такие ценовые данные мы будем использовать в качестве входов, и в качестве одного обучающего примера мы будем использовать сам индикатор.
4. Ценовые данные
После обучения нейронной сети, она нам выдаст вот такой результат.
5. Отклик нейросети
Для лучшего визуального исследования мы перенесем эти данные в виде индикатора в торговый терминал.
6. Стохастик и нейросетевой индикатор
В верхнем окне мы наблюдаем индикатор, построенный терминалом, а ниже – нейронной сетью.Даже визуально можно понять, что индикатор, построенный нейронной сетью, имеет все характеристики стандартного индикатора – уровни, пересечения, развороты, дивергенции и т.д. Хотя мы для обучения сети не использовали ни одной сложной формулы.
Таким образом, мы можем нарисовать вот такую блок схему торговой системы.
7. Блок-схема торговой системы
Блоки “MT4” – это наш торговый эксперт. Файл цен – “Input_mat”. Файл сигнала – “Open1,2,3”. Примеры этих файлов представлены в следующем разделе.
Основная работа у нас предстоит с блоками “Net1” и “Net2”. Подготавливая их, нам надо будет использовать несколько скриптов и экспертов для подготовки исторических данных и для тестирования сигналов от этих блоков нашим торговым экспертом. Но на самом деле, когда наша система готова как комплекс, ее модификация, развитие, экспериментирование с ней не занимает много времени. В качестве примера вы можете просмотреть видео https://youtu.be/k_OLEKJCxPE . То есть подготовка файлов, обучение “Net1” и “Net2” и первый этап тестирования на котором мы можем оптимизировать нашу систему, занимают 10 минут.
4. Интеграция нейронной сети в торговый терминал
Интеграция нейронной сети и торгового терминала особой проблемы не составляет. Этот вопрос я решил путем передачи информации через файлы, создаваемые терминалом и программой нейронной сети. Если кто-то скажет, что это замедляет действия системы на принятие решения, то я остановлюсь на основных достоинствах такого способа передачи информации. Ну, во-первых, информация, передаваемая терминалом, минимальна – всего несколько десятков байт. Посмотрите на строку файла, который записывается терминалом.
8. Файл нормализованных цен
Хотя сам способ передачи информации программно нам дает возможность открываться только на следующем тике после прихода сигнала от нейронной сети. Но если система не использует супер краткосрочные моменты совершения сделок, это не существенно. Забегая вперед, отмечу, что в данной статье я рассматриваю систему “по ценам открытия”. И опять-таки, забегая вперед и исходя из вышесказанного, мы приходим к выводу, что системы с таким способом передачи информации требуют тестов либо по контрольным точкам, либо по всем тикам. Тесты систем на нейронных сетях на контрольных точках и всех тиках практически идентичны. Хотя ранее, при разработке традиционных торговых роботов, я сталкивался с проблемой значительного ухудшения итогов торгов при переходе на тест по всем тикам.
Но основным достоинством такого способа передачи информации является то, что мы на каждом этапе можем контролировать передаваемые и получаемые данные. Это я считаю одним из основ дальнейшей успешной торговли с использованием нейронной сети. И кажущаяся громоздкость подготовки самой нейросетевой системы, в результате оборачивается достоинством при реальной работе, так как мы уменьшим до минимума вероятность получения программной ошибки либо ошибки логико структурной схемы системы. Все-таки сама система перед ее применением требует поэтапного тройного тестирования. На этом мы остановимся подробнее позднее.
На рисунке ниже мы видим файлы “Input_mat” и “Bar”. Эти файлы формируются торговым терминалом. Файлы “Open1,2,3” формируются программой НС. Единственное небольшое неудобство заключается в том, что в программе НС нам надо явно задавать пути, к этим файлам исходя из того, в каком качестве мы используем эксперт – тестируя его или реально с его помощью торгуя.
9. Файлы сформированные нейросетевым модулем и экспертом
Файл “Bar” – вспомогательный и используется в качестве счетчика.
В файлы “Open1,2,3” мы непосредственно получаем отклик НС. Первая строка – предшествующий отклик. Вторая – отклик в реальном времени. Данный формат является частным случаем. В зависимости от условий ведения торгов он может отличаться. Как и само количество файлов откликов. В данном случае это обусловлено тем, что в самом модуле НС используется три сети, обученные на разных временных отрезках.
10. Отклик НС модуля в файлах Open 1,2,3
5. Как тестировать нейронную сеть? Этапы тестирования
При подготовке торговых систем на основе нейронных сетей я использую три этапа тестирования. Первый этап я назвал быстрым тестированием. Это основной этап подготовки системы в смысле ее общей работоспособности. На этом этапе мы систему можем оптимизировать, и на оптимизацию у нас не уходит много времени. Здесь мы используем скрипт или эксперт для подготовки файла исторических данных после “истории”, на которой мы обучали нейронную сеть и по текущее время. Потом мы по этим данным получаем отклики от сети с помощью скрипта из среды матлаб и по ним строим индикатор. С помощью этого индикатора мы и оптимизируем наши НС отклики на вхождение в рынок и выход из него. На рисунке ниже приведен пример этого индикатора. Этот индикатор является интерпретацией 52 производных от 12 пользовательских индикаторов. Хотя это могут быть и стандартные индикаторы терминала.
11. Индикатор построенный по откликам нейросети
Далее мы можем оптимизировать нашу стратегию торговли.
12. Результаты тестирования откликов нейросети
Второй этап проведения тестов заключается в том, что мы должны обучить и записать нейронные сети в среде Matlab с помощью Neural Network Toolbox.
13. Neural Fitting
14. Полученные нейросети
Получить отклик от этих нейронных сетей из командного окна.
15. Получаем отклики от нейронных сетей
Таким образом, мы получим еще один индикатор, причем он должен быть идентичным предыдущему. Естественно, идентичным должен быть тест стратегии, построенной на его основе.
Если у нас все получится, то можно двигаться далее.
И протестировать эти НС с помощью скрипта модуля нейронной сети, который мы будем использовать в системе. Протестировать их на каком либо временном отрезке по контрольным точкам. Если этот тест совпадет с идентичным временным отрезком предыдущего теста индикатора, то мы движемся в правильном направлении. Мы запускаем этот скрипт в среде Matlab. Одновременно с этим запускаем наш рабочий эксперт в торговом терминале.
16. Запустим скрипт в рабочей среде Matlab
17. Запустим эксперт в терминале
Получим примерно такой результат.
18. Результат тестирования скрипта Matlab и эксперта MT4
Далее нам надо оформить интерфейс пользователя, скомпилировать модуль нейронной сети и протестировать его предыдущим способом.
19. Тестируем скомпилированный нейросетевой модуль
Если мы получим схожий с предыдущим результат, то можно приступать к реальной торговле по нашей нейросетевой системе.
5. Об обучающих выборках
В зависимости от того, на каких обучающих выборкам мы будем подготавливать нейронную сеть, мы получим различные индикаторы отклика сети. И, следовательно, сможем строить различные стратегии торгов. А комбинация различных стратегий даст нам более стабильный конечный результат. Один вариант я представил в предыдущих разделах. Там мы делали выборку по экстремумам торгового периода. Приведу еще один пример.
20. Индикатор откликов нейронной сети обученной по иной выборке
В данном случае я обучал две нейронные сети. Одну на покупку, вторую на продажу. Тренировку проводил на выборках, когда минимальная цена достигнута, а максимальная еще нет. И наоборот. В двух индикаторах, представленных на рисунке, интерпретированы двенадцать пользовательских индикаторов. Максимумы красной линии показывают, когда достигнута минимальная цена. Максимумы серой – максимальная цена. Как мы видим, теперь есть возможность оптимизировать данные индикаторы либо отдельно каждый или в паре. Например, по пересечению друг с другом, по разнице значений, по пересечению определенных уровней и т.д.
Согласитесь, что двенадцать индикаторов оптимизировать гораздо сложнее.
Заключение
На тему применения нейронных сетей в трейдинге написано много статей. Литературы, в которой бы полностью раскрывалась данная тема на предмет доведения системы построенной на нейронных сетях до реального ее применения, очень мало. Да и многие описания предназначены в основном для пользователей со специальными знаниями в программировании. В одной статье, да и в нескольких, данную тему раскрыть сложно. Но я попытался это сделать без нагромождения теоретического и специального материала в книге “Нейросетевая торговая система. MetaTrader 4 + MATLAB. Пошаговая разработка. Издание второе”.
Предупреждение: все права на данные материалы принадлежат MetaQuotes Ltd. Полная или частичная перепечатка запрещена.
Нейросети на Форекс – кто их использует и есть ли в них смысл?
В современном мире все глубже в нашу жизнь проникают искусственный интеллект, самообучаемые голосовые помощники и анализ Big Data. Простые люди сталкиваются с этим чаще всего в формате приложений для смартфонов, но факт остается фактом – нейросети, или же самообучаемые компьютерные системы уже повсюду, даже если мы их не видим.
На протяжении многих лет, года эдак с 2006, программисты пробуют внедрять нейронные сети и в трейдинг. Идея кажется интересной – подстраивать торговлю автоматически под постоянно меняющийся рынок. Но как дела обстоят на практике?
Многие из нас постоянно находятся в поиске новых стратегий и тактик торговли на рынке Форекс. Каждая найденная система подвергается тестированию на историческом периоде различной длины. В идеале тестирование должно выявить такие паттерны, которые работали бы на достаточно длительном промежутке времени.
В реальности это нерешаемая задача – торговые системы «сливают», проработав от трех месяцев до нескольких лет. Продлить «срок службы» помогает оптимизация, но в конечном итоге приходится искать другой подход к рынку Форекс.
Феномену выхода из строя стратегий Форекс дают много объяснений, но стоит обратить особое внимание на одну из причин, способную со временем свести на нет все старания заработать на валютных спекуляциях, – эволюцию нейросетей. Что это такое, и как искусственный интеллект может повлиять на трейдинг, – в нашем сегодняшнем материале.
Когда заработки на Форекс были большими
Многие трейдеры, охватывающие прогонами тестов всю историю валютных торгов, с начала 90-х до настоящего момента, часто замечают падение производительности стратегий на отрезках 2001-2008 и 2013 годов. Они связывают выход из строя торговых систем с экономическими кризисами, но это лишь одна из причин, причем далеко не самая важная.
Рынок Форекс девяностых годов буквально «раздавал» деньги первым участникам торгов, установившим торговые терминалы, подключившись к сети Интернет, и использующим достаточно простые тактики, описанные в книгах трейдеров восьмидесятых. Заработку не мешали даже временные лаги, баги платформ, большие спреды, низкая скорость подключения ко Всемирной Паутине.
Борьба за пинг и низкие комиссии брокеров началась в 2001 году, когда на рынке стали массово появляться роботы и скальперские стратегии, изменившие форму трендов. Развитие робототехники заставило маркет мейкеров больше полагаться на анализ потока ордеров клиентов, «охотиться за стопами», применять различные уловки, управляя толпой с помощью автоматизированных стратегий.
Трейдеры ответили тем же: торговые платформы XXI века стали анализировать потоки ордеров фьючерсов и Открытый Интерес опционов, объемы торгов сопоставлялись со свечным анализом (VSA), на рынке «прописались» программисты и математики, создавшие множество разнообразных советников.
В 2008 году стратегии вышли за пределы булевой математики: рынок стал осваивать нелинейные индикаторы и эконометрику, которые уже было невозможно «повторить» в стандартных торговых терминалах. Негласные рейтинги брокеров Форекс зафиксировали в этот момент падение результативности у клиентов.
Новые подходы пока не получили широкого распространения в среде трейдеров из-за специфики темы эконометрики, а также сложности и дороговизны использования аналитических программ. Однако в 2013 году появилась еще одна «беда»: на рынке Форекс начал активно развиваться искусственный интеллект, который может практически не оставить возможностей для ручного и автоматического заработка.
Что такое нейросеть простыми словами
Тема нейросетей «выстрелила» в 2011 году, и за 8 лет она проникла во все сферы. Сейчас никого не удивить голосовыми помощниками, управляющими «умными домами», распознаванием лиц и т.д.
Во втором десятилетии XXI века нейросеть средней сложности обыгрывает гроссмейстеров в шахматы, а искусственный интеллект высшего порядка способен решать сложные логические задачи. Ярким примером возможностей ИИ является титул чемпиона по китайским шашкам Го у нейроробота Google.
За этим развитием стоит почти вековая эволюция: мало кто знает, что первой созданной нейросети скоро исполнится 80 лет. Благодаря Уоррену Маккалоку и Уолтеру Питтсу ученые стали работать над созданием вычислений, подобных работе нейрона человеческого мозга.
Каждому из них можно задать свой математический алгоритм работы, настроенный на обработку входных данных определенного формата. Управляет этой системой параллельных вычислений выходной нейрон, подбирающий итоги работы, чтобы подогнать результаты под правильный ответ.
Ответы предоставляет человек, – это называется процессом обучения сети, который является обязательным этапом на пути создания нейросети. Выходной нейрон должен стремиться выстроить процесс вычислений среди нейронов таким образом, чтобы при получении различных выходных данных находить показанные ему человеком результаты.
Настройка или “тренировка” сети перед ее запуском очень похожа на тестирование стратегий, – сеть раз за разом запускает вычисления и выделяет с помощью весовых коэффициентов наиболее значимые для правильного ответа алгоритмы. Пользователь определяет работу искусственного интеллекта по математическому отчету погрешностей.
Так же, как и в стратегии Форекс, когда нейросеть начинает выдавать раз за разом удовлетворительный результат, запускается форвард-тест на реальных, но уже прошедших событиях с известным исходом. Если сеть проходит эти испытания, она принимается в работу. При этом никогда не известно до конца, чему именно и как научится искусственный интеллект: результат и сам процесс работы алгоритмов нейронов внутри – это «черный ящик».
Приведу два примера. Первый – из теории распознавания лиц. Любому из нас в общих чертах знаком процесс составления фоторобота – подбор губ, лба, овалов лица и т.д. Нейросеть решила эту задачу по-своему и достаточно просто.
Нейроны заполняют поле любого фото крестиками размером в пиксель, с помощью анализа которых обнаруживаются границы изображения. После удаления размытых областей начинается подсчет по диагонали и горизонтали. Оказывается, при таком «измерении лица» получаются уникальные суммы, соответствующие конкретному человеку, если соблюдать масштаб и пропорции, которые определить не сложно.
Другой курьезный случай, часто вспоминаемый при обучении нейросети, – попытка американских военных научить беспилотники обнаруживать военную технику, распознавая ее тип с воздуха. Многочисленный показ снятых в различных условиях самолетов, танков, орудий и вертолетов, привел к тому, что ИИ стал идеально определять погодные условия, но так и не научился искать технику.
Чем опасно применение искусственного интеллекта на рынке Форекс?
Нейросеть изменит валютные спекуляции, брокеры могут вернуться к тактике, чем-то похожей на «кухни», только в глобальном масштабе. Фактически безграничные возможности нейросетей можно применять против толпы, прогнозируя не курсы валют, а модель поведения каждого отдельного трейдера. Маркет мейкеры и прайм-брокеры смогут подбирать контрстратегии, охотясь за стопами, расширяя спреды в момент вывода заявок на рынки, выставлять фантомные объемы в стаканах с опережением, а не по факту.
Спроектированная и запущенная стартапом Sentinent Technologies нейросеть уже может эмулировать 1800 рабочих сессий, прогнозируя с высокой точностью до триллиона (!) когнитивных моделей поведения реальных трейдеров. Система тренировалась на потоках ордеров, взятых из книги заявок бирж и серверов брокеров.
Качество и количество данных – залог успешной тренировки нейросетей; архивы тиковых сделок, разбитые по конкретным счетам, – самый ходовой товар на рынке дата-майнинга. Этим термином названа отдельная отрасль, добывающая, анализирующая и форматирующая первичную входную информацию для нейросети.
Другой столп, определяющий успех работы системы, – количество нейронов в «черном ящике». Чем оно выше, тем больше требуется вычислительных мощностей, которые вышли за рамки стандартных процессоров CPU. Проектировщики и создатели нейросетей используют чипы, изготовленные под заказ на специальных интегральных схемах. Идея взята у майнеров криптовалют, добывающих Bitcoin и другие монеты на ASIC-оборудовании.
Даже если брокерам не удастся изучить модель поведения трейдеров и успешно играть против стратегий толпы, они создадут высококлассные прогностические системы, которые уже не повторить в торговых терминалах. Современные торговые системы, работающие на рынках акций, товаров и валют, читают и понимают новости, распознают паттерны, то есть представляют собой аналитика с мозгом суперкомпьютера. Так работает, например, робот Emma.
Некоторые компании используют трейдеров напрямую, чтобы обучить машину самым удачным стратегиям, прошедшим конкурсный отбор. Компания Numerai проводит постоянные турниры, не скрывая своей цели и даже предлагая победителям получать постоянные дивиденды пропорционально вкладу в общую торговую систему нейросети.
Марк Линд из отдела компании IBM, проектирующего и запускающего нейросети по корпоративным заказам, особо отметил «нейробум» в конце 2017 года. Более 90% поднятых IT-гигантом сетей в отрасли экономики относились к прогнозированию курсов валютных и биржевых рынков.
Системы практически не использовали теханализ, работая с реальными данными товарно-денежного потока, анализируя деловую прессу и финансовые индикаторы, данные по производству, политические новости, отчеты по качеству продукции независимых экспертов и даже погоду. Алгоритмы нейронных сетей IBM не столько прогнозировали рыночные цены, сколько изучали реакцию толпы на те или иные фундаментальные новости и индикаторы, которые отражалась не только на рынке, но и в соцсетях.
Такая тенденция доказывает тезис, что компании больше изучают не поведение рынка, а реакцию толпы на события, часть из которых можно предсказать, узнать с помощью инсайда или вызвать косвенными манипуляциями, не связанными с торгами. В этом случае у Регуляторов не будет повода для наказания крупных компаний.
Искусственный интеллект в крупных инвестиционных фондах и банках
Одной из первых компаний, применивших искусственный интеллект для прогноза рыночных движений, стала Renaissance Technologies – компания, управляемая талантливыми математиками, принципиально нанимающими сотрудников с нулевыми знаниями трейдинга и теханализа.
Компания отличается низкой текучестью кадров, которые смогли создать полностью роботизированный фонд Medallion, показавший среднюю доходность 35% годовых за 20 лет управления инвестициями.
Самая радикальная замена трейдеров искусственным интеллектом произошла в Goldman Sachs, – «кузница кадров для Госдепа» сократила штат на 99%.
Известная всему миру инвестиционная компания BlackRock доверила нейросети Aladdin до 10% от всех портфелей и проводит тотальный аудит всех принятых решений аналитиками компаний. Такое решение было принято после падения доходов в 2018 году. Фонд отметил успехи конкурентов из Азии, где сейчас проходит нейробум в сфере инвестиций, на бирже Гонконга уже несколько лет успешно работает Aidyia Limited – хедж-фонд под полным управлением ИИ.
Как искусственный интеллект меняет доверительное управление?
Нейросеть заменила инвестиционных консультантов, персональных менеджеров и доверительных управляющих. Стартапы и крупные компании уже несколько лет предлагают подобных помощников, способных на 100% подстроиться под каждого конкретного клиента. Нейросеть изучает его предпочтения и привычки, чтобы индивидуально подобрать уровень риска и состав портфеля, предложить подходящие рынки и оптимальный мани менеджмент.
Подобные помощники разрабатываются для BlackRock стартапом FutureAdvisor, тестируются Motif Investing в партнерстве с JPMorgan и создаются UBS на базе SigFig.
Согласно исследованиям и опросам McKinsey, фокус группы инвесторов, следующих советам нейроконсультантов, опережает средний результат по рынку доверительного управления «живых» аналитиков на 7% годовых.
Помимо роботов от банков и крупных брокеров, на рынке финуслуг появилось отдельное направление по созданию нейростратегий «под ключ», например, Binatix. А также целая сфера услуг дата-майнинга – предоставление информации для нейросетей, отформатированных под любой конкретный рынок, как в случае со стартапом BUZZ Indexes.
На российском рынке нейросети использует компания БКС, управляя портфелями акций. Роботы приносят инвесторам от 30 до 70% доходности, обгоняя по результативности бенчмарк в виде курса S&P.
Роботы-консультанты, спроектированные на нейросетях, запущены в инвестиционных сервисах Яндекс.Деньги (Yammi) и банка Тинькофф. Заявленная и прогнозируемая доходность инвестиций составляет двузначную цифру. Ее трудно верифицировать из-за малого срока работы платформ, составляющих чуть больше года.
Как создать собственную нейросеть?
Прогнозирование валютного рынка Форекс с помощью искусственного интеллекта доступно «простым смертным». Нейросети участвуют в различных чемпионатах по алгоритмическому трейдингу, проводимых международными ассоциациями брокеров с 2008 года.
Собрать собственную стратегию можно на специализированных платформах: neuroshell, matlab, statistica, deductor или brainmaker. Трейдеры со знанием языка программирования могут воспользоваться специальными сервисами от Google, Microsoft, Amazon и т.д.
Чтобы максимально упростить сложные процессы обучения нейросети и выбора входных данных, трейдер может воспользоваться различными шаблонами и приложениями, собранными по типу блочного конструктора стратегий.
Заключение
Первая волна интереса к нейросетям накрыла Форекс в 2006-2008 годах. Экономический кризис и недостаток входных данных значительно уменьшил ряды энтузиастов. Трейдеры и компании так и не смогли показать долгосрочных стабильных результатов, которые бы могли оправдать высокую стоимость торговых платформ на нейросетях. Вторая волна, стартовавшая в 2011-2012 годах, привела к выпуску готовых продуктов в 2016-2018 годах, которые еще не успели показать объективные для оценки результаты.
Компании, рекламирующие нейроэдвайзеров, и фонды, управляемые нейросетью, скрывают графики доходности; многие ПАММ-счета, запущенные в Альпари на нейросетях, слиты к моменту написания статьи.
Учитывая скудное или даже полное отсутствие результатов доходности по нейросетям (на весь сервис myfxbook пять систем, 4 из которых уже закрыты), наряду с успехами искусственного интеллекта в других областях можно предположить, что эта тема пока используется только крупными брокерами и биржами.
Нейросетевой советник
Как считают оптимисты, нейросетевые советники — это будущее трейдинга. Крупные таймфреймы показывают ярко-выраженные трендовые участки. Цена не движется хаотично, так как график не подходит близко к прямой.
На рынке «Форекс» по-прежнему существуют свои алгоритмы. Как раз нейронные сети и смогут позволить еще ближе подойти к их пониманию.
Стоит ли скачать нейросетевого робота?
В идеале нейросетевой советник должен проходить полностью все стадии торгового процесса самостоятельно, совершенно без человеческого участия. Обычные роботы периодически подлежат оптимизации, нужно грамотно все настроить для прибыльного результата. Соединение достоинства автоматической торговли (соблюсти правила стратегии, холодный расчет) и обучаемости (этого лишены стандартные торговые программы Forex) позволит использование нейросетевых систем.
Несмотря на разнообразие роботов для электронного валютного рынка, все равно есть искушение делегировать компьютеру даже эту роль. Автоматический советник для «Форекс» на основе нейронной сети может сделать реальным такой вариант.
Как действует нейросетевой робот?
Нейросетевая торговая система на «Форекс» должна проводить точную классификацию событий, основываясь на входящих данных. Обычные советники критерий для выполнения такого подхода оставляют неизменным. В результате, при смене тенденции он продолжает торговать по старым правилам и успешно сливает весь Ваш счет на рынке Forex. Робот, основанный на нейронной сети, должен распознавать обновление курсов автоматически и меняет правила торговли без участия трейдера.
В настоящее время эффективность нейросетевых автоматических торговых систем применима для результатов технического анализа. С их помощью хорошо можно наладить индикаторные стратегии. Не стоит ожидать серьезных изменений в решении этого вопроса до момента создания реального искусственного интеллекта.
Base — true пишем файл с базой векторов, false торгуем с классификацией. Обязательно сначала нужно протестировать эксперта с Base = true, и только потом тестировать с Base = false.
buy_threshold = 0.6 порог на все Buy позиции. Если вероятность покупки выше этого порога, то эксперт покупает. Этот параметр относится к тестированию с Base = false.
sell_threshold = 0.6 аналогично параметру buy_threshold.
inverse_position_open_? = true — Если вероятность сделки на покупку очень мала то значит вероятность продажи очень велика. Этот параметр позволяет открывать сделки когда возникают такие ситуации.
invers_buy_threshold=0.3 порог, когда вероятность прибыльной Buy позиции меньше то входим на Sell
invers_sell_threshold=0.3 аналогично invers_buy_threshold.
График тестирования без применения метода k-ближайших соседей
Источник https://www.mql5.com/ru/articles/7031
Источник https://tlap.com/nejroseti-na-forex/
Источник https://tradexperts.ru/torgovye-roboty-foreks/nejrosetevoj-torgovyj-robot-knn