УДК 004.42:336.761.6
Н.И. Миндияров, К.Э. Рейзенбук
ТОРГОВАЯ СИСТЕМА ДЛЯ АНАЛИЗА КОТИРОВОК АКЦИЙ И АВТОМАТИЧЕСКОЙ ТОРГОВЛИ НА ФОНДОВОМ РЫНКЕ
В настоящее время широкое распространение получили такие виды финансовых инструментов, как ценные бумаги. Следствием этого явилось формирование целой структуры, сводящей вместе покупателей и продавцов этих активов. Формой организованного функционирования служат фондовые биржи. Они призваны способствовать перемещению денежного капитала между экономическими субъектами. Многие пробуют свои силы в этом виде деятельности, поскольку считают, что это не сложно. Однако когда начинающий трейдер видит первый положительный результат, он чувствует себя гением и везунчиком, зачастую неоправданно рискует и, естественно, в большинстве случаев терпит фиаско. Для того чтобы стать успешным трейдером, нужна стратегия!
Предпринимается множество попыток разработать достоверные теории, которые могли бы предсказать поведение биржевых котировок. Существует три подхода к анализу состояния и прогнозу поведения рынка ценных бумаг: фундаментальный, технический и интуитивный. Фундаментальный анализ направлен на изучение экономических, финансовых и других макроэкономических факторов, влияющих на динамику курсов ценных бумаг. Технический анализ включает приемы, позволяющие прогнозировать курс акций на основании их прошлой динамики. Интуитивный подход основан на подсознательном выборе, как правило, свойственен очень опытным трейдерам.
В результате проведенного исследования была разработана система «Successful Trading», предназначенная для анализа и прогнозирования курсовой стоимости акций на фондовой бирже. В основе данной системы лежат пять моделей технического анализа, выбранные как наиболее работоспособные в сложившихся экономических условиях. Система «Successful Trading» реализована в виде Windows-приложения, созданного в интегрированной среде разработки Microsoft Visual Studio 2010.
При запуске программы сразу после заставки появляется главное окно системы, где представлен график свечей, график выбранного индикатора, меню и набор кнопок. Меню содержит следующие пункты: файл, модели анализа, справка.
В пункте меню файл находятся подпункты, которые позволяют загрузить данные и отобразить их на графике свечей или распечатать их, также можно смоделировать ситуацию на рынке на несколько шагов вперед.
С помощью пункта меню модели анализа можно быстро получить доступ к интересующей
модели, выбрав для этого подпункт меню с ее названием.
Пункт меню справка позволит получить необходимую информацию о работе системы, а также подскажет, по какому принципу строятся данные модели, и поможет сориентировать пользователя для дальнейшей работы на фондовом рынке с использованием предложенного алгоритма.
Кнопки на главной форме также позволяют быстро визуализировать исходные данные в соответствии с выбранной моделью.
Ввод данных происходит через автоматическое заполнение из текстового файла. Несколько источников в Интернете, из которых можно скачать информацию за интересующий период времени, указаны в справке. Исходные данные представляют собой временные ряды котировок акций, а именно: цена открытия, цена закрытия, максимальная и минимальная цена. После того как данные загружены, отображается верхний график в виде японских свечей, затем пользователь выбирает конкретный индикатор для анализа. Вывод графических результатов анализа производится на нижнем графике. Для более удобной работы пользователя с программой реализована возможность масштабирования графика. Это позволяет выявлять сигналы с высокой точностью.
В информационной системе «Successful Trading» исследование поведения рынка ценных бумаг производится на основе пяти индикаторов технического анализа: MACD, аллигатор, скользящее среднее, огибающие линии, полосы Боллинджера. Из множества индикаторов рынка были выбраны именно эти, поскольку они дают меньше ложных сигналов; легко настраиваются и адаптируются под конкретную ценную бумагу и условия рынка; просты для понимания и использования.
Индикатор Moving Average Convergence Divergence (MACD, схождение - расхождение или конвергенция - дивергенция скользящих средних) является ничем иным, как улучшенным зрительным восприятием двух простых скользящих средних (или экспоненциальных скользящих средних). MACD является достаточно популярным индикатором технической торговли. Одним из главных достоинств является универсальность индикатора: он может одновременно учитывать элементы импульса и тренда. Постоянное следование за трендом MACD практически не дает ему возможности долго давать неправильную информацию. При использовании скользящих средних можно гарантировать, что индикатор рано или поздно пойдет за инструментом рынка [1, 2]. Чаще всего индикатор MACD используют для выявления торговых
сигналов при боковом движении цен - периоды стабилизации курса после повышения или понижения (консолидация). Обычно сигналом «Покупать» считают момент, когда скользящая с меньшим периодом (светлая линия) в нижней зоне пересекает снизу вверх скользящую с большим периодом (темная линия). Сигналом «Продавать» считают момент, когда скользящая с меньшим периодом в верхней зоне пересекает сверху вниз скользящую с большим периодом (рис. 1).
Для расчета линейного MACD из скользящей средней цены (обычно берется экспоненциальная скользящая средняя) с меньшим периодом вычитается экспоненциальная средняя с большим периодом. В большинстве случаев полученный результат сглаживают при помощи экспоненциальной скользящей средней (ЕМА), чтобы устранить случайные колебания:
MACD = (ЕМА1(Р) - EMAs(P)),
Signal =SMAa(EMAs(P) - EMAl(P))),
где: ЕМА1(Р) - экспоненциальная скользящая средняя с длинным периодом от цены; EMAs(P) -экспоненциальная скользящая средняя с коротким периодом от цены; SMAa(P) - сглаживающая скользящая средняя с коротким периодом от разницы двух остальных скользящих; P - цена, обычно берется цена закрытия периода Close, но возможны и другие варианты (Open, High, Low, Close, Median Price, Typical Price и т.д.).
По умолчанию в информационной системе
«Successful Trading» обычно берутся следующие настройки MACD:
• EMAs - короткая, с периодом 12 (две недели);
• EMAl - длинная, с периодом 26 (месяц);
• SMAa - сглаживающая разницу, с периодом 9.
Один из приемов доходной торговли - заключать только сделки с наибольшим потенциалом. Индикатор аллигатор, по существу, является компасом, который позволяет осуществлять сделки в определенном направлении независимо от того, в какую сторону изменяется в данный момент цена. Большую часть времени рынок никуда не движется. Только от 15 до 30 процентов времени рынок изменяется в соответствии с определенными трендами, и трейдеры, которые не находятся в биржевом зале, зарабатывают почти все свои прибыли на рынке, на котором можно выявить тренды.
Цель аллигатора состоит в том, чтобы предоставить интегрированный подход для мониторинга движущей силы рынка, представить простой индикатор для торговли только в текущем тренде, создать защитное средство для того, чтобы не терять деньги во время движения рынка, ограниченного ценовым коридором. Базовая стратегия на основе аллигатора заключается в том, что необходимо подождать, чтобы тренд подтвердил себя. По существу, синяя линия (челюсть аллигатора) - это линия цены, которая была бы справедлива, если
// 1
//s] \\ СИГНАЛ нд продажу
с влил м покуто-у
0 я 40 (0 to
Рис. 1. Сигналы MACD
Рис. 2. Анатомия аллигатора
Рис. 3. Аллигатор на бычьем тренде
Рис. 4. Сигналы скользящего среднего
бы не поступала новая информация. Она строится на основании 13-периодной сглаженной скользящей средней, смещенной на 8 баров в будущее. Зубы аллигатора - это линия баланса для временного периода, который лежит на один порядок ниже (приблизительное соотношение - пять к одному). Если линия челюсть аллигатора построена для дневных значений, то линия зубы аллигатора построена для часовых значений. Красная линия строится с использование 8-периодной сглаженной скользящей средней, которая имеет смещение
на 5 баров в будущее. Губы аллигатора характеризуется временным периодом еще более низкого порядка. Она строится как 5-периодная сглаженная скользящая средняя, которая смещена на 3 бара в будущее. На рис. 2 можно увидеть реализацию модели аллигатора в программе «Successful Trading» с использованием в качестве исходных данных котировок акций ОАО «Сбербанк России» за начало мая 2013 года. Наглядно представлено, как средние создают три разные временные структуры на одном и том же графике.
Рассмотрим стратегию торговли при помощи аллигатора. Когда челюсть, зубы и губы закрыты или переплетены, аллигатор спит. Чем дольше он спит, тем более голодным он становится. Когда просыпается после длительного сна, то очень голоден и охотится за пищей (цена) значительно дольше. Когда аллигатор «наелся» он теряет интерес к еде. Не стоит предпринимать никаких действий, пока аллигатор находится в состоянии дремоты, и следует вернуться на рынок тогда, когда аллигатор начинает просыпаться (рис. 3). Например, если цена находится выше пасти аллигатора, то использовать только сигналы на покупку и не занимать короткие позиции. При восходящей тенденции стоит ставить остановки для фиксирования прибыли. При нисходящей тенденции следует
использовать только сигналы к продаже, которые лежат ниже пасти аллигатора. Таким образом, выше пасти открываются позиции на покупку, а ниже пасти занимаются короткие позиции [2, 3, 4].
Скользящее среднее (MA) - технический индикатор, в основе которого лежит анализ поведения котировок ценной бумаги и их скользящего среднего. Скользящее среднее - один из старейших и наиболее распространённых индикаторов технического анализа, относящийся к трендовым индикаторам. Служит для указания общего на-
правления тренда. Рассчитывается простым усреднением нескольких цен.
Самый распространенный метод интерпретации скользящего среднего цены состоит в сопоставлении его динамики с динамикой самой цены. Когда цена инструмента поднимается выше значения MA, возникает сигнал к покупке, а когда она опускается ниже линии индикатора - сигнал к продаже (рис. 4).
Скользящие средние подают ложные сигналы во время боковой торговли, потому что они являются индикаторами, следующими за трендом, которые измеряют восходящий или нисходящий импульс. Характеристика скользящих средних изменяется, как только они сглаживаются и переворачиваются. Поворот скользящей средней к горизонтальному положению указывает на потерю импульса для данного временного формата. Это увеличивает шансы того, что цена пересечет скользящую среднюю относительно легко. Когда скользящие средние разной длины выстраиваются в горизонтальную линию близко друг от друга, цена часто колеблется поперек этих линий, создавая много «рыночного шума».
В программе предусмотрено построение скользящей средней с заданным периодом, как правило, 20-дневная скользящая средняя обычно
1 с КТ МАЛ ИЯ пролажу
о я 41 « т «о а
Рис. 5. Сигналы огибающих линий
yiтА . v
_| сигам на продму / Г—-ч''-'
'
у СИГМА! И* ПОКУПКУ
30 40 (0 «0 Ю0 130
Рис. 6. Сигналы полос Боллинджера
отмечает краткосрочный тренд, 50-дневная скользящая средняя - среднесрочный тренд, а 200дневная скользящая средняя является показателем долгосрочного рыночного тренда. В «Successful Trading» реализована экспоненциальная скользящая средняя, благодаря чему ложных сигналов меньше по сравнению с обычной скользящей средней.
Огибающие линии (Envelopes) образуется двумя скользящими средними, которые определяют верхнюю и нижнюю границы торгового диапазона. Строится такой индикатор на графиках индикатора или цены. Работа с ним сводится к простому правилу: если цена достигает верхней границы, то наступает сигнал на продажу, если достигает нижней - на покупку (рис. 5). Оптимальное значение сдвига выражается в процентах и зависит от волатильности (колебаний) рынка. Чем больше волатильность цены, тем, следовательно, больше значение сдвига. Применение этого технического индикатора основано на естественной логике поведения рынка: когда под давлением покупателей или продавцов цены достигают экстремальных значений, затем они часто стабилизируются, возвращаясь к прежним уровням. Такой же принцип используется при интерпретации полос Боллинджера, которые описаны ниже.
Расчет верхней и нижней полос Боллинджера: UPPER BAND = SMA(CLOSE, N) *[1 +K/1000], LOWER BAND = SMA(CLOSE, N) *[1 - K/1000], где UPPER BAND - верхняя линия индикатора; LOWER BAND - нижняя линия индикатора; SMA -простое скользящее среднее; CLOSE - цена закрытия; N - период усреднения; K/1000 - величина отклонения от среднего (в десятых долях процента).
Эффективно использовать факт пробития ценой линий канала в качестве доказательства усиления движения. Пересечения ценой полосы МА рассматривается как фильтр. В этом случае покупка совершается тогда, когда цена пересекла
свою МА (центральную линию) вверх, а потом и верхнюю границу канала (конверта). Продажа совершается в обратном порядке: если цена пересекла свою МА вниз, а затем и нижнюю границу канала. Эта стратегия, как правило, сокращает число ложных сигналов, потому что сигнал на вход в рынок не поступает, пока цена находится в боковом движении, то есть внутри канала. Но при наличии настоящего тренда сигнал поступает с запаздыванием, и некоторая часть трендового движения теряется. Зато сигнал в высокой степени надёжен [2, 5].
Полосы Боллинджера (Bollinger Bands, BB) схожи с Envelopes. Различие между ними состоит в том, что границы огибающих линий расположены выше и ниже кривой скользящего среднего на фиксированном в процентах расстоянии, а границы Bollinger Bands строятся на расстояниях, равных определенному числу стандартных отклонений. Так как величина стандартного отклонения зависит от волатильности, в периоды значительных ценовых изменений полосы расширяются, давая простор ценам. В периоды застоя полосы сужаются, удерживая цены в пределах своих границ. Как и в случае с предыдущим индикатором, интерпретация полос Боллинджера основана на том, что цены, как правило, остаются в пределах верхней и нижней границ полосы (рис. 6).
Особенностями индикатора BB являются:
1. резкие изменения цен, обычно происходящие после сужения полосы, соответствующего снижению волатильности;
2. если цены выходят за пределы полосы, возможно, следует ожидать продолжения текущей тенденции;
3. если за пиками и впадинами за пределами полосы следуют пики и впадины внутри полосы, возможен разворот тенденции;
4. движение цен, начавшееся от одной из границ полосы, обычно достигает противоположной границы.
Полосы Боллинджера заранее предупреждают
Таблица 1 - Результаты теоретической торговли
Индикатор Прибыль (руб.) Прибыль (%)
MACD 5878,99 29.40
Alligator 6405.40 32,03
Envelopes 8991,78 44,96
Bollinger Bands 4956,54 24,78
Moving Average 6828,44 34,14
Таблица 2 - Результаты теоретической торговли с оптимизированной системой
Индикатор Прибыль (руб.) Прибыль(%)
До После До После
MACD 5878,99 6584,47 29,40 32,92
Alligator 6405,40 7366,21 32,03 36,83
Envelopes 8991,78 10250,63 44,96 51,25
Bollinger Bands 4956,54 5799,15 24,78 29
Moving Average 6828,44 7647,85 34,14 38,24
об изменении тренда. Резкое ценовое движение вынуждает полосы расширяться. Когда активный рынок, наконец, станет боковым, полосы медленно сжимаются к цене. Проходит время, и полосы Боллинджера закрываются на быстром вертикальном движении. Опыт позволяет быстро оценить требуемое время до того, как полосы сожмутся, и соответственно отреагировать.
Проверка на ошибочность является одним из методов определения соответствующей длины скользящей средней. Полосы Боллинджера могут охватить большую часть ценового движения, но не всё. После резких движений, пересечение полос является нормальным. Если цена, пересекает внешние полосы слишком часто, то может потребоваться использование более «длинных» скользящих средних. Если цены редко достигают внешних полос, то соответственно - более коротких скользящих средних [6].
Для проверки работоспособности исследуемых моделей технического анализа, лежащих в основе разработанного программного инструментария для анализа состояния и прогноза поведения рынка ценных бумаг, проведена теоретическая торговля на основе сигналов моделей. Торговля осуществлялась с использованием дневного графика акций. Выполнялась покупка или продажа лонгов и шортов. Внутри дня покупки и продажи не производились.
Результаты теоретической торговли различных индикаторов технического анализа на дневном графике ОАО «Сбербанк России» с 15 октября 2012 года по 15 апреля 2013 года, при начальном капитале 20 тыс. руб. (сделки совершались на всю сумму) приведены в табл. 1:
Как видно из таблицы наиболее прибыльным, при сложившейся ситуации на рынке с 15 октября 2012 года по 15 апреля 2013 года, является индикатор огибающие линии, однако эти данные приведены без учета оптимизации системы. Любая система, в которой реализованы индикаторы технического анализа, выдает ложные сигналы, являющиеся убыточными, либо приносящие не максимальную прибыль, а только её часть. Оптимизация заключается в отсечении ложных сигналов и увеличении количества верных сигналов. Прибыль, получаемая после оптимизации системы, приведена в табл. 2. Заметно, что сумма прибыли повысилась, к примеру, у индикатора envelopes она увеличилась более чем на тысячу рублей.
Исходя из приведенных выше примеров торговли, можно сделать вывод о том, что исследованные модели пригодны для анализа ситуации на фондовом рынке, а разработанное на их основе программное обеспечение может стать хорошим помощником трейдеру при принятии решений о заключении той или иной сделки.
Использование «Successful Trading» позволит трейдеру быстро реагировать на любые изменения в области торговли фондовыми ценностями. Возможно дальнейшее наращивание функциональности системы с учетом потребностей пользователя путем автоматизации получения данных о котировках акций через интернет по запросу. Кроме того, разработанное программное приложение «Successful Trading» может быть использовано в качестве подсистемы технического анализа в системе автоматизированной торговли на рынке ценных бумаг.
СПИСОК ЛИТЕРАТУРЫ
1. Петерс, Э. Хаос и порядок на рынках капитала. - М.: Мир, 2000. - 333 с.
2. Найман, Эрик Л. Мастер-трейдинг: секретные материалы. - М.:Альпина Паблишер, 2002. -320 с.
3. Дегтярева, О.И. Рынок ценных бумаг и биржевое дело: учебник для вузов / О.И. Дегтярева, Н. М. Коршунов, Е.Ф. Жуков. - М.: ЮНИТИ - ДАНА, 2004. - 501 с.
4. Вильямс, Билл. Новые измерения в биржевой торговле; как извлечь прибыль из хаоса: рынки акций, облигаций и фьючерсов. - М.: ИК Аналатика, 2000. - 156 с.
5. Тьюлз, Р. Фондовый рынок. - 6 - е изд.: пер. с англ. / Р. Тьюлз, Э. Бредли, Т. Тьюлз - М.: ИН-ФРА - М, 2000. - 648 с.
6. Аналитические технологии для прогнозирования и анализа данных [электронный ресурс]. -Режим доступа:http://masters.donntu.edu.ш/2006/íVti/akulov/Иbrary/art08.htm, свободный.
7. Найман, Эрик Л. Малая Энциклопедия трейдера. - М.: Альпина Бизнес Букс, 2007. - 402 с.
8. Швагер, Д. Технический анализ, третье издание. - М.: Альпина Бизнес Букс, 2006. -805 с.
9. Твардовский, В.В. Секреты биржевой торговли: Торговля акциями на фондовых биржах/ В.В. Твардовский, С. Паршиков - 3 - е изд., перераб. и доп. - М.: Альпина Бизнес Букс, 2006. - 551 с.
10. Рейзенбук, К. Э. Программный комплекс для технического анализа рынка ценных К.Э. Рейзен-бук, И.А. Пимонов, Ю.В. Хараман //Вестник КузГТУ. - 2008. - №4. - С.100-104.
□Авторы статьи:
Миндияров Рейзенбук
Никита Игоревич, Кристина Эдуардовна,
студент каф. прикладных информа- ст. преп.каф. прикладных информационных технологий КузГТУ, ционных технологий КузГТУ,
Email:, [email protected] Email:, [email protected]