ПРАВИТЕЛЬСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «Национальный исследовательский университет «Высшая школа экономики». Факультет бизнес-информатики Кафедра бизнес-аналитики ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА На тему "Анализ и компьютерное моделирование поведения игроков финансовых рынков путём выявления и группировки торговых стратегий" Студент группы № 474 Тимофеев Евгений Дмитриевич Руководитель ВКР доцент кафедры бизнес-аналитики кандидат наук Перминов Геннадий Иванович Рецензент профессор кафедры бизнесаналитики доктор наук Кирсанов Александр Петрович Москва, 2013 2 Оглавление Введение .................................................................................................... 3 I.Цели, задачи и ключевые термины ................................. 4 I.I. Объект исследования ......................................................... 4 I.II. Предмет исследования ..................................................... 6 I.III Обоснование выбора темы ............................................ 10 I.IV. Метод исследования и ограничения ............... 13 I.V. Теория и используемые термины .......................... 15 I.VI. Современное состояние и планы по дальнейшему изучению проблемы .............................. 22 I.VII. Обобщение целей и задач ............................................ 23 II. Метод исследования и описание модели ........... 24 II.I. Цели создания модели ...................................................... 24 II.II. Описание модели ................................................................... 25 II.III. Описание компьютерной реализации модели ...................................................................................................... 32 III. Результаты исследования ............................................... 38 III.I. Текущее состояние исследования .................... 38 III.II. Описание тестового эксперимента ............... 39 III.III. Объяснение результатов .......................................... 44 Заключение ............................................................................................. 47 Список литературы........................................................................ 50 3 Введение В данном исследовании планируется изучить ряд вопросов, связанных с фондовой биржей. Рынок ценных бумаг стал неотъемлемой частью экономической реальности. Сегодня агрегированные фондовые индексы и фондовые индексы по секторам служат показателями эффективности экономики целой страны. В то же самое время значительную долю сделок на рынке составляют сделки, совершаемые роботами - компьютерными программами, выставляющими заявки на бирже в соответствии с некоторыми торговыми алгоритмами. Ошибки и недочёты при проектировании торговых алгоритмов и программировании роботов могут послужить причиной существенных падений всего рынка. Это распространённая точка зрения институтов регулирования рынка ценных бумаг. Регуляторы обвиняют алгоритмическую торговлю в "раскачивании" рынка. Насколько это обвинение справедливо можно выяснить только путём серьёзного изучения данного вопроса. Данное исследование постарается расставить все точки над i в данном вопросе и выяснить, каково же на самом деле влияние на поведение рынка роботов и алгоритмической торговли. На данный момент исследований, детально изучающих данный вопрос, нет или же ему уделено незначительное внимание. Дело, скорее всего, в том, что это очень узкая и специфическая тема, и исследователи до неё ещё не добрались. Тем не менее, это важный вопрос. Международный финансовый кризис 2006-2009 годов был во многом спровоцирован финансовым сектором экономик ведущих стран мира. Понятно, что основное влияние оказали необеспеченные ипотечные кредиты, но и влияние перегретых фондовых рынков, а косвенно и алгоритмической торговли, исключать нельзя. Следовательно, нужно решить этот вопрос и установить те возможные воздействия, которые может оказывать на рынок алгоритмическая торговля. Этому и посвящено данное исследование. 4 I.Цели, задачи и ключевые термины I.I. Объект исследования Данное исследование имеет своим объектом финансовые рынки. Поскольку провести всесторонний анализ всех видов финансовых рынков в рамках текущего исследования не представляется возможным, и, кроме того, ввиду специфики предмета исследования, будет рассмотрен только частный случай рынка ценных бумаг. Как известно, рынок ценных бумаг делится на биржевой рынок и на внебиржевой рынок. Специфика предмета исследования ограничивает данное исследование только биржевым рынком. Необходимо охарактеризовать биржевой и внебиржевой рынки. В соответствии с федеральным законом "О рынке ценных бумаг" от 22.04.1996 №39-ФЗ под фондовой биржей понимается организатор торговли на рынке ценных бумаг, отвечающий ряду требований, описанных в этом ФЗ. А вот понятия внебиржевого рынка в российском законе нет. Поскольку в рамках данного исследования юридические аспекты не столь важны, будем понимать под внебиржевым рынком такой рынок, на котором сделки по ценным бумагам осуществляются сторонами напрямую, либо через посредника, вне биржи, зачастую с заключением традиционного договора купли-продажи. Далее, под рынком ценных бумаг будет пониматься биржевой рынок. На фондовой бирже можно выделить трёх основных участников торгов. Это организатор торгов, брокеры и частные лица. Помимо них можно назвать управляющих, дилеров, Центральный Банк Российской Федерации, но их участие в торгах связано со спецификой, которая в данном исследовании не изучается. Понятие биржи было выяснено ранее. В соответствии с ранее упоминавшимся федеральным законом "О рынке ценных бумаг" от 22.04.1996 №39-ФЗ брокером признаётся лицо, осуществляющее сделки с ценными бумагами от имени и за счёт своего клиента при поступлении соответствующего поручения от последнего. Законом установлено, что 5 частные лица, т.е. трейдеры, к торгам напрямую не могут быть допущены. Они могут принимать участие в торгах только при посредничестве брокеров. 6 I.II. Предмет исследования Можно поставить различные вопросы при изучении рынка ценных бумаг. Так, изучению подлежат особенности функционирования рынка, история рынков ценных бумаг, характеристики участников торгов, вопросы макроэкономики и политики в связи с биржевой торговлей, капитализация биржи, инфраструктура проведения торгов, процесс торговли, принципы торговли и поиск оптимальных методов, управление портфелями и многое другое. Часть этих вопросов хорошо изучена или находится в центре внимания исследователей. К ним относятся все вопросы, связанные с анализом ценных бумаг, повышением доходности и снижением рисков. Такой интерес легко объяснить тем, что ответы на эти вопросы способны повысить благосостояние отвечающего. Однако, имеется ряд вопросов, связанных с фондовой биржей, которые оказались вне внимания исследователей. Таковыми являются, например, вопросы о влиянии эндогенных, т.е. внутренних, факторов на состояние рынка. К эндогенным факторам можно отнести всю специфику биржи и участников торгов, особенности процесса торговли, влияние на состояние рынка алгоритмической торговли. К экзогенным факторам можно отнести макроэкономические, политические, социальные факторы, а также факторы, связанные с хозяйственной деятельностью акционерных обществ, акции которых принимают участия в торгах. Экзогенные факторы, как уже было замечено ранее, исследованы в большей степени по сравнения с эндогенными. В качестве предмета исследования была выбрана алгоритмическая торговля на рынке ценных бумаг. В общем случае, алгоритмическая торговля есть формализованная система совершения сделок на финансовых рынках в соответствии с некоторым алгоритмом, который строится на основе одной или нескольких торговых стратегий. Алгоритмическая торговля может быть изучена с двух различных позиций. Во-первых, она может быть изучена с позиции построения оптимальных алгоритмов и оптимизации торговых 7 стратегий, максимизирующих прибыль и минимизирующих риски или оптимизирующих другие параметры торговли. В данном направлении написано много и будет написано ещё больше книг и проведено исследований. Во-вторых, алгоритмическая торговля может быть изучена с позиции влияния, которое различные её проявления оказывают на нормальный ход торгов. Под нормальным ходом торгов следует понимать такой ход торгов, который существовал во времена, предшествовавшие появлению алгоритмической торговли или, по крайней мере, её стремительному распространению. В данном исследовании внимание будет сконцентрировано именно на втором подходе. Следует отметить, что алгоритмическая торговля используется с двумя различными целями. Во-первых, алгоритмическая торговля используется для совершения спекулятивных сделок. Во-вторых, алгоритмическая торговля используется для оптимизации совершения крупных сделок по цене в некотором допустимом диапазоне. Последний подход применяется владельцами крупных пакетов акций и институциональными инвесторами. Он необходим, чтобы обеспечить получение нужного количества акций без оказания существенного влияния на цены. Разумеется, алгоритмы, применяемые в первом и во втором случаях, кардинально различаются. Данное исследование посвящено первому типу алгоритмической торговли. Далее, под словами "алгоритмическая торговля" будет пониматься именно спекулятивная, зачастую высокочастотная, торговля. Алгоритмическая торговля появилась относительно недавно. Развитие ИКТ, проникновение персональных компьютеров в домашние хозяйства и появление глобальной сети Интернет явилось тем набором условий, которые были необходимы для перехода торговли в сеть, что, в свою очередь, было необходимо для появления алгоритмической торговли. Сейчас брокеры предоставляют выгодные тарифы, и любой желающий может принять участие в торгах, имея скромный начальный капитал. Поэтому число 8 участников на биржах неуклонно растёт, в том числе и на фондовых. Доля алгоритмической торговли варьируется в различных странах и на различных торговых площадках. Так, в США доля высокочастотной алгоритмической торговли оценивается в 73% от объёма торгов. Статистику по высокочастотной торговле собирают брокеры. Понятно, что при совершении сделок с меньшей частотой, брокер не сможет отличить алгоритмическую торговлю от традиционной. В любой сделке принимают участие два лица. Поэтому, возможны следующие варианты сделки: оба участника совершают сделку в рамках высокочастотной алгоритмической торговли, только один участник совершает сделку в рамках высокочастотной алгоритмической торговли, либо ни один из участников не использует высокочастотную алгоритмическую торговлю. Возникает закономерный вопрос относительно адекватности приводимой статистики. Единственное, что можно сказать с уверенностью, так это то, что доля торговых роботов, опирающихся на торговые алгоритмы, на рынке растёт. Следует отметить, что эти показатели будут зависеть от конкретных финансовых инструментов. На соотношение алгоритмической торговли и обычной торговли будет оказывать влияние ликвидность конкретного инструмента, скорость изменения цен, а также размер колебаний цен, т.е. волатильность. Ещё один фактор, оказывающий влияние на это соотношение заключается в комиссионных сборах, которые будут рассмотрены далее. Алгоритм торговли строится на основе торговых стратегий. Торговая стратегия представляет собой набор правил реакций на сигналы к осуществлению сделок. Торговые стратегии формируют сигналы на основе индикаторов. Индикатор - это некоторое математическое преобразование рыночных данных (цены открытия или закрытия, максимальной и минимальной цены, объёма торгов), используемое с целью представления общедоступной информации о торгах в удобном для принятия решения о сделке виде. Для пояснения уместно привести пример индикатора и торговой 9 стратегии. В качестве популярного индикатора можно назвать индикаторы, основанные на функции скользящей средней (англ., moving average). Скользящая средняя - это функция, значение которой в каждой точке определения равно среднему значению за предыдущий период определённой ширины. Простейший алгоритм торговли, основанный на одной скользящей средней, использует для принятия решений канал торговли. Канал образуется сдвигом скользящей средней вниз и вверх на некоторую величину. Сделки осуществляются на нижней и верхней границах канала. Существует множество алгоритмов с одной или несколькими скользящими средними. Общее число различных алгоритмов оценке не поддаётся. 10 I.III Обоснование выбора темы В данном исследовании планируется изучить то, какое влияние оказывает алгоритмическая торговля и различные распределения торговых стратегий на рынке на поведение рынка, т.е. на такие параметры, как волатильность и ликвидность финансовых инструментов. Этому вопросу не было уделено достаточного внимания. Тем не менее, данный вопрос актуален. Ранее было показано, что доля алгоритмической торговли растёт. Институты регулирования рынка ценных бумаг поднимают вопрос о правомерности использования торговых роботов и алгоритмической торговли, а также о необходимости и возможности введения ограничений или полных запретов на такую торговлю. Одновременно с этим число участников торгов и капитализация рынка ценных бумаг растёт. Получается ситуация, при которой ликвидность становится принципиально важным параметром рынка. С точки зрения регулятора, рынок должен быть высоколиквидным, но волатильность должна быть снижена. Здесь требуется пояснить используемые термины. Так, под ликвидностью в контексте данного исследования принято понимать степень конвертируемости акций в деньги. Иными словами, ликвидность определяет то, насколько быстро могут быть проданы акции на фондовой бирже. Волатильность - это статистический финансовый отклонения показатель, по рассчитывающийся историческим данным, на основе который стандартного определяет степень изменчивости цен. Иными словами, волатильность определяет то, насколько сильно цены могут меняться в заданный промежуток времени. Вышеприведённые характеристики финансового инструмента важны для всех участников торгов. Рост числа участников торгов повышает количество сделок, а, следовательно, и их частоту. Алгоритмическая торговля повышает ликвидность рынка. Следовательно, прежде чем вводить ограничения на такую торговлю, необходимо отрицательные стороны. 11 выяснить все её положительные и Изучения влияния алгоритмической торговли на ликвидность и волатильность рынка ценных бумаг будет включать в себя определение факторов, оказывающих такое влияние, систематизацию этих факторов и формулирование выводов. Всё это будет проделано с помощью некоторых методов, которые будут описаны далее. Тот факт, что изучение данного вопроса представляет практический интерес для институтов регулирования рынка ценных бумаг, было определено ранее. Помимо регуляторов, следует назвать другие группы интересов, которые могут воспользоваться результатами исследования. К ним относятся сами трейдеры, т.е. лица принимающие участие в торгах в роли продавцов и покупателей. Для них интерес будет состоять в лучшем понимании рынка и факторов, на него воздействующих. Разумеется, удачно подобранная стратегия и настройка алгоритма позволит получать стабильный доход при минимальном понимании рынка. Однако, однажды такая стратегия перестаёт быть эффективной. При таком подходе трейдер не сможет выяснить причину утраты эффективности его стратегией. Чем лучше трейдер понимает рынок, тем больше вероятность того, что свою стратегию он сможет сознательно скорректировать. Для этого нужно понимать не только принцип работы рынка, но и причины и особенности его поведения. Кроме того, теоретически возможно выявить некоторые виды или группы торговых стратегий и алгоритмов по их влиянию на рынок. Иными словами, можно выявить нерушимые связки паттернов поведения рынка, которые по отдельности не встречаются. Не исключено, что это позволит приблизительно оценить долю алгоритмической торговли на рынке и точнее определить принципы поведения рынка. Возможно, понимание влияния различных распределений торговых стратегий позволит трейдерам лучше выбирать стратегии для прибыльной торговли. Для крупных участников торгов это будет не менее важно, поскольку крупные участники оказывают влияние на рынок своими 12 сделками. Знание того, какое влияние окажет та или иная стратегия, позволит осуществить удачный выбор из множества стратегий. Научная новизна от проведения данного исследования состоит в получении новых существенных сведений о данном предмете. Изучение вопроса влияния алгоритмической торговли позволит установить дополнительные факторы, оказывающие влияние на рынок ценных бумаг, устранив, таким образом, возможный пробел в научном знании. Практический интерес представляет применение моделирования в качестве метода исследования данного вопроса. О методе исследования будет сказано далее. 13 I.IV. Метод исследования и ограничения В рамках текущего исследования будет определено только качественное влияние, но впоследствии, данное исследование может быть положено в основу исследования по определению количественного влияния алгоритмической торговли на рынки ценных бумаг. Помимо этого, в данном исследовании не учитываются многие особенности реальных рынков ценных бумаг. К таким особенностям относятся маржинальная торговля, маркетмейкеры, макроэкономическая статистика и новостные факторы, разнообразие финансовых инструментов и разнообразие типов финансовых инструментов. Рассматриваются только длинные позиции по обыкновенным акциям. Все эти ограничения вводятся из-за сложностей, возникающих при разработке модели, которая их учитывала бы. Таким образом, создаётся упрощённая модель, в которую не включаются многие факторы реального объекта исследования. Подобные ограничения, однако, не следует воспринимать как источник неточности или неполноценности модели. Дело в том, что такой подход, когда свойства реального объекта изучаются на примере максимально простой модели с последующим включением в неё дополнительных факторов, является распространённым подходом в науке вообще и в экономической науке в частности. Помимо простоты такого подхода, важна и другая его сторона. Появляется возможность изучения отдельного влияние каждого дополнительного фактора путём сравнения результатов базовой, т.е. максимально упрощённой модели, с результатами модели, в которую включен дополнительный фактор, дополнительная особенность реального объекта. В рамках данного проекта строится компьютерная имитационная модель фондовой биржи. Как уже замечалось ранее, строится максимально простая модель. Эту модель можно поделить на две принципиальных части. Первая часть является ядром модели. В неё включается работа биржи, исполнение заявок, поддержка различных типов заявок, управление 14 активами, настройка модели. Вторая часть включает в себя расширяемое множество торговых алгоритмов. Ядро модели в совокупности с алгоритмами торговли и составляет модель. Множество торговых алгоритмов расширяемо, что обусловлено необходимостью рассмотрения большого числа разнообразных алгоритмов. Это необходимо для утверждения результатов экспериментов с моделью. Только в том случае, если выводы подтверждаются на большом числе экспериментов, можно говорить об их надёжности. После построения модели реализуется несколько торговых стратегий. Проводится несколько серий экспериментов с различными комбинациями стратегий и различными распределениями значений параметров стратегий. Результаты таких экспериментов должны быть проанализированы вручную для формулирования выводов, определения закономерностей и логического объяснения с точки зрения финансов и экономики. Поскольку в данном исследовании значение имеет только качественная природа влияния алгоритмической применяется. 15 торговли, компьютерный анализ результатов не I.V. Теория и используемые термины В последующих главах будет дано детальное описание идеи, модели, результатов исследования. Так же будут сделаны выводы относительно самого исследования и относительно полученных результатов. Поэтому, здесь необходимо решить вопросы об используемой терминологии и дать определения ключевых терминов. В тех местах, где термины тесно связаны с финансовой теорией, будет представлено краткое изложение теории. Следует заметить, что часть терминов употребляется в том же или схожем значении на валютном рынке, рынке сырья, а так же в отношении других инструментов помимо обыкновенных акций на фондовой бирже. Чтобы не отходить от предмета исследования, все определения будут приводиться только в отношении рынка ценных бумаг и обыкновенных акций в роли ценных бумаг. На рынке ценных бумаг совершаются сделки купли-продажи. Любой рынок может быть описан в терминах спроса и предложения. На фондовой бирже, однако, существует специфическая терминология. Заявка на продажу акций называется аск (англ., ask). Такие заявки формируют предложение. Заявка на приобретение акций называется бид (англ., bid). Такие заявки формируют спрос. Сделка совершается только при наличии подходящих заявок. Подходящими в данном случае считаются противоположные заявки, т.е. аск и бид, у которых совпадают цены, или одна из заявок является рыночной (см. далее) при прочих равных, и при условии, что эти заявки первые в очереди на исполнение. На фондовой бирже возможно выставление заявок различных типов. Можно выделить условные и безусловные заявки. Существуют два базовых типа безусловных заявок: рыночный ордер (market order) и лимит ордер (limit order). Рыночный ордер, или рыночная заявка, - это заявка на покупку/продажу акций по наилучшей доступной на данный момент цене, которая называется рыночной ценой (market price). Такие заявки не дают никаких 16 гарантий относительно итоговой цены сделки. При высоковолатильном и, одновременно с этим, низколиквидном рынке возможны очень сильные движения цен в конкретный момент, поэтому рыночные заявки в такой ситуации несут некоторый дополнительный риск. Лимит ордер - это заявка на покупку/продажу акций по фиксированной цене, указанной в заявке, или по лучшей доступной цене. В отличие от рыночных ордеров, лимит ордеры дают гарантию относительно цены, но не дают гарантии относительно выполнения заявки. Так, если указанная цена далека от рыночной, заявка может не быть выполнена вообще. Помимо двух типов безусловных заявок есть ещё два типа условных заявок. Это стоп ордеры (stop order) и стоп лимит ордеры (stop limit order). Стоп ордер - это условная рыночная заявка. При прохождении специальной цены, которую называют стоп ценой (stop price), которая указывается в стоп ордере, на бирже размещается обычный рыночный ордер. Таким образом, стоп ордер - это условие для размещения рыночной заявки. В стоп лимит ордере указывается две цены. При прохождении стоп цены выставляется лимит ордер. Очевидно, стоп лимит ордер является комбинацией стоп ордера и лимит ордера. Любая сделка купли-продажи на традиционных рынках подразумевает сначала покупку некоторого актива, затем владение этим активом, а после в некоторых случаях его продажу. В терминологии фондового рынка этот тип сделок называется длинной позицией. Когда покупается некоторый актив, акции, в контексте данного исследования, говорят, что открыта длинная позиция. При продаже акций говорят, что длинная позиция закрыта. Другой тип позиций тесно связан с маржинальной торговлей. В контексте фондовой биржи под маржинальной торговлей понимается проведение в коротком периоде сделок по купле-продаже акций с привлечением денег и/или акций, полученных в кредит от брокера под залог маржи - заранее оговоренной суммы. Если в кредит выдаются акции, говорят о продажах без покрытия. Если денег или акций выдаётся больше, чем имеется на счёте трейдера, т.е. больше маржи, говорят о торговле с 17 кредитным плечом. Разумеется, трейдер обязан вернуть брокеру займ спустя некоторое время. Если трейдер не возвращает кредит в течение некоторого заранее оговоренного промежутка времени, обычно в течение текущей торговой сессии, он должен заплатить брокеру интерес в виде процента или фиксированной суммы. Продажа без покрытия - это продажа акций, которыми продающий не владеет. Эти акции заимствуются у брокера в рамках маржинальной торговли. Когда осуществляется продажа без покрытия, говорят, что была открыта короткая позиция. Когда после продажи акции покупаются с целью возврата их брокеру, говорят, что короткая позиция закрыта. Короткую позицию в англоязычном сообществе называют шорт (англ., short). Продажи без покрытия доступны не на всех биржах и не для всех инструментов. В Российской Федерации список ценных бумаг, по которым брокерам разрешено открывать короткие позиции своим клиентам, определяется Федеральной службой по финансовым рынкам (ФСФР). Так, на объединённой бирже ММВБ-РТС продажи без покрытия доступны для ограниченного числа акций первого эшелона, т.е. наиболее ликвидных акций. Это можно объяснить тем, что для низколиквидных акций третьего эшелона и далее вниз не всегда возможно вообще закрыть позицию - может не оказаться продавцов или покупателей. В этом случае трейдер не сможет вернуть брокеру одолженные акции. Поскольку принцип работы брокера не предусматривает каких-либо рисков, для таких акций короткие позиции, а зачастую и кредитное плечо, не доступны. Кредитное плечо - это отношение между заёмными активами и маржой. Иначе говоря, кредитное плечо определяет, то, во сколько раз больше средств может одолжить клиент у своего брокера, чем имеется на его, клиента, счёте. С кредитным плечом можно открывать как длинные, так и короткие позиции. При совершении сделок со своими средствами кредитное плечо считается равным 1 к 1. 18 С маржинальной торговлей тесно связано понятие маржин-колла (англ., margin call). Маржин-колл - это принудительное закрытие брокером открытой позиции своего клиента при маржинальной торговле, если убытки по открытой позиции достигли определённой величины. Брокер не должен терпеть убытки, поэтому он принудительно закрывает позицию, когда открытая позиция падает в цене на величину маржи. Чем выше плечо и, соответственно, меньше маржа, тем выше вероятность маржин-колла - даже при не столь высоких колебаниях цен на рынке, вполне вероятны просадки в позиции на величину маржи. Особенности маржинальной торговли, очевидно, оказывают существенное влияние на состояние рынка. При падении рыночной цены ниже некоторого уровня зачастую возникают ещё более глубокие падения, вызванные как раз маржин-коллами. Однако, в данном исследовании учитываются только длинные позиции. Кредитное плечо также не учитывается. Поскольку влияние, которое эти особенности реального рынка оказывают на состояние рынка существенно значимо, необходимо сгладить их отсутствие в исследовании и минимизировать отклонение модели от реального объекта. Этого можно достичь за счёт введения в некоторую часть стратегий стоп-лоссов. Этот механизм существует на реальном рынке. Стоплосс срабатывает, когда цена падает на некоторую величину. Стоп-лосс - это механизм фиксации убытков, если он выставляется ниже цены открытия позиции (здесь и далее имеется в виду длинная позиция), либо механизм фиксации прибыли, если он выставляется выше цены приобретения. Стоплосс срабатывает при прохождении цены сверху-вниз ниже некоторого значения. Принцип работы стоп-лосса очень похож на маржин-колл. Единственное существенное отличие заключается в том, что стоп-лосс выставляется трейдером добровольно, а маржин-колл срабатывает принудительно, чтобы не допустить убытков брокера. Следует отметить, что на поведение рынка это различие не оказывает никакого влияния. 19 Следовательно, для данного исследования достаточно будет учитывать стоплоссы, если процент отклонения, на котором срабатывает стоп-лосс, от текущей цены или цены открытия позиции взять достаточно небольшим. Тогда они будут срабатывать при тех же отклонениях цен, что и маржинколлы при большом кредитном плече. В этом случае будет учтено влияние на рынок, которое могли бы оказывать маржин-коллы, если бы были учтены в исследовании. Ещё одно важное определение связано с участниками торгов. Помимо организатора торгов, брокеров и трейдеров на бирже могут присутствовать маркет-мейкеры. В соответствии с федеральным законом "Об организованных торгах" от 21.11.11 №325-ФЗ маркет-мейкером признаётся участник торгов, добровольно принимающий на себя обязательства перед организатором торгов по поддержанию цен, разности цен, спроса, предложения, ликвидности финансового инструмента. Эти обязательства оформляются в виде соответствующего договора. На ММВБ-РТС маркетмейкеры работают не с каждым финансовым инструментом. Поскольку маркет-мейкер удовлетворяет спрос и предложение, возникающие на рынке по рыночной цене в некотором диапазоне, он, с одной стороны, повышает ликвидность, с другой - понижает волатильность, поддерживая цены на некотором уровне. Такие действия маркет-мейкера оказывают влияние на рынок. Однако, поведение маркет-мейкеров не учтено при построении модели. Во-первых, как уже было отмечено ранее, строится максимально упрощённая модель. Во-вторых, маркет-мейкеры работают не с каждым инструментом. Поэтому, их отсутствие в модели не уменьшает ценность полученных с её помощью результатов. Кроме того, можно учесть влияние на торги маркет-мейкеров, не включая никаких дополнительных модулей в ядро модели. Это можно сделать, разработав торговый алгоритм маркет-мейкера. Поскольку модель никак не ограничивает число используемых торговых 20 алгоритмов и их виды, создание одного дополнительного алгоритма не вызовет никаких затруднений. Следует обратить внимание на некоторые другие особенности работы биржи. Так, при совершении сделок на бирже удерживается комиссия. В случае объединённой биржи ММВБ-РТС комиссия удерживается как брокерами, так и самой биржей. Биржевой сбор всегда имеет фиксированную ставку. Что касается брокерской комиссии, она зависит от тарифа. В общем, при небольших объёмах сделок эта комиссия имеет фиксированную величину. При больших объёмах сделок комиссия удерживается в виде доли от объёма сделки. При детальном изучении вопроса, становится понятно, что комиссионные сборы вносят свой вклад в характер поведения всего рынка. Так, при наличии комиссии, часть высокочастотной торговли становится убыточной. Трейдеры вынуждены сокращать частоту сделок, перестраивая свои торговые алгоритмы. В данном исследовании модель не способна к самонастройке и оптимизации, поскольку это не входит в задачи исследования. Все торговые алгоритмы создаются и настраиваются один раз до проведения испытаний. Поэтому нет никакой необходимости учитывать комиссию - достаточно подобрать такие алгоритмы, в которых торговли с очень высокой частотой, рассчитанной на получение частой, но малой прибыли, просто не будет. Выбор границы частоты торговли должен быть обусловлен параметрами конкретного эксперимента на модели. Так, выбор граничной частоты зависит от комиссии, которую планируется таким образом учесть, и от лимитов денежных средств агентов модели. Таким образом, удастся сохранить реалии объекта исследования без чрезмерных усилий. Важно отметить, что алгоритмическая торговля оказывает влияние на рынок только в краткосрочном периоде. Движение цен на акции той или иной компании в средне- и долгосрочном периодах определяется реальными финансовыми показателями этой компании, других компаний сектора, а также макроэкономическими показателями. Все продолжительные тренды, 21 таким образом, нисколько не зависят от алгоритмической торговли. Это очень важное замечание, поскольку в разрабатываемой в рамках исследования модели все эти факторы можно не учитывать. Таким образом, модель сохраняет сходство с реальным объектом исследования по тем свойствам, которые важны для предмета исследования. 22 I.VI. Современное состояние и планы по дальнейшему изучению проблемы В сети Интернет можно ознакомиться с различными исследованиями, касающимися алгоритмической торговли. Существуют исследования алгоритмической торговли в контексте совершения крупных сделок. В них предлагаются математические методы оценки влияния на рынок таких крупных сделок. Существует множество исследований, посвящённых изучению эффективности конкретных торговых алгоритмов и алгоритмической торговли в целом. Существуют исследования, посвящённые выяснению степени причастности высокочастотной алгоритмической торговли к биржевым крахам. Последнее из названных направлений исследований наиболее близко к данному исследованию по предмету и объекту исследования. В дальнейшем планируется усовершенствовать модель за счёт внедрения дополнительных характеристики реального модулей, объекта. учитывающих Планируется неучтённые увеличение числа изучаемых стратегий для получения более надёжных результатов. Возможен выход за пределы рынка акций и учёт специфики других рынков (рынок сырья, валютный рынок), изучение различных финансовых инструментов (облигации, фьючерсы, опционы и прочие производные инструменты). Поскольку принцип осуществления сделок схож во всех названных случаях, модель подвергнется не столь значительным изменениям. 23 I.VII. Обобщение целей и задач Таким образом, данное исследование сосредоточено на изучении влияния алгоритмической торговли на поведение рынка ценных бумаг. В данном исследовании внимание сконцентрировано на рынке акций. Для проведения исследования и выявления влияния разрабатывается компьютерная имитационная модель фондовой биржи. В серии испытаний изучается влияние различных сочетаний торговых алгоритмов на поведение рынка. Модель состоит из ядра, выполняющего основные, необходимые для исследования функции биржи, и набора торговых алгоритмов. В данном исследовании в модель не включена маржинальная торговля, короткие позиции, маркет-мейкеры, комиссионные сборы, средне- и долгосрочные тренды. Все эти особенности реального рынка оказывают влияние на поведение рынка. Однако, в данном исследовании они не учтены, чтобы не усложнять модель. Там, где можно было сгладить отклонения модели от реального рынка, они сглажены. Результаты экспериментов с моделью будут изучены и проанализированы для выявления качественного влияния алгоритмической торговли на поведение рынка. Все необходимые выводы будут сделаны. Количественное влияние в данном исследовании не изучается. 24 II. Метод исследования и описание модели II.I. Цели создания модели В рамках данного исследовательского проекта для изучения влияния алгоритмической торговли на состояние рынка была разработана модель, которая была реализована в виде компьютерной программы. Описание модели и её реализации будет представлено ниже. Для исследования используется метод компьютерной симуляции, заключающейся в многократном запуске модели с различными начальными параметрами с целью проверки ряда гипотез на достаточном количестве сочетаний торговых стратегий. Результаты экспериментов с моделью не представляют непосредственного интереса, поскольку значимость они приобретают только после должной интерпретации. Описание экспериментов и обработки их результатов буду представлены в заключительной главе. Для проведения эксперимента необходимо провести настройку модели. Поскольку в данном проекте речь идёт об исследовании торговых стратегий, настраиваются параметры, связанные с соотношением стратегий на рынке, параметры этих стратегий, а также количество средств и акций на счетах участников торгов. 25 II.II. Описание модели Для исследования затронутых вопросов была построена модель. В данном проекте ранее названные вопросы изучаются на примере рынка акций. На моделируемой бирже присутствует только одна котировка. Это ограничение негативно влияет на возможности модели, поскольку ряд реально существующих торговых алгоритмов опирается на данные о торгах других ценных бумаг, чаще всего из той же отрасли экономики, или на отраслевой индекс. Однако, таких алгоритмов на рынке не много, так что степень отклонения модели от реальности не столь значительна. К тому же, для того, чтобы учесть данный фактор в модели, то есть разработать модель с несколькими финансовыми инструментами, потребуется преодолеть ряд принципиально сложных вопросов, один из которых связан с сочетанием распределений торговых стратегий на рынке. Если один инструмент можно изучать без точной подгонки торговых стратегий под реальный рынок, то для исследования сразу нескольких инструментов потребовалось бы привести распределение стратегий (точнее, соотношение распределений для инструментов) в соответствие с тем, что наблюдается на реальных торгах. Это не входит в рамки данного исследования, а потому это ограничение с необходимостью было введено при разработке модели. Структура модели определяется решаемыми задачами. В центре модели находится площадка проведения торгов (для краткости, биржа). Трейдеры участвуют в торгах на бирже. Как уже было замечено в первой главе, брокеры в модели не учитываются, поскольку не оказывают никакого влияния на изучаемый вопрос. Этот факт упрощает структуру модели. Трейдеры взаимодействуют с биржей напрямую. Для проведения данного исследования была выбрана агентноориентированная модель. Выбор был обусловлен рядом факторов. Вопервых, существует практика применения агентного подхода для моделирования биржи. Во-вторых, существующие альтернативные подходы, 26 такие как дискретное моделирование или модели системной динамики, опираются на аппарат дифференциальных или разностных уравнений, а описание поведения трейдеров при помощи математических моделей не представляется возможным, или выходит по уровню сложности за рамки данного исследования. Наконец, агентная модель просто уместна в данном контексте. Большое число трейдеров легко представить агентами в модели. Торговые стратегии определяют поведение каждого агента, являясь набором правил, по которым агенты участвую в торгах. К тому же в рамках данного исследования нет никакой необходимости в создании сложной модели, которая достоверно передавала бы каждый аспект реальной биржи. Данное исследование узконаправленно, а потому простая агентная модель видится наиболее удачным решением. Схема 1 27 Структура модели представлена на схеме 1. В центре модели находится биржа, как место, где заявки принимаются и добавляются в очередь, где совершаются и регистрируются сделки. Агенты запрашивают рыночные данные о сделках, совершённых в предыдущем периоде, у биржи. Те же данные запрашивают индикаторы, которые на их основе рассчитываются. Дублирование потоков рыночных данных с биржи необходимо, поскольку ряд стратегий агентов не использует индикаторы для формирования торговых сигналов к совершению сделок. Торговые стратегии, задействующие индикаторы, получаются значения расчитанных индикаторов и обрабатывают их в соответствии с некоторым алгоритмом. Стратегии существуют независимо от агентов. Таким образом, несколько агентов могут использовать одинаковые стратегии, что в точности соответствует реальности биржевой торговли. Агенты на основе сигналов от своих торговых стратегий формируют и передают заявки в очередь биржи, где они обрабатываются. На схеме 2 представлены потоки данных в модели. Индикаторы получают данные о совершённых в предыдущем периоде сделках от биржи. На основе них рассчитываются значения индикаторов. Стратегии в зависимости от значений индикаторов и собственных параметров формируют торговые сигналы, которые по-сути являются рекоммендациями к совершению или не совершению сделок. Агент получает рыночные данные от биржи, данные о состоянии своего счёта и сигналы от торговой стратегии. Обработав полученные данные в соответствие с некоторым алгоритмом, агент может сформировать заявку на приобретение или продажу акций. Данные о заявке передаются на биржу, где заявка создаётся и помещается в очередь. Биржа пересылает данные об изменении состояния счёта агентов специальному блоку, отвечающему за управление счетами. 28 Схема 2 Разработанная модель совершает конечное число итераций, установленное в начале эксперимента, каждая из которых содержит последовательность действий. Вместо условно-непрерывного процесса совершения сделок на реальной бирже, здесь сделки совершаются пошагово. В начале шага (итерации) агенты размещают заявки. В конце шага те заявки, которые могут быть исполнены, исполняются. На схеме 3 представлена EPC-диаграмма основного процесса. Этот процесс включает в себя все происходящие события в модели, начиная с момента запуска эксперимента и заканчивая последней итерацией цикла торговли. В начале каждой итерации рассчитываются значения индикаторов. Затем по-очереди вызываются агенты, которые совершают некоторые действия, о которых говорится далее. После того, как все агенты были опрошены, выполняется операция клиринга, то есть исполнение заявок, 29 передача прав владения между счетами агентов, списание и зачисление денежных средств. Схема 3 Операция клиринга детализована на той же Схеме 3. В данной модели операция клиринга включает в себя проверку условных заявок. Если некоторое условие наступило, условная заявка выставляется в очередь либо в виде рыночной, либо в виде лимитированной заявки. После проверки условных заявок, исполняются рыночные заявки. Эти заявки имеют приоритет 30 и выполняются в первую очередь. Затем выполняются лимитированные заявки, в которых, как было сказано в Главе I, специфицирована конкретная цена исполнения. По завершении клиринга выполняется следующая итерация цикла торговли. Число итераций определяется перед началом эксперимента. На каждой итерации происходит вызов одного за другим агентов. Действия агента с момента вызова и до перехода в состояние ожидания представлено на схеме 4. После вызова из главного цикла агент проверяет свою стратегию. Стратегия запрашивает последнее значение индикатора, который был посчитан в начале этой же итерации главного цикла. Если стратегия выдаёт агенту сигнал к подаче заявки на совершение сделки, агент проверяет состояние своего торгового счёта. Если получен сигнал к ожиданию, агент переходит в состояние ожидания следующего вызова на следующей итерации. Если лимиты счёта позволяют совершить сделку, агент формирует заявку и посылает её на биржу, где она добавляется в очередь заявок. В противном случае, агент переходит в состояние ожидания. После размещения заявки на бирже агент также переходит в состояние ожидания. Здесь необходимо пояснить, что понимается под лимитами счёта. В общем случае на счету агента имеются денежные средства и акции. Если стратегия выдаёт сигнал на продажу акций, необходимо, чтобы у агента на счету имелись акции. Если стратегия выдаёт сигнал на приобретение акций, необходимо, чтобы у агента на счету имелось достаточно денежных средств для приобретения минимального лота акций. Поскольку в данной модели ради упрощения работы лот содержит одну акцию, необходимо, чтобы средств было достаточно для приобретения хотя бы одной акции. 31 Сх ем а4 32 II.III. Описание компьютерной реализации модели Для проведения планируемого исследования необходимо реализовать описанную выше модель в виде компьютерной программы. В рамках данного исследования планируется провести серию экспериментов и проверить ряд гипотез о влиянии алгоритмической торговли на поведение рынка. Компьютерная реализация должна в точности соответствовать схеме модели, а принцип её функционирования должен повторять описанные выше процессы. Для проверки гипотез в программе должны быть реализованы различные торговые стратегии. Это важно для получения устойчивых результатов и их фильтрации. В качестве языка программирования для реализации данной модели может быть выбран любой объектно-ориентированный язык. С равным успехом можно было выбрать C++, C#, JAVA и PHP. В данном проекте был выбран язык программирования JAVA. Выбор языка был обусловлен хорошим знакомством автора с данным языком программирования. Преимуществ JAVA перед другими объектно-ориентированными языками для реализации данной модели нет. Кросс-платформенность в данном случае не была необходима, поскольку проводить эксперименты можно было на одной аппаратной платформе. Распространение полученного программного кода не планировалось. В качестве среды разработки был выбран Eclipse Indigo. Аргументом в пользу данной среды может служить его легковесность относительно NetBeans. Ввиду несложности разрабатываемого приложения необходимости в использовании тяжёлых сред не было. Среда Eclipse является свободнораспространяемым программным обеспечением, что можно назвать преимуществом для исследовательского проекта Разрабатываемую программу условно можно разделить на два блока, представленных на схеме 5. Первая часть компьютерной модели составляет ядро модели. Вторую часть условно можно назвать модулем торговых 33 алгоритмов. В ядро модели входит вся логика обработки и размещения заявок, управления счетами. В центре ядра находится биржа, которая выполняет размещение заявок в очереди, снятие заявок, управление очередью, ведение истории сделок. С биржей взаимодействуют агенты, подающие заявки. Поскольку в модели представлены все основные типы условных и безусловных заявок, стоит отдельно упомянуть заявки в качестве элемента ядра модели. Счета агентов и вся логика управления счетами, блокировки активов, снятие и зачисление активов также входят в ядро. Завершением разработки модели считается завершение разработки ядра модели. Оно не требует серьёзных модификаций после разработки. Вторая часть, модуль торговых алгоритмов, содержит всю логику, связанную с обработкой рыночных данных и формированием торговых сигналов на покупку/продажу. В этот модуль входят торговые стратегии и индикаторы. Связь между этим модулем и ядром осуществляется через торговые стратегии и агентов, которые их используют для определения своего поведения. Схема 5 34 Поскольку число стратегий и индикаторов очень велико, даже с учётом того, что реально используется в процессе торговли небольная их часть, реализовать сразу все стратегии и индикаторы в рамках данного исследования не представляется возможным. Модель может работать с одним лишь ядром и одной тестовой стратегией, несмотря на ограниченность такого эксперимента. Совокупность этих двух фактов определила разделение модели на две части с выделением ядра и модуля торговых алгоритмов. Для полноценного отражения составленной модели в программном коде была разработана программа, представленная диаграммой классов на схеме 6. Классы Reader и Writer отвечают за чтение и запись истории сделок, соответственно. Класс PerformedDeals хранит и обновляет историю совершённых сделок. Класс OpenBook выполняет функции биржи (Openbook в англоязычной литературе соответствует термину "Биржевой стакан", то есть место встречи заявок на покупку и продажу). Класс OpenBook выполняет операцию клиринга. Класс Order отвечает за работу с заявками. В нём реализованы методы формирования, удаления, изменения заявок, в зависимости от их типа. OrderType - структура относимая к перечислимому типу данных (enum), хранит допустимые типы заявок. DealType также относится к перечислимому типу данных и хранит допустимые типы сделок. Ещё один enum Action хранит допустимые действия, которые советует стратегия агентам. К таким действиям относятся Покупка, Продажа и Удержание. Абстрактный класс Strategy выполняет функцию интерфейса для подключения стратегий. В этом классе реализован ряд методов, общих для всех стратегий. Абстрактный класс Indicator выполняет функцию интерфейса для подключения индикаторов. Методы, общие для всех индикаторов, например, расчёт следующего значения, реализованы в рамках абстрактного класса. Класс Agent реализует объект Агент, работает с заявками, включает в себя стратегию, управляет своими активами. Класс Assets предназначен для работы с активами агентов, как с денежными средствами, так и с акциями. Он 35 отвечает за блокировку и разблокировку активов, за снятие и зачисление активов, проверяет, достаточно ли активов на счетах агентов для совершения сделок. С хе ма 6 Н а да нн ый мо ме нт ре ал из ов ан о три стратегии и один индикатор. Стратегия IntelligentInvestor реализует стратегию разумного инвестора. Суть стратегии состоит в том, чтобы приобретать акции, когда они продаются с дисконтом к справедливой цене. Под дисконтом понимается процентная скидка. Под справедливой ценой понимается оценка инвестором данной акции. На реальных финансовых рынках оценка акций осуществляется по финансовый показателям компании. В данной модели справедливая цена указывается искусственно перед проведением 36 эксперимента. Поскольку все стратегии, использующие исторические данные, во-многом повторяют историю, о чём будет разъяснено в третьей главе, для придания модели рыночного реализма потребовалось реализовать данную стратегию. Никаких индикаторов стратегия разумного инвестора не использует. Две другие стратегии опираются на индикатор скользящей средней. В первой главе было сказано, что скользящая средняя - это функция, значение которой в каждой точке определения равно среднему значению за предыдущий период определённой ширины. Одна из двух стратегий использует всего одну скользящую среднюю. Эта стратегия реализована классом IndicatorMA. Приобретение акций происходит в тот момент, когда цена пересекает снизу скользящую среднюю, взятую с дисконтом, то есть смещённую вниз. Продажа акций осуществляется в тот момент, когда цена пересекает снизу скользящую среднюю, взятую с некоторой наценкой. Продажа происходит только в том случае, если позиция предварительно была открыта, то есть акции были куплены. Последняя реализованная на данный момент стратегия представлена классом MAInvestorSeveral. Она использует несколько индикаторов скользящих средних. Когда скользящая средняя с наименьшим окном пересекает снизу скользящую среднюю с вторым наименьшим окном, а остальные скользящие средние не убывают, стратегия подаёт сигнал на приобретение акций. Сигнал на продажу подаётся, когда скользящая средняя с наименьшим окном пересекает сверху скользящую среднюю с вторым наименьшим окном. Функция скользящая средняя показывает тренд определённой продолжительности, равной величине окна скользящей средней. Идея стратегии состоит в том, чтобы приобретать акции, когда краткосрочный тренд начинает обгонять среднесрочный, а долгосрочные тренды показывают рост. Продавать акции по данной стратегии следует, когда краткосрочный тренд пересекает сверху среднесрочный тренд. 37 В данном исследовании не изучается вопрос об эффективности торговых стратегий. Задача заключается в изучении того, какое влияние стратегии вообше или отдельные группы стратегий оказывают на поведение рынка акций. Индикатор скользящей средней рассчитывается на каждой итерации цикла торговли. Он добавляет последнее значение к предыдущим и делит сумму на количество значений, равное ширине окна скользящей средней. Это простой индикатор, пользующийся большой популярностью. Однако, в реальных торгах он используется неперечислимым количеством способов, каждый из которых представить в данной модели не представляется возможным. 38 III. Результаты исследования III.I. Текущее состояние исследования В предыдущей главе была описана модель биржи и её компьютерная реализация. Были реализованы три стратегии и один индикатор. В этой главе освещается серия экспериментов, проведённых при помощи компьютерной модели. Серия экспериментов строилась по следующему принципу. Вначале, следует постановка цели конкретного эксперимента из серии. Затем, определяются настройки эксперимента. В программы, данном подбираются исследовании было параметры решено для использовать распределения параметров. На данный момент реализована поддержка только равномерного распределения, но никаких препятствий к добавлению поддержки новых распределений ни со стороны самой модели, ни со стороны языка программирования нет. После настройки модели, происходит несколько запусков модели с данными параметрами. Это делается с целью охвата нескольких случайных чисел из распределений для проверки устойчивости результатов эксперимента. Важно заметить, что массив агентов, которым поочерёдно приписываются торговые стратегии, должен быть перемешан. В данной модели на каждой итерации-ходе агенты поочерёдно сверяются со своими стратегиями, и некоторые из них выставляют заявки. Чтобы измежать ситуации, в которой агенты со стратегиями из одной группы выставляют заявки друг за другом, торгуя друг с другом, а не с другими агентами, необходимо перемешивать агентов в массиве. После того, как результаты эксперимента собраны, проводится их осмысление и толкование. В первой главе было отмечено, что данное исследование ставит своей целью определение качественного, а не количественного, влияния алгоритмической торговли и групп торговых стратегий на поведение рынка, на его ликвидность и волатильность. 39 III.II. Описание тестового эксперимента Для проведения тестового эксперимента были реализованы три стратегии: одна стратегия разумного инвестора и две стратегии на основе скользящих средних. Компьютерная реализация модели была построена таким образом, чтобы настройке подлежали параметры, связанные с используемыми распределениями случайных величин, характеристики начальных активов агентов, начальные исторические данные торгов. Всё это сделано для того, чтобы проверить устойчивость результатов. В тестовом эксперименте были выставлены значения параметров, приведённые в таблицах 1-3. Таблица 1. Разумный инвестор В таблице 1 приведены параметры стратегии разумного инвестора (IntelligentInvestor). Все параметры кроме одного предельно понятны.Нижняя граница справедливой цены задана исходя из среднего значения по историческим данным. Верхняя граница задана с учётом дисконта. Такие значения параметра выбраны для того, чтобы мягко продолжить торги по историческим данным, не вызывая в начале эксперимента резких колебаний цен. 40 Таблица 2. Скользящая средняя В таблице 2 приведены параметры стратегии одной скользящей средней (InvestorMA). Период скользящей средней это ширина окна, или базы расчёта. Под наценкой понимается верхняя граница, на которой осуществляется продажа. Эта граница берётся в виде процента к значению скользящей средней, составляя таким образом наценку. Т абл ица 3. Пер есекающиеся скользящие средние В таблице 3 приведены параметры стратегии пересекающихся скользящих средних (MAInvestorSeveral). В стратегии используются три скользящие средние с периодами 20, 40 и 100. Под шириной окна локального периода имеется ввиду количество сделок (тиков), которые принимаются за текущий локальный период. Этот параметр нужен для расчёта локальных минимальных и максимальных значений цен. Эти значения рассчитываются для выставления стоп-лоссов и тейк-профитов. В рамках любой стратегии можно выставлять условные заявки, но в данном эксперименте условные заявки выставляются только пользователями стратегии пересекающихся скользящих средних. Инициальные исторические данные для эксперимента были взяты из реальных часовых торгов акций компании Аптеки 36и6 за январь 2013 года. 41 Никакого скрытого смысла в выборе данной котировки нет. С равным успехом могли быть использованы любые другие достаточно ликвидные котировки за любой временной период. Результаты первого эксперимента представлены на рисунке 1. Первые 126 сделок отражают исторические данные, введённые в модель. Начиная с 127 сделки модель сама генерирует данные. В эксперименте было пройдено 15 итераций, то есть 15 шагов пошаговой торговли. Несколько экспериментов показали, что все значительные колебания цен были вызваны агентами, использовавшими стратегию разумного инвестора. Они продавали и покупали в соответствии со своим представлением о справедливой цене. Их предложение и спрос поддерживали агенты, использовавшие стратегии, опирающиеся на индикатор скользящей средней. По графику видно, что после значительных колебаний рынок быстрее, чем с линейной скоростью приходит к устойчивому положению. Устойчивое положение образовалось приблизительно на уровне среднего значения цены по историческим данным. Эксперимент показал, что рыночное равновесие при данном распределении стратегий устойчиво даже при значительных отклонениях цены от этот равновесия. 42 Рисунок 1. Эксперимент №1 На рисунке 2 представлены результаты эксперимента, в котором использовались те же значения параметров, но были исключены агенты, использующие стратегию разумного инвестора. Результаты этого эксперимента существенно отличаются от результатов предыдущего. Вопервых, понизилась ликвидность. Уменьшилось число сделок, совершаемых за те же 15 периодов. Если в предыдущем эксперименте произошло 1002 сделки (с учётом 126 реальных до эксперимента), в этом эксперименте состоялось 357 сделок. В 3 раза меньше. Учитывая, что среднее количество денежных средств у агентов со стратегией разумного инвестора меньше, и их было по численности в 5 раз меньше остальных агентов, объяснить только этим столь значимое сокращение ликвидности не получится. Очевидно, по большей части за сокращение ликвидности отвечает тип стратегии. 43 Рисунок 2. Эксперимент №2 Помимо сокращения ликвидности, в эксперименте ярко проявляется сокращение волатильности. Несмотря на резкие колебания цены, эти колебания меньше тех, что были показаны историческими данными и предыдущим экспериментом. Характерная особенность данного эксперимента заключается в том, что цена совершает колебания вокруг того же среднего значения. Вышеозвученные эксперименты являются сериями экспериментов, состоящих из десятков экспериментов с небольшими изменениями параметров. Из них были выбраны эти два эксперимента, поскольку наиболее точно передают характер поведения рынка. При этом отсутствуют дополнительные факторы, оказывающие влияние. 44 III.III. Объяснение результатов В серии экспериментов использовались две группы стратегий: стратегия разумного инвестора и две стратегии скользящей средней. Стратегия разумного инвестора никак не использует предшествовавшие результаты торгов. Группа стратегий скользящей средней использует предшествовавшие данные при формировании торговых сигналов. Два характерных эксперимента показали существенные отличия в поведении рынка, на котором присутствуют только стратегии скользящей средней, от поведения рынка, на котором представлены обе группы стратегий. Когда на рынке присутствуют только стратегии скользящей средней, рынок стабилизируется вокруг некоторой цены, осуществляя небольшие отклонения от этой величины. Этот факт можно объяснить тем, что данная группа стратегий опирается на предшествовавшие данные торгов. Поскольку эти данные являются общими для всех агентов, как в модели, так и на реальной бирже, очевидным становится то, что эта группа стратегий будет приводить к стабилизации цены в точке рыночного равновесия спроса и предложения. Вывод о таком влиянии может быть расширен на все стратегии, использующие для формирования своих торговых сигналов исключительно данные о прошлых сделках. Устойчивость рынка в данном равновесном состоянии подтвердилась дополнительными экспериментами, использующими принцип провокации. Так, в рамках экперимента в модель был введён дополнительный агент с большими средствами на торговом счёте, который не использовал никаких стратегий, а выставлял в определённый момент очень большие заявки на рынке. Эксперимент был проведён как с заявками на продажу, так и с заявками на приобретение акций. Заявки на продажу выставлялись по низким ценам, заявки на приобретение - по высоким. Эксперименты показали, что этот провоцирующий агент не оказал никакого существенного влияния на рынок. Это может быть объяснено тем, что в модели отсутствуют стратегии, 45 использующие для формирования рыночных сигналов текущее состояние спроса и предложение. Это состояние отражает, так называемы "биржевой стакан", в котором представлена текущая расстановка спроса и предложения на рынке данного инструмента. Поэтому остальные агенты не знают о соотношении спроса и предложения. Даже когда в рамках эксперимента осуществляется провокация, заключающаяся в выставлении больших заявок с нерыночными ценами, рынок на них никаким образом не реагирует. Рынок не смотрит на ещё не оформившиеся в виде сделок цены, а смотрит только на исторические данные. На реальном рынке ситуация отличается от описанной. Это объясняется тем, что на реальном рынке часто присутствуют трейдеры со стратегиями, использующими данные о соотношении текущего спроса и предложения. Однако, это не всегда так. Например, в низших, в особенности низколиквидных эшелонах, могут быть выставлены большие заявки с нерыночными ценами, на которые участники торгов не реагируют. Такая ситуация похожа на ситуацию, созданную в сериях экспериментов. Если на рынке присутствует значительное количество (по объёму капитала в их распоряжении) агентов, использующих в качестве торговой стратегии скользящие средние, рынок будет стремиться к тому, что навязывает ему большинство - то есть к средним значениям рынка. Группа стратегий скользящих средних способствует установлению равновесной цены, равной средней цене самых долгих (с самой большой шириной окна) скользящих средних. Под долгими понимаются такие скользящие средние, которые рассчитываются на основе большого числа значений. Цена будет приблизительно равна самым долгим скользящим средним потому, что они трейдеры, использующие эти индикаторы, будут дольше всех предъявлять спрос по более высоким ценам, или предлагать акции по более низким ценам. Пользователи долгих скользящих средних будут дольше всех совершать сделки по ценам, отличным от средней цены. Это будет 46 продолжаться до того момента, когда рыночная цена сравняется с средней для всех участников. Постепенно рынок придёт к равновесию. В серии экспериментов было показано, что цена возвращается к своему устойчивому значению довольно быстро, со скоростью, превосходящей линейную от номера сделки. В серии экспериментов со скользящими средними это предположение было подтверждено на качественном уровне. Количественные оценки в данном исследовании, о чём было сказано ранее, даваться не будут. 47 Заключение Данное исследование сосредоточено на изучении влияния алгоритмической торговли на финансовых рынках на примере рынка ценных бумаг. Это исследование было важно по той причине, что оно ставит ряд важных вопросов об алгоритмической торговли и отвечает часть эти вопросов. Институты регулирования финансовых рынков возлагают ответственность за рыночные аномалии, такие, как резкие падения рынка, на торговых роботов, использующих торговые алгоритмы. Данное исследование частично раскрыло данную проблему. В этом исследовании была дана попытка показать влияние алгоритмической торговли на поведение рынка. Для этого была разработана модель биржи, на которой представлен только один финансовый инструмент. Далее, была создана компьютерная агентно-ориентированная модель для проведения экспериментов. При помощи компьютерной модели были проведены серии экспериментов. Для этого потребовалось реализовать несколько торговых стратегий. На реализованных стратегиях были получены результаты, которые потребовали объяснения. При объяснении результатов экспериментов, стратегии были объединены в некоторые группы, которые было решено считать обобщение целого рода стратегий. Это облегчает задачу, поскольку отпадает необходимость в тестировании всех стратегий, что является невыполнимой задачей. Помимо объяснения влияния конкретных торговых стратегий, стало возможным объяснить некоторые рыночные явления и особенности более широкого свойства. На рыночную динамику оказывают огромное влияние новостные факторы, отчётность компаний, выплата дивидендов, макроэкономическая 48 статистика, другие котировки, валютные пары, цены на сырьё. В построенной модели рассматривается изолированно от этих факторов алгоритмическая торговля. Как показывают серии проведённых экспериментов, алгоритмическая торговля, опирающаяся исключительно на исторические данные, сама по себе не оказывает дистабилизирующего влияния на рынок. Остаётся предположить, что к резким однонаправленным движениям рынка и сильным отклонениям от среднего значения цены приводит вся совокупность факторов. Это можно было бы объяснить тем, что алгоритмическая торговля, которая учитывает только ту информацию, что содержится в исторических данных цен и объёмов торгов, транслирует эту информацию в будущие цены. Поскольку эта же самая алгоритмическая торговля определяет новые цены, которые уходят корнями в историю, котировки стабильно держатся на некотором уровне. Как только новые цены на рынке формируются иными источниками, то есть алгоритмической торговлей, использующей не только историю сделок, и, например, новостным фоном, последующие сигналы от алгоритмов окажутся под влиянием этих новых факторов, что приведёт к непредвиденным событиям на рынке. При этом объяснение резких падений на рынке только через алгоритмическую торговлю не корректно. Дальше можно выдвинуть ряд предположений, которые, однако, требуют проверки. Можно предположить на основе экспериментов, дополненных логическими построениями, что роль торговых роботов (или просто ботов) сводится к тому, что они усиливают колебания рынка. Если рынок падает, роботы поддерживают падение. Если рынок растёт, боты поддерживают рост, усиливая его. Сами по себе торговые роботы нейтральны по отношению к динамике цен. Наоборот, они удерживают цены на некотором стабильном уровне. Поэтому, если колебаний на рынке нет, боты их не создают. Это очень важное замечание. Боты не создают колебаний на рынке сами по себе. Они могут только усиливать колебания, вызванные неалгоритмической торговлей, либо очень специфической алгоритмической 49 торговлей. Данные предположения следуют из того, что значительная часть торговых стратегий использует историю сделок для формирования торговых сигналов. Выше было доказано, что стратегии, опирающиеся на историю торгов, стабилизируют рынок. Отсюда следует то, что, наряду с алгоритмической торговлей, другие факторы должны быть проверены при изучении источников рыночных взлётов и падений. Основную динамику торгов определяет большинство. Не количественное большинство трейдеров, а большинство по оборачиваемому капиталу. Если большинство трейдеров использует стратегии, обращающиеся только к историческим данным, рынок будет низковолатильным. Подобные рассуждения приводят к предположению, что эффективными оказываются те группы большинство (в ранее торговых определённом стратегий, смысле). которые использует Однако дальнейшие рассуждения об прибыльности стратегий выходят за рамки предмета данного исследования. 50 Список литературы 1. Downs J., Goodman J.E. (1998). Dictionary of Finance and Investment Terms. Fifth Edition. New York: Barron's. 2. Graham B. (2003). The Intelligent Investor. A Book of Practical Counsel. Revised Edition. New York: Harper. 3. Lynch P. (2008). One Up on Wall Street. How to Use What You Already Know to Make Money in the Market. New York: Simon and Schuster Paperbacks. 4. Teweles R.J., Bradley E.S., Teweles T.M. (1999) The Stock Market. Sixth Edition. New York: John Wiley and Sons, Inc. 5. Колемаев В.А., Математическая экономика: Учебник для вузов. - 3-е изд. - М.: ЮНИТИ-ДАНА, 2005. - 399 с. 6. Красс М.С., Чупрынов Б.П., Математические методы и модели в экономике для магистрантов экономики: Учебное пособие, 2-е изд. СПб.: Питер, 2010. - 496 с. 7. Мандельброт Б., Хадсон Р.Л., (Не)послушные рынки: фрактальная революция в финансах.: пер. с англ. - М.: Изд. дом "Вильямс", 2006. 400 с. 8. Мейер Б., Объектно-ориентированное конструирование программных систем.: пер. с англ. - Изд. дом "Русская редакция", 2005. - 1232 с. 9. Хорстман К.С., Корнелл Г., Java 2. Библиотека профессионала, том 2. Тонкости программирования, 8-е изд.: пер. с англ. - М.: Изд. дом "Вильямс", 2011. - 992 с. 10.Sera C.M., Sera C.E., CMT. Market and Investor Behavior. The 98,1% Solution. http://financialtales.com/white-papers/market-and-investor-behavior/ 11.Shah P., Modak S., Mumbai. RBI Sounds a Cautious Note on Algo Trading (Jun 29, 2012). 51 http://www.business-standard.com/india/news/rbi-soundscautiousnotealgo-trading/478830/ 12.ZEW. Press Release. Algo-Trading Involves Risks for Stability on Financial Markets (Apr 21, 2011). http://www.zew.de/en/press/1429/algo-trading-involves-risks-for-stability-on-financial-markets- 13.Gencay R., Dacorogna M., Olsen R., Pictet O. Foreign Exchange Trading Models and Market Behavior (2002). http://www.sfu.ca/~rgencay/jarticles/jedc-rtt.pdf 14.Marco Avellaneda. Algorithmic and High-Frequency Trading: An Overview (2011) http://math.nyu.edu/faculty/avellane/QuantCongressUSA2011AlgoTradingLAST.pdf 15.PC Plus, issue 312. How dangerous is algorithmic trading? How algorithmic trading has reshaped the stock market. (Oct 8, 2011) http://www.techradar.com/news/world-of-tech/are-pcs-to-blame-for-the-financial-mess-we-re-in1031898/2 52