Категория: Разное / Дата: 14.06.2019

Роботы для автоматизированной торговли — обзор, плюсы и минусы

5 (100%) 1 vote[s]

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

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

1. Что такое торговые роботы простыми словами

Торговые роботы (trade robots) — это компьютерная программа, которая написана таким образом, чтобы автоматически совершать торговые операции на бирже. Иногда их еще называют "механическими торговыми системами", "советниками" или "ботами".

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

На языке Форекса механические торговые системы называются здесь "Советниками" (англ. Experts), на сленге говорят "сова".

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

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



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

Еще Ларри Вильямс в 1990-ых годах искал закономерности в поведении рынков. Он делал это в основном на фондовом рынке и сырье. Эти исследования дали ему важные статистические данные, которые он превратил в превосходные результаты своей торговли. Он находил закономерности на рынках с вероятностью выигрыша в 60%. Однако, с тех пор рынок сильно поменялся. Да и что сравнивать то время? Это был один из самых сильных и длительных бычьих рынков. Думаю, что без всяких автоматических систем и вмешательства по принципу "купи и держи" можно было сделать очень хорошую прибыль.

2. Классификация автоматических торговых систем

Стратегии лежащие в основе торговой системы базируются следующих принципах

  1. Трендовые. Открывают позиции по тренду. Пожалуй самые прибыльные (по моему опыту). Они могут длительное время не давать прибыль, но зато когда на рынке возникает тренд, то они покроют все убытки и выходят в плюс.
  2. Пробойные. Ищут точки входа на пробоях уровней. Их результаты напоминают трендовые роботов, поскольку множество ложных сделок с небольшими убытками компенсируются парой "мощных" прибылей.
  3. Флэтовые (контртрендовые). Торгуются в канале, когда на рынке флэт или консолидация. Чаще всего в основе лежит осцилляторы перекупленности и перепроданности. Дают частую прибыль, но небольшую. Не эффективны в период трендов.
  4. Скальпинг. Поиск точек входа на минутных графиках. Имеют кучу сделок, но с минимальным профитом. Такой подход торговли приносит прибыль прежде всего брокерам, поскольку они зарабатывают большие деньги на комиссиях.
  5. Нейронные сети. Этот класс появился сравнительно не давно (с 2014 года). Однако какой-то супер популярности торговые системы на основе нейронных сетях пока не приобрели. На рынке можно найти такие системы в продаже, но далеко не факт, что в их алгоритме действительно лежит нейронные технологии.

Поскольку на рынке Форекса чаще всего присутствует флэт в небольшом диапазоне (1-2%), то на чаще всего используют флэтовых и скальпирующих роботов. На фондовых биржах лучше работают пробойные и трендовые.

Также можно классифицировать роботов по работе с капиталам (мани менеджмент). Этот фактор имеет огромное значение:

  1. Мартингейл. Усреднение убыточных сделок по системе Мартингейла крайне популярный механизм в роботах. Плавный график роста депозита радует глаз, однако такая картина всегда заканчивается полным сливом денег. Достаточно рынку пройти без отката хотя бы 5%. Самые длительные прибыльные серии без сливов могут продолжаться 2-3 года.
  2. Фиксированный лот. Вне зависимости от ситуации на рынке всегда открывается позиция на один и тот же размер.
  3. Плавающий. В зависимости от силы сигнала может открываться разное число лотов.
  4. В зависимости от баланса. Устанавливается какой-то процент от баланса, на который всегда открывается сделка. Если робот торгует успешно, то размер лота автоматически увеличивается.

3. Стоит ли пользоваться торговыми роботами

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

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

Те кто думает, что автоматизированные программы решат все финансовые вопросы — ошибаются. У роботов полно проблем (чуть ниже мы поговорим о них), о которых мало кто говорит. Задумайтесь: "почему создатели этих программ, которые продают свои продукты с якобы доходностью в 100% в месяц не стали мульти миллионерами"?

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

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



4. Сколько можно заработать на роботах

Надеяться на сверх доходы не имеет смысла. Если робот давал 10% в месяц, то и рисковал он на эти же 10%. Какой бы не была "продвинутой" торговая система, она не может давать прибыль без риска.

Адекватная прибыль, которую реально получать стабильно — это 5%-10% годовых в долларах. Много ли это? Не особо, если учесть тот факт, что еврооблигации Газпрома, ВТБ или же ETF фонды корпоративных облигаций могут давать такую же прибыль без каких-либо действий.

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

Роботы могут давать прибыль, но она не стабильна. Сложно не выключить робота, если он закрыл 20 сделок в минусе и слил 15% депозита. При этом что курс валюты реально опустился на 2%. Трейдер начинает задумываться о целесообразности, может система перестала работать в плюс и т.д. Такие сомнения не дают нормально и продуктивно жить (по-крайней мере мне не давали). При этом в следующем месяце за 2 сделки вполне вероятен рост на 25%, который отобьет потери.

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

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

Впрочем такая ситуация при самостоятельном трейдинге также случается. К примеру, Вы продали актив, который падал, а на следующий день он вырос на 3%.

5. Как попробовать торговый робот в действии

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

