Биржевой торговый робот на Искусственном Интеллекте «АТОМ». История создания, принципы торговли, дальнейшие цели

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Я начал интересоваться биржевой торговлей 15 лет назад, после того, как прочитал книгу Ричарда Смиттена "Жизнь и смерть величайшего биржевого спекулянта". В этой книге автор рассказал историю жизни трейдера Уолл-стрит, Джесси Ливермора, который смог дважды предсказать падение фондового рынка в 1907 и 1929 году и заработать на этом в переводе на современные деньги миллиарды долларов. Перед смертью Ливермор написал книгу "Как торговать акциями", в которой поделился своими математическими формулами для определения уровней поддержки и сопротивления, тренда и ценовых паттернов.

Около 10 лет назад я увлекся программированием. В 2016 я прочитал книгу Скотта Паттерсона «Кванты». Книга рассказывает историю зарождения Количественных Хеджевых Фондов, которые используют математический и статистический анализ больших данных с помощью суперкомпьютеров. Именно после прочтения этой книги я понял, что мои навыки программирования и интерес биржевой торговлей должны быть направлены только в одну цель, разработать своего собственного интеллектуального робота и свой собственный количественный хеджевый фонд.

Я уже знал, фундаментом для моего робота будут формулы Ливермора. Было нелегко понять его формулы, которые даны как набор поясняющих правил для заполнения таблицы. Около 30 правил, в которых чтобы сориентироваться, нужно приложить огромные усилия, особенно учитывая, что есть лишние правила, и правила в которых допущены логические ошибки. Но это еще не все препятствия, которые оставил Джесси Ливермор, вероятно для того, чтобы мы приложили некоторые умственные усилия, а не получили совсем бесплатно плоды почти 50 лет его исследований ценовых движений.

В 2018 году приблизительно через 2 года после прочтения книги «Кванты», я не только понимал полную формулу Ливермора, но и запрограммировал ее. Также вдохновленный книгой «Кванты» я интересовался наукой «Искусственный интеллект». К началу 2019 года все было готово к началу тестов на живом рынке, для этих целей был открыт торговый брокерский счет и 1 февраля 2019 года торговый робот сделал свои первые сделки. Первые положительные торговые результаты были получены к началу 2020 года. Некоторое время робот торговал в плюс, после чего рынок менялся, и он переставал работать. Приходилось менять торговые алгоритмы, подстраивать их под новые рыночные условия. Но через время робот снова переставал торговать в плюс. Однажды, после очередной такой перенастройки, я увидел, что настроил торговую систему робота так, как она уже была настроена в прошлом. Стало понятно, нужна не одна универсальная торговая стратегия, а много торговых стратегий и их настроек. Именно тогда я начал формулировать свои принципы создания самообучающегося торгового робота.

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

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

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

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

По моему мнению, торговые стратегии не создаются в результате тестирования на тестере стратегий, и это один из моих ключевых принципов. Я разрабатывал торговые стратегии на основе опыта автоматизированных торгов на живом рынке, а тестер стратегий на основе торговой системы. Тестер стратегий не может быть применим ко всем стратегиям и рынкам. Его эффективность зависит от многих факторов, таких как ликвидность, время удержания позиции, вид торгового ордера, и даже места входа и выхода из сделки. Например, на живых торгах в определенной сделке стоп-лосс робота составил 50 пунктов, в то время как стоп-лосс по той же сделке, но на тестере, составил 20 пунктов. При разработке тестера нужно учитывать все эти нюансы. Стратегия, которая работает на тестере, может не работать на живом рынке, вот почему для разработки тестера и тестирования на нем торговых стратегий, так важен большой опыт автоматизированных торгов на живом рынке.

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

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

На данный момент времени я не готов говорить о конкретных цифрах доходности торгового робота по ряду объективных причин. Например, одна из причин заключается в том, что при разработке робота было невозможно получить чистую статистику в отчетах брокера из-за частых изменений программного кода, а также возникающих сбоев и ошибок которые влияли на результат при тестах. Получить отлаженный программный код и соответственно полностью завершенный рабочий продукт возможно только после долгих лет проб и ошибок, которые теперь уже позади. По моим наблюдениям возможная цифра годовой доходности на срочном рынке Московской биржи может составлять около 30 – 50 процентов при риске не более 10 процентов от депозита. На других рынках цифра будет отличаться из-за торгового плеча (гарантийного обеспечения или маржи).

Основная дальнейшая цель это запуск торгового робота на постоянной основе в целях получения брокерских отчетов позволяющих делать конкретный вывод о работоспособности торгового робота. В 2021 году была проведена подготовительная работа по созданию и запуску Количественного Хеджевого Фонда (КХФ) «ЭЛЕКТРОН». Была разработана и протестирована автоматизированная система финансового учета (АСФУ). Основная задача АСФУ распределять прибыли и убытки от торговых операций КХФ «Электрон» между его инвесторами, в зависимости от их доли в фонде. Дальнейшая работа над АСФУ будет направлена на создании функционала, позволяющего создавать финансовые отчеты и статистику по всем счетам инвесторов фонда.

Хочу поблагодарить всех, кто на протяжении всех этих лет поддерживал проект самообучающегося торгового робота «АТОМ» и количественного хеджевого фонда «ЭЛЕКТРОН», ваше доверие и поддержка позволила пройти самый сложный этап разработки первой версии робота. Именно люди, поддерживающие КХФ «ЭЛЕКТРОН» являются прочной опорой, важнейшей составляющей проекта, что гарантирует его успех.

Большое Вам Спасибо за поддержку проекта!

Моя группа вконтакте:
https://vk.com/spekulation

Моя страница вконтакте:
https://vk.com/denis_kiber

Источник: https://habr.com/ru/post/673880/


Интересные статьи

Интересные статьи

Хотели бы свой дистанционно управляемый танк? В этой статье я расскажу про общие принципы танкостроения из доступных материалов.
Голосовые и чат-роботы прочно вошли в нашу жизнь и уже никого не удивляют. Мы общаемся с ними каждый день, они записывают нас на приём к врачу, сообщают время доставки заказов, а также рекламируют всё...
Недавно поменял работу, на новом месте столкнулся с нечитабельной структурой базы данных MSSQL, в которой таблицы и поля не имеют понятных названий (префикс + число). Например: таблицы называются Data...
На свете существует много хороших библиотек, фреймворков, операционных систем — всего того, из чего разработчики конструируют свои продукты. Иногда в этом разнообразии можно просто утонуть, особенно е...
— Ok, Google. Что такое «роботовладение»? — Возможно, вы имели в виду «рабовладение»? Кода-то капитализму предшествовало рабовладение. Рабы для хозяев являлись лишь средствами производства, ...