Открытая конференция Клуба инвесторов

Практический вебинар

Вы не авторизованы

Нажмите войти или зарегистрироваться, чтобы воспользоваться дополнительными возможностями сайта.

Курсы Fin-plan

Мои портфели

Избранное

Нажмите войти или зарегистрироваться, чтобы воспользоваться дополнительными возможностями сайта.

Алгоритмическая торговля на финансовых рынках

Fin-Plan Алгоритмическая торговля на финансовых рынках

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

1200-600.png

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

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

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

Рассмотрим следующие вопросы:

  • Предпосылки для создания алгоритмической торговли.

  • Варианты использования алгоритмической торговли.

  • Виды алгоритмических торговых систем.

  • Принципы работы алгоритмической торговли.

  • Технические средства для алгоритмической торговли.

  • Преимущества и риски алгоритмической торговли для инвестора.

Предпосылки для создания алгоритмической торговли

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

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

Объемы данных о сделках на биржах росли, и следующей задачей для инженеров стала автоматизация брокерских услуг и самого процесса торгов — поиска контрагентов и заключения сделок. Благодаря этому сегодня мы можем в одно мгновение отправить заявку на покупку или продажу, находясь при этом где угодно, а не в «биржевой яме».

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

Алгоритмическая торговля

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

Посудите сами:

  • Мы медленно считаем, медленно обрабатываем и передаем информацию. Современные компьютеры делают это в миллионы раз быстрее.

  • Мы не можем удержать в голове слишком много информации. По крайней мере так, чтобы не наделать глупостей при её обработке. Возможности компьютеров здесь почти безграничны.

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

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

История полна курьёзных случаев чисто человеческих ошибок. Например, в 2006 году трейдер компании J.P.Morgan просто ошибся клавишей, в результате чего выставил на продажу не те акции. Позже компании пришлось выкупить их по более высокой цене, в результате чего убыток составил порядка $50 млн.

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

Давайте посмотрим, как именно применяются сегодня компьютерные алгоритмы в инвестициях и трейдинге.

кнопка РФ апрель.png

Варианты использования алгоритмической торговли

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

Поэтому мы рассмотрим всё, что обычно описывается этим термином, а именно — 4 категории:

  • Дробление больших позиций

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

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

  • Высокочастотный трейдинг

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

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

  • Управление капиталом

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

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

  • Торговые системы

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

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

Виды алгоритмических торговых систем

Существует две устоявшихся категории алгоритмических торговых систем — автоматическая (АТС) и механическая (МТС).

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

Виды алгоритмических торговых систем

Принципы работы алгоритмической торговли

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

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

Принципы принятия решения

Стоит отметить, как торговые системы принимают решения. Самые простые системы основываются на четких правилах с установленными параметрами. Например, самая известная стратегия — пересечение скользящих средних (moving average, MA). Мы можем обозначить два правила:

  • если быстрая MA(5) пересекает медленную MA(20) снизу вверх — покупаем,

  • если сверху вниз — продаем.

Эту стратегию часто приводят как самый простейший пример, и вряд ли стоит ждать от нее результатов. Но, тем не менее, мы как минимум должны подобрать правильные значения периодов (5 и 20), которые обеспечат наилучший результат.

А если наша система использует 10 различных индикаторов, каждый из которых в свою очередь имеет несколько параметров? А также принимает решения о размере лота, или о контроле за стоп-ордерами. Здесь уж не то, что подобрать значения, вообще описать все возможные правила для всех ситуаций может оказаться непосильной задачей.

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

«Изюминка» в том, что эти связи настраиваются не вручную, как логические правила, а путем обучения. Подаем определенные данные, смотрим на результат — если плохо, система корректирует связи между узлами и пробует заново. Таким образом, можно натренировать нейросеть реагировать на определенные ценовые паттерны или закономерности в других показателях. Обученная нейросеть в итоге похожа на запутанный сложный алгоритм, который непонятно как, но работает. А это — главное!

Тестирование торговой системы в TradingView

Оптимизация и бэктестинг

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

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

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

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

Технические средства для алгоритмической торговли

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

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

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

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

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

Преимущества и риски алгоритмической торговли для инвестора

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

Алгоритмические системы позволяют:

  • протестировать свои гипотезы,

  • устранить эмоции из процесса торговли и принятия решений,

  • быстро проанализировать большой объем данных.

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

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

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

Можно купить готовые торговые системы. Но здесь есть риски. Это как покупка "кота в мешке" — принцип работы готовых торговых систем, как правило, не известен. Какими показателями ни хвастались бы продавцы, помните: «волшебной кнопки» не существует. Используйте алгоритмы в дополнение к своим знаниям и навыкам инвестиционного анализа.

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

Вывод

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

Биржевой торговый робот - в сущности, это всё та же старая добрая автоматизация труда, только с применением все более "умных" и производительных систем. Стоит ли использовать ли такой инструмент в работе? Решать только Вам.

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

Мы сторонники долгосрочных инвестиций. Наше мнение и убеждение подтверждается результатами работы инвестиционного портфеля нашего фонда, который с момента создания в 2015 году к 2021году вырос в сумме в 5,5 раз, в то время как рынок вырос в 2,3 раза. Эти результаты были достигнуты не машинными алгоритмами, а за счет точечного выбора лучших инвестиционных активов.

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

Инвестируйте в собственные знания и используйте лучшие инструменты для торговли!

Удачных инвестиций, друзья!

  • 2011

Рассказать другим про интересную статью


Открытая конференция Клуба инвесторов

Практический вебинар