Для начала скачайте Metatrader 4. Есть 5 версия, но для ознакомления я рекомендую использовать 4. Большинство советников написано под эту версию. Скачать Metatrader можно на официальном сайте терминала или же скачать его через Форекс брокера:

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

С установкой терминала будет еще установлена специальный редактор Meta Editor. Он напоминает редактор языка Си со встроенными функциями для разработки роботов. Здесь же можно писать свои индикаторы.



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

Далее скачайте какого-нибудь робота из открытых источников. Вставьте код. Выглядеть это будет примерно так:

Далее скомпилируйте проект (кнопка компилировать или F7):

Теперь торговый робот (советник) появится в торговом терминале Metatrader 4:

Его можно быстро оттестировать прогнав на истории. Можно выбрать любой диапазон дат и спред (про спред мы поговорим отдельно почему этот параметр так важен).

После прогона будет представлена таблица всех сделок, график баланса, загрузка кредитного плеча и отчет.

Также здесь можно оптимизировать робота путем прогона параметров. Входные параметры выбираются в процессе разработки. Например, это могут быть размеры стоп-лосса, периоды индикаторов (например, скользящие средние, если они используются) и т.д. Оптимизация может занимать существенное время.

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

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

Чтобы робот работал нужен всегда включенный терминал, бесперебойный интернет и постоянно работающий компьютер. Не очень удобно спать в одной комнате с включенным компьютером. Я использовал для этого свой старый ноутбук, поскольку он не так шумит и нет необходимости в приобретении отдельного источника бесперебойного питания (ИПБ). Но интернет дома все равно иногда отваливался на 5-10 минут, что может быть критично для рынка.

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



6. Стоит ли покупать роботов

На мой взгляд, прибыльных роботов никто продавать не будет. По-крайней мере я своих роботов никогда не предлагал. Зачем их продавать, если они приносят прибыль? Проще вложить в них побольше своих личных денег и "молча" зарабатывать.

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

Чаще всего роботы используют крупные фонды (хедж-фонд, ПИФы), где есть отдел для автоматизированной торговли. Благодаря способностям программистов и опыту трейдеров здесь рождаются интересные решения, которые работают внутри компании. Но даже они не дают роботам большие деньги.

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

7. Какие проблемы существуют у биржевых роботов

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

1 Решить вопрос с постоянно работающим компьютером и интернетом. Это самая простая и решаемая проблема. На нее потребуется лишь часть денег и какой-то мониторинг того, что все работает.


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


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

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


4 Учет спреда. Казалось бы такой мелочный вопрос как спред не должен никогда вызывать каких-то проблем. Я впервые столкнулся с этой ситуаций, когда начал замечать, что торговля моих роботов ведется никак я ожидал. То есть в какие-то моменты он входит в сделку, хотя на истории этой сделки нет. Я почти месяц разбирался и понял, что проблема в спреде.

Напомню, что спред — это разница между ценой покупки и продажи. Цену покупки и продажи называют Аск (Ask) и Бид (Bid) соответственно. У Форекс брокера которого я торговал был плавающий спред. Это означало то, что он мог расшириться с 10 пунктов вплоть до 500. А тестирование робота проводится на фиксированном спреде. Я даже написал скрипт, который бы улавливал максимальные расхождения.

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

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

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

А в тестере на истории из-за того, что спред не раздвигался, сделка была открыта на 100 пунктов ниже. В итоге стоп-лосс не был задет и мы эту сделку закрыли в плюсе спустя пару дней.

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


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

Например, история за 10 лет показала, что 9 лет были положительными, а 1 год отрицательным. При чем падение было в предыдущем году (это тревожный сигнал). А набор других параметров дал рост на протяжении двух последних лет, а на остальных 8 годах робот вел себя непонятно (то падал, то рос, короче не было роста). Что выбрать? Это сложный вопрос, на который нет точного ответа. Возможно, что два этих набора параметров будут убыточны.


6 Что делать с роботом, если он стал сливать за последний месяц? Посмотреть историю и на основе этих данных сделать вывод? Но рынок не может быть на 100% цикличным. К примеру, если предыдущие убыточные серии были по 5 сделок, то в этот раз они могут быть 8. И это несмотря на 10 летнюю историю.

Остановить торговлю не проблема. Однако после этого система может быстро наверстать упущенное, но уже без Вас.



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


8 Один и тот же робот не будет работать эффективно на разных валютных парах и тем более на рынке акций. Под каждый инструмент нужны свои параметры.

8. Плюсы и минусы

Плюсы
  • Автоматическая торговля не отнимает времени, сил, эмоций.
  • Быстрая скорость операций. Правда этот плюс скорее подойдет для скальпинга
  • Отсутствие эмоций. Но по себе знаю, что когда следишь за роботами и у них появляется солидная прибыль, то руки тянутся закрыть сделки.
  • Точное следование стратегии
  • Возможно торговля на нескольких парах, акциях
  • Подробная автоматическая статистика
Минусы
  • Результаты далеко не стабильные
  • Высокая доходность чревата высокими рисками
  • Необходимо следить за работой системы
  • Рынок быстро меняется, старые схемы перестают работать

Смотрите также видео "Как зарабатывать при помощи торговых роботов на MQL5? (Иван Зайденберг)":



Написать ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.