Создание роботов для торговли

Строим роботов для торговли. Что нужно знать новичку?

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

Начни пользоваться ATAS абсолютно бесплатно! Первые две недели использования платформы дают доступ к ее полной функциональности с 7-дневным лимитом истории..

Введение. Человек не робот.

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

«Errare humanum est — человеку свойственно ошибаться». Римский ритор Луций Анней Сенека.

Человеческие ошибки трейдера:

Механический. В 2014 году трейдер Mizuho Securities случайно разместил на японском фондовом рынке заявки на покупку на сумму 600 миллиардов — цена и объем занесены в одну колонку. К счастью, большинство заказов не было выполнено к моменту их отмены. Аналитический. «Неправильная оценка силы и слабости рынка. Не заметил важного уровня! » Организационная. «Пропустил новости и открытие торговой сессии — пробки». Психологический. Отдельная тема.

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

Трейдер прилагает больше усилий для преодоления ошибок. Ему нужно все больше и больше времени, и стандартного рабочего дня становится недостаточно. Это приводит к хронической усталости, апатии и депрессии. И торговец сгорает.

И тут возникает идея нанять робота. .

Здоровая идея, но не новая. Первую концепцию автоматической торговой системы представил Ричард Дончиан в 1949 году, когда он разработал программируемый набор правил для покупки и продажи акций..

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

Почему роботы завоевывают рынки? Кто, кроме роботов, может:

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

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

Создание роботов для торговли торгового алгоритма

2. Типы торговых роботов.

Современный рынок предлагает ряд торговых роботов на любой вкус и кошелек..

По уровню сложности роботы могут быть:

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

По степени автоматизации роботы могут быть:

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

По частоте выполнения роботы могут быть:

Стандартные частотные роботы. Такие роботы торгуют с той же частотой, что и средний трейдер-человек. Их алгоритмы часто основаны на классических индикаторах и моделях поведения цены и объема. Высокочастотные роботы. Роботы для высокочастотной торговли (HFT) покупают и продают позиции за доли секунды. По оценкам, на HFT приходилось 60-73% от общего объема торгов на рынках США в 2009 году, а в 2012 году он упал примерно до 50%. Комплексный анализ фундаментальных факторов не входит в задачи HFT-роботов. Они нацелены, например, на подталкивание цены в определенном направлении, сбор ликвидности, формирование ложных паттернов, удержание ценовых уровней и торговый импульс..

3. Купить или построить.

Купить существующий торговый алгоритм или разработать свой собственный?

Плюсы покупки существующего робота:

экономит время; доступно для новичков. Продавец роботов обычно оказывает поддержку в решении проблем при установке робота..

Минусы покупки существующего робота:

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

Альтернативная идея — создать собственного торгового робота с нуля..

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

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

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

4. Где найти идеи для торгового робота.

Хорошо известны модели торговли скользящими средними и другими техническими индикаторами. Какие еще идеи могут быть конкурентоспособными и долгое время приносить прибыль??

Создание роботов для торговли робот

и формируются за конкретный период — 5, 10, 30 мин.

Попробуйте посмотреть на рынок под другим углом. Например, трейдеры обычно используют графики, на которых ось X — это временная ось, а свечи формируются за определенный период времени — 5, 10 и 30 минут..

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

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

Однако если присмотреться, большая часть графика находится в промежутке времени в 3 секунды. Только высокочастотные алгоритмы способны работать с таким диапазоном..

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

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

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

Эта простая, но нестандартная идея основана на визуальном обнаружении паттернов и может быть положена в основу торгового алгоритма. Вы хотите чего-нибудь особенного? Скачайте ATAS и найдите свою уникальную торговую идею.

5. Этапы построения торгового робота..

Рассмотрим процесс создания робота с нуля. Мы не будем учитывать особенности рынков, платформ и бирж. Базовая схема выглядит следующим образом:

Все начинается с идеи. Вы замечаете определенный паттерн, который регулярно появляется на вашем рынке, и понимаете, что он интересен с точки зрения потенциальной возможности получения прибыли в долгосрочной перспективе. Ручное тестирование. Вы формулируете условия входа / выхода и изучаете, как они работают на графиках предыдущих сессий. Желательно анализировать как можно больше дней, включая периоды различной волатильности. Вставьте результаты каждой даты в таблицу. Если вы получили положительную сумму и теперь уверены, что идея работает — посетите программиста. Техническое задание. Найдите программистов, которые имеют хотя бы общее представление об обменах, потоках заказов, процедуре сокращения заказов и других вещах, связанных с обменом. Вы находите такого исполнителя, даете ему конкретные инструкции и ждете, когда приедет ваш робот. Бэк-тестирование и оптимизация. Получив своего робота, вы начинаете его тестирование на исторических данных. Загружать в торговый алгоритм максимально подробные исторические данные (может быть сложно найти тиковую торговую историю). Затем мы меняем настройки робота до тех пор, пока не найдем оптимум, при котором робот обеспечивает наилучшие результаты с приемлемыми потерями. Фронтальное тестирование. Порядок оформления заказа. Робот входит в торговлю на небольшом объеме. Будьте готовы к тому, что реальные рыночные результаты могут быть хуже. Как вариант, такая ситуация может быть результатом недостаточной проверки алгоритма на исторических данных..

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

6. Расходы на разработку и эксплуатацию..

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

Однако предположим, что у вас есть робот. Это приносит больше прибыли, чем убытков на рынке. Что дальше? Вы можете запустить робота на своем локальном компьютере. Но есть риск отключения питания или интернета. Хакеры сломают ваш офис или уборщица пролит воду на ваш компьютер. Всякое случается.

Есть более надежный вариант — сотрудничество с биржей. У нас есть 2 варианта:

Установка вашего робота на компьютеры, которые находятся в дата-центрах биржи; Установка собственного оборудования в центре обработки информации. Эта услуга называется co-location и предполагает дополнительные расходы. Так, например, Московская Биржа предоставляет возможность разместить ваше оборудование на своих площадях — оборудование мощностью не более 500 Вт за 20 000 рублей в месяц (все тарифы смотрите)..

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

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

7. Выводы.

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

Однако, если ваш робот нацелен не на борьбу с другими роботами, а на помощь вам в торговле — это более простой способ. Такой алгоритм может:

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

Похожие статьи