WWW.WIKI.PDFM.RU
БЕСПЛАТНАЯ  ИНТЕРНЕТ  БИБЛИОТЕКА - Собрание ресурсов
 

«Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования «ФИНАНСОВЫЙ УНИВЕРСИТЕТ ПРИ ПРАВИТЕЛЬСТВЕ РОССИЙСКОЙ ФЕДЕРАЦИИ» Факультет ...»

Федеральное государственное образовательное бюджетное учреждение

высшего профессионального образования

«ФИНАНСОВЫЙ УНИВЕРСИТЕТ ПРИ ПРАВИТЕЛЬСТВЕ

РОССИЙСКОЙ ФЕДЕРАЦИИ»

Факультет «Кредитно-экономический»

Кафедра «Финансовые рынки и финансовый инжиниринг»

«Допускаю к защите»

Заведующий кафедрой

_________профессор Рубцов Б.Б .

«__» ________ _____ года

Магистерская диссертация Коноваленко Андрея Ивановича на тему:

«Использование механической торговой системы на российском рынке акций»

Направление подготовки - 080100.68 – «Экономика»

Магистерская программа - «Финансовые рынки и финансовый инжиниринг»

Научный руководитель:

Доцент, к.э.н, Соловьев Павел Юрьевич ________ Москва 2014 Содержание СОДЕРЖАНИЕ………………………………………………………..………..2 ВВЕДЕНИЕ……………………………………………………………………...3

1. ТОРГОВЫЕ СИСТЕМЫ НА РЫНКЕ ЦЕННЫХ БУМАГ. ПОНЯТИЕ

И ВИДЫ…………………………………………………………………………..6 Понятие механической торговой системы………………………………6 1.1 .

Виды торговых систем……………………………………………………7 1.2 .

Структура торговой системы……………………………………………19 1.3 .

2. АРБИТРАЖНЫЕ ТОРГОВЫЕ СТРАТЕГИИ…………………………..23

2.1. Целесообразность применения арбитражных торговых систем……….23

2.2. Исследование внешней среды механической торговой системы……….28



2.3. Критерии оценки работы торговой системы…………………………..…41

ПРИМЕР ПОСТРОЯЕНИЯ МЕХАНИЧЕСКОЙ

3.ПРАКТИЧЕКИЙ ТОРГОВОЙ СИСТЕМЫ…………………………………………… ……….47

3.1. Построение механической торговой системы на основе статистической арбитражной стратегии………………………………………………………...47

3.2. Бэк - тестирование торговой системы в среде Microsoft Excel………..55

3.3. Способы автоматизации механических торговых систем……………...70 ЗАКЛЮЧЕНИЕ…………………………………………………………..…….72 БИБЛИОГРАФИЧЕСКИЙ СПИСОК ЛИТЕРАТУРЫ………………..…74 ПРИЛОЖЕНИЯ…………………………………………………………….….77 Введение На сегодняшний день трудно представить успешного трейдера не знакомого с такими понятиями как «механическая торговая система» или «алгоритмическая торговля». Все больше брокерских компаний, наряду с традиционными услугами, предлагают своим клиентам приобрести готового торгового робота и оказывать техническую поддержку по его использование .

По информации представленной 07.12.2013г. председателем правления брокерской компании ОАО «ИК «АйТиИнвест» В. Твардовским на II ежегодной российской конференции по алгоритмической торговле, доля алгоритмических оборотов на фондовом рынке ММВБ за период с октября 2010г. по октябрь 2013 возросла с 20% до 50% .

Таким образом, можно говорить о растущем интересе участников рынка к алгоритмизации торговли .

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

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





Для реализации данной цели поставлены следующие задачи:

• Определение связь между понятием «механическая торговая система»

и торговыми стратегиями;

• Изучение типовой структуры механической торговой системы;

• Выбор торговой стратегии и конкретных инструментов, обоснование данного выбора;

• Разработка механической торговой системы на базе выбранной стратегии и инструментов;

• Бэк – тестирование (проверка на исторических данных) механической торговой системы;

• Проанализировать полученные результаты;

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

Первая глава посвящена раскрытию понятия «механическая торговая система». Изложены основные принципы построения механической торговой системы. Рассмотрены основные виды торговых стратегий, лежащих в основе торговых систем. Приведен краткий обзор индикаторов технического анализа лежащих в основе торговых стратегий. Приведена общая схема построения механической торговой системы. Особое внимание отводится арбитражным торговым стратегиям .

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

приводится детальная схема построения В третьей главе механической торговой системы на базе выбранной стратегии. Детально описываются вводимые внешние параметры, влияющие на получение торговых сигналов, проводится тестирование механической торговой системы на исторических данных, так называемое «бэк-тестирование», сравниваются полученные данные исходя из различных начальных параметров. Предлагаются варианты оптимизации и повышения эффективности механической торговой системы. Анализируются полученные результаты. Приводится конкретный вариант автоматизации торговой системы с использованием интегрированного в торговый терминал QUIK языка программирования QPILE .

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

В приложениях приведен программный код бэк-теста на языке программирования VBA, объединяющего в себе:

- статистический анализ временных рядов для выявления торговых сигналов;

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

- процедуры, исполнения сигналов и контроля открытых позиций;

-процедуру переоценки портфеля, для целей расчета коэффициента Шарпа .

- процедуру формирования отчета о результатах бэк-теста .

В приложение 4 приведены все бэк-тесты в полном объеме, на основе которых построены сводные таблицы в тексте .

1. Торговые системы на рынке ценных бумаг. Понятия и виды Понятие механической торговой системы 1.1 .

Рассмотрим мнения различных авторов по вопросу определения понятия «торговая система» в целом и механическая торговая система в частности .

Механические торговые системы можно определить как средства генерации торговых сигналов и количественной оценки риска независимо от мнения трейдера1 .

A trading system is a precise set of rules that automatically defines, without any human discretionary intervention, the entry and the exit on the markets. Since rules are precise there is no doubt over when and where to apply them and this makes the trading system statistically testable2. Торговая система - это точный набор автоматически определяемых правил входа и выхода на рынок, без какого-либо субъективного вмешательства человека. С того момента как правила определены, не возникает сомнений, когда и где их применять .

Данное условие дает возможность проверить торговую систему на основе статистических данных .

Роберт Прадо автор книги «The evolution and optimization of trading strategies /Robert Prado – 2nd ed. » рассматривает понятие «торговая система»

более широко, он вводит понятие: systematic trading strategy (систематическая торговая стратегия) .

Systematic trading strategy is acting methodically according to a fixed plan that is designed to achieve a profitable return by going long or short in markets on organized financial exchanges3. Систематическая торговая стратегия - это Вайсман Р. Механические торговые системы: Психология трейдинга и технический анализ / Пер. с англ .

/Ричард Вайсман – М.: Альпина Паблишерз, 2011. - стр.23 .

Jaekle U., Tomasi E. Trading Systems. A new approach to system development and portfolio optimization./Urban Jaekle, Emilio Tomasi - Harriman House Ltd, 2009 - p. 3 .

Prado R. The evolution and optimization of trading strategies /Robert Prado – 2nd ed. – New Jersey; Published by John Wiley & Sons, Inc., 2008. – p. 17 .

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

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

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

Виды торговых систем1.2 .

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

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

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

Второй тип: арбитражные торговые стратеги .

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

Рассмотрим виды торговых систем, построенных на основе стратегий относящихся к первому типу. Так как в основе данных стратегий лежат индикаторы технического анализа, основным критерием использования того или иного индикатора является состояние рынка. Существует два основных состояния рынка: первое – это когда имеет место четкий восходящий или нисходящий тренд; второе – когда нет явно выраженного тренда, т.е. рынок находится в «боковике» или «флэтовом»4 (от анг. flat - ровный) состоянии, либо имеет место долговременное колебание в определенном диапазоне .

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

• Системы, основанные на трендовых моделях, в которых торговые сигналы возникают в момент смены направления тренда на рынке;

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

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

Остановимся подробнее на видах скользящих средних .

Все скользящие средние сглаживают временные ряды с использованием некоторого усредняющего процесса. Отличия состоят в том, какой удельный вес присваивается каждой из точек данных и насколько В качестве примера «флэтового» состояния можно привести российский рынок акций с марта 2012 по декабрь 2013г, индекс ММВБ колебался в пределах 1250-1550 пунктов .

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

- простые скользящие средние (Simple Moving Average - SMA);

- взвешенные скользящие средние (Weighted Moving Average - WMA);

- экспоненциальное скользящие средние (Exponential Moving Average EMA) .

Приведем формулы скользящих средних5 .

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

Определяется следующей формулой:

Где:

– цена текущего периода;

n – число периодов расчета .

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

WMA определяется следующей формулой:

Где:

– цена текущего периода;

n – число периодов расчета .

– весовой коэффициент, советующий значению арифметической прогрессии .

Использованы материалы: ru.wikipedia.org/wiki/Скользящая_средняя Экспоненциальное скользящее среднее - разновидность взвешенной скользящей средней, веса которой убывают экспоненциально и никогда не равны нулю.

EMA определяется следующей формулой:

Где:

- текущее значение экспоненциального скользящего среднего;

- предыдущее значение экспоненциального скользящего среднего;

- текущая цена закрытия инструмента;

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

Существуют и другие разновидности скользящих средних, например сглаженное скользящее среднее (Smoothed Moving Average) и другие .

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

Для примера возьмем часовой график котировок обыкновенный акций ОАО «Сбербанк» за период с 22.09.2013 по 09.10.2014 (рис. 1-1). Наложим на данный график простую скользящую среднюю с периодом расчета 9 часов и простую скользящую среднюю с периодом расчета 45часов .

Суть стратегии заключается в следующем: если скользящая средняя с коротким периодом расчета (MA9) пересекает скользящую среднюю с длинным периодом расчета (MA45) сверху вниз (точка C), то имеют место смена тренда на нисходящий, если скользящая средняя с коротким периодом расчета (MA9) пересекает скользящую среднюю с длинным периодом расчета (MA45) снизу вверх (точка D), то имеет место смена тренда на восходящий. Таким образом, в точке C целесообразно открыть короткую позицию, а в точке D длинную .

Рис. Динамика котировок обыкновенный акций ОАО 1-1 «Сбербанк» с наложением двух скользящих средних (источник торговый терминал QUIK) .

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

Отсюда возникают убыточные операции. В частности на рис. 1-1 в точке A возникает сигнал на открытие короткой позиции и уже в следующей свече видно начало формирования противоположенного восходящего тренда .

Соответственно, имея длинную позицию до точки A, мы бы ее закрыли с убытком, а в точке B получили бы сигнал на открытие длинной позиции примерно на том же уровне .

Перейдем ко второму виду стратегий основанных на осцилляторах .

Для начала дадим определение понятию «осциллятор». Осциллятор – это индикатор, обычно основанный на ценах и имеющий тенденцию колебаться или в некоторых фиксированных или «осциллировать»

достаточно жестко ограниченных пределах. Осцилляторы характеризуются нормализацией диапазона и удалением долговременных трендов уровня цен

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

«перепроданность»), когда цены готовы резко вернуться на более разумный уровень6 .

Существует два основных вида осцилляторов:

• Линейные полосовые фильтры, анализирующие частоту колебаний, такие как MACD (Moving Average Convergence/Divergence)7 и MACDHistogram (гистограмма);

• Стохастический осциллятор индикатор (Stochastic Osscillator) технического анализа, который показывает положение текущей цены относительно диапазона цен за определенный период в прошлом, измеряется в процентах. Другими словами показывает состояние «прекупленности» или «перепроданности» .

Остановимся подробнее на стохастическом осцилляторе. Согласно толкованию автора индикатора Джорджа Лэйна (George C. Lane), основная идея состоит в том, что при тенденции роста цены (возрастающий тренд) цена закрытия очередного тайм фрейма имеет тенденцию останавливаться вблизи предыдущих максимумов. При тенденции снижения цены (падающий тренд) цена закрытия очередного тайм фрейма имеет тенденцию останавливаться вблизи предыдущих минимумов. Фактически, индикатор демонстрирует расхождение цены закрытия текущего периода относительно цен предыдущих периодов в рамках заданного временного промежутка .

Индикатор состоит из двух линий:

-%K – быстрый стохастик (сплошная линия, основной график);

Кац Д. О. Энциклопедия торговых стратегий/ Пер. с англ. / Джеффри Оуэн Кац, Донна Л. МакКормик. – М.: Альпари Паблишер, 2002. – стр. 157-158 .

Cхождение/расхождение скользящих средних — технический индикатор, разработанный Джеральдом Аппелем. Индикатор используют для проверки силы и направления тренда, а также определения разворотных точек. Строится на основе скользящих средних. Существует две модификации индикатора MACD: линейный MACD и MACD-гистограмма. (материал: http://ru.wikipedia.org/wiki/Индикатор_MACD) .

См. Приложение 1 .

-%D – медленный стохастик (пунктирная линия, является скользящей средней относительно %K с небольшим периодом расчета. Может быть:

SMA, WMA, EMA и другие) .

Формула расчета:

Где:

– цена закрытия текущего периода;

– самая низкая цена за последние n периодов;

– самая высокая цена за последние n периодов8 .

Приведем пример системы использующей стохастический осциллятор на примере минутного графика котировок обыкновенных акций ОАО «Сбербанк» рис. 1-2 .

–  –  –

Использованы материалы: ru.wikipedia.org/wiki/Стахостический_осцилятор .

• Покупать, когда линия графика индикатора (%K или %D) сначала опустится ниже оговоренного уровня (обычно 20 %), а затем поднимется выше него. Продавать, когда линия графика индикатора сначала поднимется выше определённого уровня (обычно 80 %), а потом опустится ниже него;

• Покупать, если линия %K поднимается выше линии %D. Продавать, если линия %K опускается ниже линии %D;

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

• Пересечение отметки 80 % при росте индикатора интерпретируется, как сигнал о вероятной остановке роста или даже начале снижения цен .

Пересечение отметки при снижении индикатора 20 % интерпретируется, как сигнал о вероятной остановке падения или даже начале роста цен .

Таким образом, наша система получает предварительный сигнал в точке А, ждет его подтверждения и совершить закрытие длинной позиции либо открытие короткой в точке А1. Аналогично происходит в точках B и B1, единственное отличие состоит в том, что либо закрывается короткая позиция, либо открывается длинная. В точке A бумага перекуплена, поэтому происходит снижение ее котировки, в точке B перепродана, соответственно происходит повышение ее котировки .

Помимо и существуют другие индикаторы MACD Stochastic технического анализа, эффективно работающие во флэтовом состояние рынка, такие как: полосы Боллинджера (Bollinger Bands)9 и RSI (relative strength index - индекс относительной силы)10 и другие .

Мы рассмотрели некоторые виды торговых систем, построенные на базе технических индикаторов, но необходимо помнить, что система будет только тогда эффективна, когда в ней будет реализован ряд (комбинация) механизмов, способных адекватно адаптироваться к изменению рыночной конъюнктуры. В частности в торговом терминале QUIK версии 6.12.0.31 реализовано порядка 39 методов технического анализа .

Перейдем к рассмотрению торговых систем построенных на базе арбитражных стратегий .

Для начала разберемся с понятием «арбитраж». Согласно определению, приведенному У.Ф. Шарпом в книге «Инвестиции»11: «Арбитраж (arbitrage) – это получение безрисковой прибыли путем использования разных цен на одинаковые продукцию или ценные бумаги. Арбитраж, являющийся широко распространенной инвестиционной тактикой, обычно состоит из продажи ценной бумаги по относительно высокой цене и одновременной покупки той же ценной бумаги (или функционального эквивалента) по относительно низкой цене». Исходя из определения понятно, что арбитражные стратегии работают в определённых условиях, в которых возникает диспропорция цен на финансовые активы .

В таблице 1.1. приведены виды арбитражных стратегий в разрезе, используемых инструментов12 .

–  –  –

Разберем подробнее каждую из приведенных выше стратегий13 .

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

Стратегия использует разницу в рыночной цене валютной пары EUR/CAD и синтетической валютной пары EUR/CAD, сформированной следующим образом:

EUR/CAD (синт., bid) = EUR/USD (рын., bid)USD/CAD(рын.,bid) EUR/CAD (синт., ask) = EUR/USD (рын., ask)USD/CAD(рын.,ask) Если цена покупки (ask) для EUR/USD ниже, чем синтетическая цена продажи (bid) для EUR/USD, то целесообразно открыть длинную позицию по EUR/USD и короткую по синтетической паре EUR/USD. Арбитражная прибыль возникнет в тот момент выравнивания синтетической цена В приведенных описаниях арбитражных стратегий использованы материалы: см. сноску 13 .

рыночной цены. Для фиксации прибыли перевернуть позицию, т.е .

совершить противоположенные сделки .

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

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

Арбитраж, в основе которого лежит принцип нейтральности рынка, построен на основе модели CAPM (Capital Asset Pricing Model). Суть стратегии заключается в том, что все бумаги в той или иной степени двигаются в том же направлении, что и рынок (S&P 500, индекс ММБВ) .

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

Арбитраж на основе колебания ликвидности инструмента. Если исходить из предположения того, что низколиквидный инструмент показывать доходность выше, чем ликвидный инструмент за определенный период времени и причиной тому является, так называема, компенсация за риск потери ликвидности, то для инструментов с цикличными колебаниями ликвидности, период низкой ликвидности создает возможность для арбитража. Данная тема имеет свое отражение в научных работах в частности в статье: Liquidity Risk and Expected Stock Returns (Риск ликвидности и ожидаемая доходность акций); опубликованой в Journal of Political Economy, 2003, vol. 111, no. 3; авторы: студент Чикагского Университета Lubos Pastor и студент Университета Пенсильвании Rpobert F .

Stambaugh совместно с Бюро экономических исследований .

Арбитраж, связанный с вторичным эффектом информации. Идея заключается в том, что компании с высокой капитализацией (более 10 млрд .

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

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

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

В следующем разделе постараемся ответить на вопросы: Из чего же состоит механическая торговая система? Какова ее структура?

–  –  –

Рис.

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

• Получать, и сохранять в массив текущие котировки;

• Выявлять торговые сигналы на основе алгоритма;

• Управлять портфелем (пример: сохранять определенное соотношение длинных/коротких позиций);

• Формировать и выставлять через торговый терминал торговые заявки на покупку или продажу бумаг;

• Получать подтверждение об исполнении заявки, в случае ее неисполнения в течение определенного времени обеспечить снятие заявки;

• Рассчитывать прибыль /убыток по каждой операции;

• Осуществлять риск менеджмент .

В зависимости от сложности системы некоторые функции можно объединять в одной процедуре .

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

Пример: если условием возникновения торгового сигнала является 20% отклонение от среднего значения цены инструмента за 50 периодов расчета, то при получении новых данных необходимо смещать период расчет на шаг вперед, для этого в системе необходим модуль, отвечающий за получение текущих котировок. Применительно к российской практике эта функция может быть реализована при помощи торгового терминала QUIK, в котором реализован экспорт данных через DDE-сервер. А именно, происходит передача данных из таблиц системы QUIK во внешние программы, например, в Microsoft Excel. Экспорт осуществляется в формате XTABLE через метод обмена DDE16 .

Процедура выявления торговых сигналов в системе совершает следующие действия:

• Обновляет параметры модели на основе новых котировок;

• Отслеживает факт исполнения ранее выставленных заявок;

• Сравнивает текущие данные с ограничениями стратегии;

• Формирует параметры торговой заявки .

Другими словами вычисляет точки входа и выход .

Следующая процедура выставляет и снимает заявки в торговый терминал, применительно к рабочему месту QUIK, данная функция может осуществляться либо вручную, либо быть автоматизирована при помощи встроенной в терминал функции «Импорт транзакций»17 .

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

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

Руководство пользователя. Рабочее место пользователя QUIK. Версия 6.12 DDE (Dynamic Data Exchange) — механизм взаимодействия приложений в операционных системах Microsoft Windows и OS/2 .

Руководство пользователя. Рабочее место пользователя QUIK. Версия 6.12 Раздел. Импорт транзакций

2. Арбитражные торговые стратегии

2.1. Целесообразность применения арбитражных торговых систем

В основе получения арбитражной прибыли лежит такое сочетание обстоятельств, при которых прибыль возникает без риска потерять вложенные средства - этот принцип является сутью арбитража и зафиксирован в его определении. Как отмечалось в первой главе, существует целый ряд арбитражных стратегий, позволяющий извлекать безрисковую прибыль, используя различные финансовые инструмент: валюту, ценные бумаги, деривативы. Поскольку целью данной работы является изучить процесс построения механической торговой системы, арбитражная торговая стратегия как нельзя лучше подходит для построения на ее базе механической торговой стратегии. Это обусловлено тем, что стратегии на базе «технического анализа» непосредственно зависят от направления рынка, т.е. подвержены рыночному риску. Арбитражные стратегии в меньшей степени зависят от направления рынка, их основная задача - вовремя среагировать на появления определённых обстоятельств (дисбаланса на рынке) для заключения сделки и получения безрисковой прибыли. Хотя говорить о том, что арбитражные стратегии полностью безрисковые, на мой взгляд, не совсем провалено, так как всегда имеют место транзакционные издержки такие как: комиссии, проскальзывание, сбои в канале связи и т.д., которые накладывают определенный риск, того что арбитражная прибыль может не покрыть их .

Теперь перейдем непосредственно к описанию рыночных «обстоятельств» при которых возможен арбитраж. Для целей данной работы выбрана торговая стратегия на базе «статистического арбитража» .

Разберем понятие «статистический арбитраж». Согласно Ирене Алдридж, автору книги трейдинг: практическое «Высоко-частотный руководство по алгоритмическим стратегиям и торговым системам»18 понятие «статистический арбитраж» впервые было использовано в конце 90-х годов 20 века. История его появления связана с тем, что на финансовом рынке появились участники, которые стали нанимать на работу аналитиков с научными степенями по физике и математики, которые в свою очередь стали применять свой опыт и научные методы к анализу рыночных процессов и построению торговых систем. Примерами научных методов, используемых в анализе рыночных процессов, могут быть: теория вероятности, нелинейные и динамические математические модели, нейронные сети, и т.д. Тем не менее, даже выявление простых статистических связей позволяло им показывать двухзначные уровни доходности .

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

Приведем конкретный пример такой зависимости .

В качестве объекта исследования возьмем обыкновенные акции и привилегированные акции «Сбербанк» (ОАО), свободно обращающиеся на российском фондовом рынке .

Для определения тесноты связи возьмем дневные цены закрытия за период с 01.01.2010 по 01.01.2014, коэффициент корреляции равен на Irene Aldridge. High-frequency trading: a practical guide to algorithmic strategies and trading system указанном промежутке времени 0,863, что является высоким показателем тесноты связи между двумя историческими рядами данных .

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

Хотя они и относятся к наиболее ликвидным бумагам на Московской бирже, все же среднедневной оборот за исследуемый период времени по ним отличается, у обыкновенных акций он составил 156,5 млн. руб., а у привилегированных 23,2 млн. руб .

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

В качестве вышеуказанного соотношения возьмем разность между ценой обыкновенной и привилегированной акциями «Сбербанк» (ОАО) в определённый момент времени и назовем данную разницу «спред». Ниже приведен график спреда Рис.2-1 .

Рис. 2-1. График разности дневных цен закрытия обыкновенных и привилегированных акций ОАО «Сбербанк» за период 01.01.2010 по 01.01.2014 .

Как видно из графика, максимальное значение разницы между ценой закрытия обыкновенной и привилегированной акции ОАО «Сбербанк»

составила 35,52 руб., а минимальное 11,2 руб., среднее значение спреда составило 23,52 руб .

Приведем графики изменения цен по каждой бумаге отдельно .

Рис. 2-2 График дневных цен закрытия обыкновенных акций Сбербанк «ОАО» за период с 01.01.2010 по 01.01.2014 .

Рис. 2-3 График дневных цен закрытия привилегированных акций Сбербанк «ОАО» за период с 01.01.2010 по 01.01.2014 .

Из графиков видно, что обыкновенные акции ОАО «Сбербанка»

котируются по цене выше, чем привилегированные .

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

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

2.2. Исследование внешней среды механической торговой системы

Поскольку речь идет о российском рынке акций, приведем некоторые характеристики рынка в целом .

Фондовый рынок Московской Биржи включает в себя три сектора рынка:

Основной рынок – наиболее ликвидный рынок на основе 1 .

технологии торгов с центральным контрагентом, частичным обеспечением и отложенным исполнением. В секторе «Основной рынок» ведутся торги с акциями, депозитарными расписками, инвестиционными паями, ИСУ, ETF, а также ОФЗ, региональными и корпоративными облигациями. Расчеты в Режиме основных торгов Т+ («стакан Т+2») осуществляются на второй день с момента заключения сделки (расчетный цикл - Т+2) .

Standard – биржевой рынок акций на основе технологии торгов с 2 .

центральным контрагентом .

Classica – классический адресный рынок акций, без 100% 3 .

предварительного депонирования бумаг и возможностью расчетов по сделкам в долларах США19 .

Поскольку механическая торговая система будет работать с акциями российских эмитентов, нас интересует сектор «Основной рынок» .

Сектор рынок» является центром формирования «Основной ликвидности на российские ценные бумаги и основной фондовой площадкой для международных инвестиций в ценные бумаги .

В секторе «Основной рынок» ежедневно заключаются сделки по 1400 ценным бумагам 700 компаний, среди которых:

российские финансовые инструменты:

• Акции и российские депозитарные расписки (РДР)

• Корпоративные (в т.ч. биржевые) облигации

• Государственные ценные бумаги (ОФЗ, Еврооблигации) http://moex.com/s17/?print=1

• Региональные Субъектов РФ, Муниципальные (Облигации облигации)

• Инструменты рынка коллективных инвестиций (инвестиционные паи ПИФов, акции АИФов)

• Ипотечные ценные бумаги (облигации с ипотечным покрытием, ипотечные сертификаты участия) иностранные финансовые инструменты:

• Акции и депозитарные расписки (ADR; GDR и т.д.),

• Облигации,

• ETF .

На его долю приходится около 80% объема торгов акциями и свыше 99% объема торгов облигациями на российском фондовом рынке. Также на его долю приходятся все биржевые размещения ценных бумаг, осуществленных на Московской бирже, в т.ч. и облигации федерального займа (ОФЗ) .

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

Торги в секторе «Основной рынок» проводятся в электронном виде на базе торгово-клиринговой системы к которой подключены ASTS, региональные торговые площадки и терминалы удаленного доступа .

В режимах торгов сектора «Основной рынок» используется один из двух базовых принципов:

«Стакан» — принцип режима торгов, где предусмотрена подача анонимных безадресных заявок (заявок, адресованных всем участникам торгов) в аукцион. По данному принципу заключаются сделки куплипродажи, например, в Режиме основных торгов Т+ («стакан Т+2»), Режиме основных торгов («стакан Т+0»), а также сделки РЕПО в режиме торгов «РЕПО с ЦК — Безадресные заявки» .

Адресные заявки — принцип режима торгов, где предусмотрена подача не анонимных заявок адресованных определенному участнику торгов. По данному принципу заключаются сделки купли-продажи в режимах торгов «РПС с ЦК», «Режим переговорных сделок (РПС)», а также сделки РЕПО в режимах торгов «РЕПО с ЦК — Адресные заявки», РЕПО и др .

Режимы торгов имеют различную продолжительность работы и осуществляются в общей сложности с 9:30 до 19:00.20 Далее более детально разберем важные характеристики конкретных инструментов, которые могут быть использованы в механической торговой системе .

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

Для целей данной работы под ликвидностью инструмента понимается – способность активов быть быстро проданными по цене, близкой к рыночной .

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

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

Приведем дневные торговые обороты по ряду инструментов за 1 квартал 2014г .

http://moex.com/s145 http://cbonds.ru/glossary/44 Рис. 2-4 Объем сделок на Московской бирже за день по обыкновенным акциям АКБ «РОСБАНК» (ОАО), в рублях .

Рис. 2-5 Объем сделок на Московской бирже за день по обыкновенным акциям «Газпром» (ОАО), в рублях .

Рис. 2-6 Объем сделок на Московской бирже за день по обыкновенным акциям «Сбербанк» (ОАО), в рублях .

Рис. 2-7 Объем сделок на Московской бирже за день по привилегированным акциям «Сбербанк» (ОАО), в рублях .

–  –  –

Рис. 2-9. Среднее значение количества сделок в натуральном (шт.) выражении за период с 01.04.2014г. – 10.04.2014г. по 4 инструментам .

Из провиденных выше рисунков видно, что бумаги АКБ «РОСБАНК» имеют низкую ликвидность, среднедневной объем сделок по ним составил всего 3 684 руб., а за первую декаду апреля 2014 года в день в среднем по данной бумаге совершалось 20 сделок, что является недостаточными показателями для использования данной бумаги в торговой системе. Бумаги «Сбербанк»

(ОАО) и «Газпром» (ОАО), являются наиболее ликвидными бумагами на Московской бирже, что делает их использование в торговых системах целесообразным .

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

Существует несколько вариантов выхода из данной ситуации:

- ждать появления необходимого количества бумаг, по заданной цене;

- набирать нужное количество по разным ценам .

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

Возможность набрать позицию по цене близкой к цене торгового сигнала определяется следующими характеристиками ликвидности инструмента: глубиной рынка (market depth) и шириной рынка (breadth of the market) .

The total size of limit orders available at a particular price is referred to as the market depth. Глубина рынка – общий размер лимитированных заявок доступных по определенной цене .

The number of different price points at which limit orders exist in the limit order book is known as the breadth of the market. Ширина рынка – количество лимитированных заявок по разным ценам, размещенных в торговой системе по конкретному инструменту.22 Рисунок 2-10 иллюстрируют характеристики ликвидности: Глубину и ширину рынка .

–  –  –

Рис. 2-10 Схема глубины и ширины торговой заявки23 .

Ниже на рис. 2-11 приведено типичное отображение в QUIK котировок в стакане. Цены ask - заявки на продажу красным, цены bid – заявки на покупку зеленым. Таблица содержит лучшие текущие котировки на Использованы материалы: http://www.investopedia.com/terms/m/marketdepth.asp Aldridge I. High-frequency trading: a practical guide to algorithmic strategies and trading system /Aldridge Irene

– New Jersey; Published by John Wiley & Sons, Inc., 2010. – p. 63 .

покупку/продажу, упорядоченные по параметру «Цена». Количество лучших котировок зависит от класса инструментов24 .

–  –  –

Рис. 2-12 Как видно из рис. 2-8 спред25, т.е. разница между лучшей ценой bid и лучшей ценой ask, составляет 0,02 руб. по обыкновенным акциям и 0,03 руб. по ПРИКАЗ ФСФР от 21 января 2011 г. N 11-2/пз-н ОБ УТВЕРЖДЕНИИ ПОЛОЖЕНИЯ О ПОРЯДКЕ И

УСЛОВИЯХ ПОДДЕРЖАНИЯ ЦЕН, СПРОСА, ПРЕДЛОЖЕНИЯ ИЛИ ОБЪЕМА ТОРГОВ

ФИНАНСОВЫМ ИНСТРУМЕНТОМ, ИНОСТРАННОЙ ВАЛЮТОЙ И (ИЛИ) ТОВАРОМ И ИЗМЕНЕНИЙ

В ПОЛОЖЕНИЕ О ПОРЯДКЕ ОКАЗАНИЯ УСЛУГ, СПОСОБСТВУЮЩИХ ЗАКЛЮЧЕНИЮ СРОЧНЫХ

ДОГОВОРОВ (КОНТРАКТОВ), А ТАКЖЕ ОСОБЕННОСТЯХ ОСУЩЕСТВЛЕНИЯ КЛИРИНГА

привилегированным. Шаг цены составляет 0,01 руб. В стакане отражены 20 лучших предложений на продажу и 20 лучших предложений на покупку бумаг. Разница цен между лучшими и худшими предложениями составляет в 20 копеек .

Итак, глубина рынка:

- по обыкновенным акциям «Сбербанк» (ОАО) на момент получения данных составляет, по заявкам на покупку - 50 лотов по 84,57 руб. (в денежном выражение 42285 руб.); по заявкам на продажу - 94 лота по 84,59 (что в денежном выражение 79 514,6 руб.);

- по привилегированным акциям «Сбербанк» (ОАО) на момент получения данных составляет, по заявкам на покупку - 30 лотов по 68,86 руб. (в денежном выражение 206 580 руб.); по заявкам на продажу - лота 252 по 68,89 (в денежном выражение 1 736 028 руб.);

Лот - стандартная единица размера сделки, выраженная в количестве ценных бумаг. Например, 1 лот = 100 бумаг означает, что в торговой системе совершаются сделки с количеством бумаг кратным 10026. Для обыкновенных акций «Сбербанк» (ОАО) 1 лот = 10 бумаг, для привилегированных 1 лот = 100 бумаг .

Ширина рынка из расчета 20 лучших предложений:

- по обыкновенным акциям «Сбербанк» (ОАО) на момент получения данных составляет, по заявкам на покупку - 82 851 лота, их общая стоимость составляет 69 950 860,3 руб.; по заявкам на продажу - 20258 лота их общая стоимость составляет 17 150 509,5руб.;

- по привилегированным акциям «Сбербанк» (ОАО) на момент получения данных составляет, по заявкам на покупку - 2882 лота, их общая стоимость

СРОЧНЫХ ДОГОВОРОВ (КОНТРАКТОВ), УТВЕРЖДЕННОЕ ПРИКАЗОМ ФСФР РОССИИ ОТ

24.08.2006 N 06-95/ПЗ-Н .

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

Руководство пользователя. Рабочее место пользователя QUIK. Версия 6.12 .

составляет 19 807 656 руб.; по заявкам на продажу - 3002 лота их общая стоимость составляет 20 720 236 руб .

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

Теперь перейдем к таким внешним факторам, которые не зависят от рыночной конъюнктуры и в определённой степени являются постоянными, а именно: комиссии и налоги .

В случае реализации механической торговой системы на российском рынке акций необходимо учитывать следующие виды комиссий:

- комиссии Московской биржи .

- депозитарное обслуживание;

- за брокерское обслуживание .

Поскольку в работе рассмотрены инструменты, торгуемые в «Основной рынок» секторе Московской биржи, далее идет описание комиссий взимаемых непосредственно от операций в секторе «Основной рынок» .

Комиссии Московской биржи состоят из трех частей27:

- комиссия Фондовой биржи ММВБ;

- комиссия НКЦ за клиринговое обслуживание;

ОАО Биржа» по договорам

-вознаграждение «Московская предоставления интегрированного технологического сервиса (ИТС) .

Все вышеуказанные комиссии не облагаются НДС .

Размер зависит от выбранного участником торгов тарифного плана и состоит из постоянной и оборотной частей. Постоянная часть изменяется от 0 до 5030000 руб. и взимается в первый торговый день месяца. Оборотная часть изменяется в диапазоне от 0,0065% до 0,01% от суммы сделки и взимается в дату заключения сделки. Комиссии Фондовой Биржи могут быть http://rts.micex.ru/s153 включены в комиссии поставщика брокерских услуг или могут взиматься отдельно, в зависимости от условий договора на брокерское обслуживание .

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

- административные операции (открытие и ведение счета депо);

- инвентарные операции (перемещение ценных бумаг);

- комплексные операции (касаются обременения ценных бумаг);

- информационные операции (выписка счета депо);

-дополнительные .

Необходимо отметить, что комиссии за депозитарные обслуживания составляют наименьшую долю в торговых операциях, так как они имеют фиксированный размер (например, «КИТ Финанс ООО» взимает 8 руб. в день за ведение счета депо, в случае наличия депозитарных операций) .

Теперь перейдем к комиссиям за брокерское обслуживание .

Данный вид комиссий наиболее важный, так как он существенно повлияет на доходность торговли .

В практике российских брокерских компаний принято взимать со своих клиентов следующие комиссии:

- Комиссия в процентах от суммы сделки в зависимости от оборота вдень;

- Комиссии за маржинальное кредитование, т.е. предоставление займа денежными средствами или займа ценными бумагами .

Далее приведена таблица сравнения размера комиссий за брокерское обслуживание у различных компаний (Рис. 2-13) .

–  –  –

Рис. 2-13 Сравнительная таблица комиссий брокерских компаний .

Несколько слов о маржинальном кредитовании .

Приказом ФСФР N13-71/пз-н от 08.августа 2013г. утверждены единые требования к Правилам осуществления брокерской деятельности при совершении сделок за счет клиента. Расчет стоимости портфеля клиента производится исходя из плановых позиций (по бумагам и денежным средствам). Стоимость портфеля сравнивается с начальным и минимальным уровнем маржи. Уровень начальной и минимальной маржи устанавливается для каждой бумаги отдельно исходя из ставок рыночного риска, рассчитываемых ЗАО «Национальный Клиринговый Центр» в соответствии с методикой определения риск-параметров рынка ценных бумаг ЗАО «ФБ ММБВ»28. Введение данного приказа обусловлено переходом на Московской биржи со 2 сентября 2013 года на новый режим торговли Т+2, т.е. списание денежных средств и поставка активов производится на третий день после дня совершения сделки .

Принцип маржинального кредитования состоит в том, что можно совершать сделки не только в рамках собственных средств, но и используя заемные средства, предоставляемые брокером. Заемные средства предоставляются под обеспечение активами (денежные средства и/или УТВЕРЖДЕНА решением Правления ЗАО АКБ «Национальный Клиринговый Центр» «13» декабря 2013 г .

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

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

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

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

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

Если стоимость портфеля снизилась ниже начальной маржи, то нельзя открывать новые позиции в займы. Если стоимость портфеля снизилась ниже минимальной маржи, то позиции клиента закрываются брокером (margincall) .

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

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

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

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

- налогом на доходы физических лиц (НДФЛ) для физических лиц;

- налогом на прибыль для юридических лиц .

В таблице 2-1 приведено сравнение налоговых ставок по НДФЛ и налога на прибыль по разным видам доходов, связанных с рынком ценных бумаг для резидентов .

–  –  –

http://www.investopedia.com/terms/s/slippage.asp при исполнении крупных заявок при отсутствии интереса на рынке поддержать определенный уровень цен .

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

2.3. Критерии оценки работы торговой системы Разберем основные критерии оценки результатов работы механической торговой системы .

Главным критериями работы механической торговой системы является доходность за период .

Доходность за период рассчитываете по формуле:

где, ;

Start Equity – размер инвестиционного капитала на начало периода;

Ending Equity – размер инвестиционного капитала на конец периода .

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

«Max Drawdown» - «максимальная просадка» инвестиционного капитала (счета), рассчитывается по формуле:

значение до наступления минимального (максимальное Equity значения Equity - минимальное значение Equity за это период) / максимальное значение Equity до наступления минимального значения Equity .

Количество трейдов (long и short трейдов), то есть, сколько всего торговая система открыла коротких и длинных позиций. Так же принято подсчитывать выигрышные трейды и проигрышные трейды. Количество выигрышных трейдов должно превышать значение проигрышных .

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

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

В частности принято рассчитывать коэффициент Шарпа31 .

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

Рассчитывается по формуле:

где – средняя доходность портфеля за рассматриваемый период;

– средняя ставка без риска за данный период;

– стандартное отклонения доходности портфеля .

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

Портфелем для целей расчета коэффициента Шарпа будет являться:

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

Это обусловлено тем, что система совершает операции купли/продажи ценных бумаг на основании часовых данных цен закрытия. Выбор первого Буренин А. Н. Управление портфелем ценных бумаг. – М.: Научно-техническое общество имени академика С. И. Вавилова, 2008. –.362 часа торгового дня для оценки доходности за день обусловлен особенностями автоматизации расчетов данной конкретной модели .

В качестве ставки без риска приняты значения индикативной взвешенной ставки рублевых кредитов (депозитов) RUONIA (Ruble которая отражает оценку стоимости OverNight Index Average), необеспеченного рублевого заимствования на условиях «overnight»

стандартным заемщиком из числа российских банков с минимальным кредитным риском. Ставка RUONIA рассчитывается Банком России по методике, разработанной Национальной валютной ассоциацией (НВА) совместно с Банком России, на основе информации о депозитных сделках, заключенных ведущими российскими банками на условиях «overnight» из списка RUONIA между собой в течение всего дня. Список банков – участников формируется Экспертным советом НВА и RUONIA согласовывается с Банком России. В список RUONIA входят не менее 25 и не более 35 банков32 .

http://www.ruonia.ru/methodology.html Глава 3 . Практический пример реализации торговой стратегии Построение механической торговой системы на основе 3.1 .

статистической арбитражной стратегии .

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

Характеристики системы:

- торговая площадка: Московская биржа, основной сектор;

- торговая сессия: основанная;

- инструменты: обыкновенные акции «Сбербанк» (ОАО) (далее по тексту SBER), привилегированные акции «Сбербанк» (ОАО) (далее по тексту SBERP)

- виды торговых операций: открываются как короткие, так и длинные позиции по инструментам;

- тайм фрейм: 1 час;

- торговая стратегия: статистический арбитраж на базе торговли парой коррелированных активов .

Описание торговой стратегии:

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

–  –  –

– текущая цена закрытия, часовой свечи;

– минимальное или максимальное значение спреда Max/min за n – периодов;

– отклонение от разности между максимальным и минимальным значениями спреда, рассчитанными за n- периодов .

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

Итак, покупать спред будем в том случае, если текущее значении спреда будет больше или равно 90-периодному максимуму плюс 20%, продавать спред, при условии, если текущее значение спреда меньше либо равно 90-периодному минимальному значению спреда .

90 – переводный расчет максимума и минимума и 20% отклонение выбран в качестве примера, это не является обязательным требованием, так как - это один из элементов настройки системы. Таким образом, при появлении новых значений цены, система смещается на шаг вперед, что позволяет учитывать новые данные .

–  –  –

Рис. 3-1 Иллюстрация поиска условий для открытия позиции На рис. 3-1 изображен спред за 90 периодов расчета, а также его минимальное и максимальное значения, т.е. при расчете значение будут использованы именно эти точки .

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

Рис. 3-2 Иллюстрация торговых сигналов, полученных механической торговой системой 23,73 Рис. 3-3 Значения часовых цен закрытия SBER и SBERP в соответствии с торговыми сигналами (Рис. 3-2)

На рис. 3-2 изображено 5кривых:

SPREAD – значение часового спреда (цена закрытия SBER –цена закрытия этого же периода SBERP);

Min-90 –минимальное значение спреда за 90 периодов расчета;

Max-90 – максимальное значение спреда за 90 периодов расчета;

Short_signal – линия отклонения («плюс» 20%) от минимально значения спреда за 90 периодов расчета;

линия отклонения («минус» 20%) от максимального Long_signal – значения спреда за 90 периодов расчета;

В точке A текущее значение спреда превысило значение линии данное состояние является для системы сигналом на Long_signal, одновременное выставление заявки на приобретение SBERP и короткой продаже бумаг SBER .

Количество бумаг рассчитывает следующим образом: сумма инвестируемого капитала делится на цену сигнала SBER или SBERP, полученное количество окрыляется до целого значения в меньшую сторону .

Главное соблюсти равенство в денежном выражении короткой и длинной позиции в момент выставления заявок .

В точке B, напротив, текущее значение спреда опустилось ниже линии данное состояние является для системы сигналом на Short_signal, одновременное выставление заявки на открытие длинной позиции SBER (в нашем случае - это закрытие ранее открытой короткой позиции по SBER) и заявки на короткую продажу SBERP(в нашем случае – это закрытие ранее открытой длинной позиции по SBERP) .

После закрытия ранее открытых позиций (или так называемого «переворачивания» позиций) должна возникнуть арбитражная прибыль .

На рис. 3-3 изображено сужение спреда (с 25,13 руб. до 23,73 руб.), т.е .

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

Приведем расчет33 .

Предположим, что размер инвестиционного капитала = 100000руб. Цена закрытия в точке А для SBER = 84,59 руб., SBERP=59,46 руб .

Рассчитаем позицию в точке А:

Продаем бумаг и покупаем, В расчете размер лота принимается равный 1 бумаге, комиссии и сборы не учитываются .

Где = 100000/84,59 = 1182,173, округляем до целого и получаем короткую позицию по SBER в размере 1182 бумаги, на счет нам поступает 99985,38 руб .

= 99985,38 / 59,46 = 1681,557, округляем до целого и получаем длинную по SBERP в размере 1681 бумаг, которые поступают нам на счет депо (остаток округления 33,12 руб. (99885,38 + 168159,46), не использованные деньги при покупке SBERP) .

Позиция в точке А:

- Денежные средства: 99985,38+33,12 = 100018,5 руб .

- бумаги: ( -1182 SBER) + 1770SBERP .

В точке В ситуация на рынке изменилась, спред сузился, мы закрываем ранее открытые позиции, путем открытия противоположенных по новым ценовым значениям. Итак, в точке B SBER = 83,44 руб., SBERP=59,7руб .

1. Откупаем и возвращаем брокеру 1182 бумаги SBER по цене 83,44, затраты составляют 98626 руб .

2. Продаем 1681 бумаг SBERP по цене 59,7руб., получаем на счет 100355,7 руб .

Итоговый баланс:

- Бумаги: 0

- Денежные средства: 100018,5 – 98626+100355,7 = 101762,8 Арбитражная прибыль = 101748,2 -100000 = 1748,2 руб .

Рассмотрим ситуацию, при которой возникает убыток (рис.3-4, 3-5) .

–  –  –

Рис. 3-5 Значения часовых цен закрытия SBER и SBERP в соответствии с торговыми сигналами (Рис. 3-4) Точка С приведена для иллюстрации, того, что система работает в двух направлениях, т.е. в приеденных выше примерах система входила в рынок из начального положения (100% инвестиционного капитал и 0 бумаг) с покупки спреда (длинная позиция по дешёвой бумаге и короткая по дорогой), но она так же способна начинать работу с продажи спреда (короткая позиция по дешёвой и длинная по дорогой), в случае наличия адекватных торговых сигналов .

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

Данные:

Инвестиционный капитал – 100000руб.;

Цены в точке А SBER =104,24; SBERP = 72,49;

Цены в точке B SBER = 106,29; SBERP = 73,27

Позиция в точке А:

= 100000/10,24 = 959 (959,3246) или 99966,16 руб .

= 99966,16/72,49 = 1379(1379,034) (2,45 руб. остаток)

- Денежные средства: т.е. 99966,16 + 2,45 = 99968,61 руб .

- Бумаги: (-959 SBER) + 1379 SBERP

В точке B :

1. Откупаем и возвращаем брокеру 959 бумаг SBER по цене 106,29 затраты составляют 101932,11 руб .

2. Продаем 1379 бумаг SBERP по цене 73,27руб., получаем на счет 101039,33 руб .

Итоговый баланс:

- Бумаги: 0

- Денежные средства: 99968,61 – 101932,11+101039,33 = 99075,83 Арбитражная прибыль = 100000 - 99075,83 = - 924,17руб .

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

Для минимизации убыточных операций необходимо регулярно проводить настройку параметров системы в соответствии с конъюнктурой рынка

3.2. Бэк - тестирование торговой системы в среде Microsoft Excel Для проведения бэк-тестирования (тестирования на исторических данных) механической торговой системы автором использованы возможности языка программирования VBA (Visual basic for application), в среде Excel написана модель бэк-теста, полный код приведен в приложении № 2 .

Прежде чем перейти к результатам тестирования и их анализу оговорим некоторые допущения модели .

Как уже отмечалось во второй Главе введения на Московской бирже режима торговли Т+2 лишило механическую торговую систему на базе статистического арбитража возможности получать преимущества от использования кредитования, однако негативные последствия маржинального кредитования остались, в частности плата за маржинальное кредитования бумагами .

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

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

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

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

Параметры и ограничения тестирования:

• Среда тестирования Microsoft Excel;

• Период тестирования с 01.01.2011 по 01.04.2014;

• Тайм фрейм – 1 час;

• Инструменты: SBER и SBERP

• Инвестиционный капитал (начальный) -100 000 руб.;

• Открываются короткие и длинные позиции;

• Прибыль рефинансируется;

• Торговые издержки: учитываются

• Проскальзывание учитывается;

• Лот равен 1 бумаге;

• Регулируемые параметры:

- число расчетных периодов для вычисления максимального и минимального значения спреда (n-периоды);

- отклонение от максимального и минимального значения, для выявления торговых сигналов (delta) .

–  –  –

Рис. 3- 6. Бек-тест МТС, = 10%, n-периодов = 360, проскальзывание = 0,03руб., ставка комиссий = 0,058% с оборота .

На исторических данных система показа доходность за период 55,19% (14,19 годовых), максимальная просадка счета составила 18,33%, система 17 раз «купила спред»34 и 16 «продала спред», т.е. на конец исследуемого периода у системы остались открытая короткая позиции по SBERP и длинная SBER .

Количество выигрышных трейдов превышает количество проигрышных .

Результаты работы системы значительно превышают результаты пассивной стратегии (BUY&HOLD) по обеим бумагам, коэффициент Шарпа имеет значение равное 0,04 менее 1, что является низким показателем для оценки эффективности управления портфелем .

Для наглядности приведем график изменения инвестиционного капитала (Рис. 3-7) в результате работы системы и графики цен закрытия каждой бумаги в отдельности (Рис. 3-8, 3-9) за указанный период исследования .

Для цели данной работы под покупкой спреда поднимется – отрытые короткой позиции по SBER и одновременно длиной по SBERP при условии отсутствия на момент сигнала открытой позиции, продажа спреда – открытие длинной позиции по SBER и короткой по SBERP при условии отсутствия на момент сигнала открытой позиции. Данные понятия введены автором самостоятельно для удобства изложения материала .

Рис. 3-7 Изменение инвестиционного капитала Рис. 3-8 Динамика часовых цен закрытия обыкновенных акций «Сбербанк» (ОАО) за период с 01.01.2011г. по 30.04.2014г .

Рис. 3-9 Динамика часовых цен закрытия привилегированных акций «Сбербанк» (ОАО) за период с 01.01.2011г. по 30.04.2014г Из приведенных выше рисунков видно, что инвесторы, использовавшие пассивную стратегию инвестирования в период с 01.01.2011г. по 30.04.2014г., понесли убыток, так как в апреле 2014г. бумаги котируются ниже своих уровней января Напротив модель 2011г .

арбитражной торговой системы, приведенной на рис. 3-6, показала доходность 55,19% за весь период тестирования, что советует 14,19% годовых .

Очевидно, что указные выше параметры системы не являются единственно возможными, так же нельзя утверждать, что они оптимальны .

Для поиска оптимальных параметров системы было проведено 49 тестов с различными входными условиями. В таб. 3-1, 3-2, 3-3, 3-4 приведены результаты тестирования .

В качестве изменяемых параметров выбраны значения от 5% до 30% с шагом 5%, и значения периодов расчета максимального и минимального значения спреда: 9, 45, 90, 180, 270, 360 - данные значения соответствуют:

торговому дню, торговой неделе, и 2 торговым неделям, торговому месяцу, и 40 дням .

–  –  –

Таблица 3-1 Изменение значение доходности механической торговой системы в зависимости от изменения параметров: и периода расчета максимально и минимального значения спреда

–  –  –

Таблица 3-3 Размер удержанной комиссии за весь период работы механической торговой системы в зависимости от изменения параметров: и периода расчета максимально и минимального значения спреда

–  –  –

Таблица 3-4 Изменение значение количества трейдов механической торговой системы в зависимости от изменения параметров: и периода расчета максимально и минимального значения спреда Максимальные доходности получены при следующих значениях и n

–периодов:

55,19% (14,09% годовых) при = 10%и n –периодов = 360;

53,43% (13,70% годовых) при = 30%и n –периодов = 360;

44,32% (11,63% годовых) при = 1%и n –периодов = 90 .

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

Для иллюстрации полученных данных построим плоскость доходности в координатах:

- доходность за весь период;

-n - количество периодов расчета максимального/минимального значения спреда;

- - отклонение от максимального/минимального значения .

Рис. 3-10 Плоскость доходности механической торговой стратегии .

Из рис. 3-10 и приведённых выше таблиц видно, что положительная доходность формируется в зоне n-периодов больше 90. Это означает, что использования периодов для расчета максимального/минимального значения спреда менее 90 не эффективно, для данных рыночных условий. Анализируя распределение доходности на плоскости можно сделать предварительный вывод о том, что доходность в большей степени завит от периода расчета максимума/минимума, чем от отклонения .

Период расчета n характеризуют ширину спреда, т.е. чем период больше, тем значение спреда больше, соответственно значение максимума выше, а минимума ниже по отношению к более короткому отрезку времени, так как на долгосрочном промежутке времени колебания рынка отражаются сильнее. Соответственно, используя более длинный промежуток времени для расчёта максимума/минимума, система потенциально получает меньше торговых сигналов и как следствие совершает меньше трейдов. Данная зависимость подтверждается данными из таб. 3-4, а зависимость имеет следующий вид Рис. 3-11 .

Рис. 3-11. Зависимость количества трейдов от n-периода расчета максимального /минимального значения спреда .

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

Рис. 3-12 Зависимость размера доходности механической торговой системы за весь период тестирования от количества трейдов .

Из рис. 3-12 видно, что доходность и количество трейдов имеют обратную зависимость, т.е., чем больше трейдов, тем доходность ниже. Это объясняется достаточно просто – наличие комиссий с оборота .

Построим зависимость объема удержанных комиссий от количества трейдов .

–  –  –

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

- дополнительно исследовать последствия торговли лотами .

3.3. Способы автоматизации механических торговых систем

Теперь несколько слов об автоматизации данной торговой системы .

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

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

QUIK предусмотрена функция экспорта данных в Excel, а также импорт транзакций из внешних текстовых файлов. Остается только написать программу, на любом доступном языке программирования (VBA, С#), которая могла бы в реальном времени анализировать текущие данные из Excel и записывать необходимые параметры транзакции в специальный текстовый файл .

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

FUNC GET_LINE(TAG) CANDLE = GET_CANDLE_EX(TAG, YMD, HMS) LINES = GET_VALUE(CANDLE, "LINES") LINE = GET_COLLECTION_ITEM(LINES, 0) RESULT = GET_VALUE(LINE, "CLOSE") + 0 END FUNC PRICE_SBER = GET_LINE("PRICE_LINE_SBER") PRICE_SBERP = GET_LINE("PRICE_LINE_SBERP") IF PRICE_SBER 0 AND PRICE_SBERP 0 SPREAD = PRICE_SBER - PRICE_SBERP ' Записываем параметры в таблицу программы ROW = CREATE_MAP() ROW = SET_VALUE(ROW, "SPREAD", SPREAD) ROW = SET_VALUE(ROW,"PRICE_SBER", PRICE_SBER) ROW = SET_VALUE(ROW,"PRICE_SBERP", PRICE_SBERP) ADD_ITEM(1, ROW) END IF На Рис. 3-18 приведено визуальное отображение расчета значений спреда в торговом терминале QUIK .

Рис. 3-18. Отображение пользовательского портфеля, позволяющего получать значение спреда SBER-SBERP в системе QUIK .

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

В обзорной части работы глава) были рассмотрены (первая теоретически аспекты построения механической торговой системы .

Раскрыто понятие «механическая торговая системы», приведены виды торговых стратегий, и приведен общий пример структуры торговой системы .

Особо внимание уделено видам арбитражных торговых стратегий .

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

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

В практической части (третья глава) приведено детальное описание выбранной стратеги, описан на практическом примере механизм извлечения арбитражной прибыли, описаны ситуации, при которых может возникнуть убыток. Проведено более 50 бэк-тестов механической торговой системы на исторический данных с разными внешними параметрами (период расчета максимального минимального значения спреда, процент отклонения от максимума минимума, размер комиссии, размер инвестиционного капитала), исторические данные состоят из 7506 элементов (часовые котировки за период с 01.01.2011 по 30.04.2014). Исследовано влияние комиссии, количества трейдов на доходность механической торговой системы .

Приведена иллюстрация поиска оптимальных параметров для выявления максимальной доходности. Предложены рекомендации по повышению эффективности системы .

В пункте 3 третьей главы автором предложен практический метод автоматизации механической торговой системы, с использованием распространенных программных продуктов (MS Excel и торговый терминал QUIK) .

В результате проведенного исследования удалось найти оптимальный набор параметров, при котором механическая торговая система, построенная на базе статистического арбитража, в условиях снижения индекса ММВБ за исследуемый период на 29,27%, показала итоговую положительную доходность, превышающую рыночную банковскую ставку по депозитам, в размере 55,19%, что соответствует 14,09% годовых, а после уплаты НДФЛ 12,48% годовых .

Библиографический список литературы Нормативные документы

1. Федеральный закон от 22.04.1996г. №39-ФЗ «О рынке ценных бумаг»

2. Налоговый кодекс Российской Федерации от 05.08.2000г №117-ФЗ (часть вторя) .

3. Приказ ФСФР России от 21 января 2011 г. N 11-2/пз-н «Об утверждении положения о порядке и условиях поддержании цен, спроса, предложения или объема торгов финансовыми инструментами, иностранной валютой и (или) товарами и изменений в положение о порядке оказания услуг, способствующих заключению срочных договоров (контрактов), а также особенностях осуществления клиринга срочных договоров (контрактов), утвержденное приказом ФСФР России от 24.08.2006 N06-95-пз-н»

4. Приказ ФСФР России от 08.08.2014 N 13-71/пз-н «о единых требованиях к правилам осуществления брокерской деятельности при совершении отдельных сделок за счет клиентов, а также признании утратившими силу отдельных нормативных правовых актов Федеральной службы по финансовым рынкам» .

5. Методика определения риск-параметров рынка ценных бумаг ЗАО «ФБ ММВБ», утверждена решением Правления ЗАО АКБ «Национальный Клиринговый Центр» от 13 декабря 2013г. (протокол №110) .

Книги

6. Вайсман Р. Механические торговые системы: Психология трейдинга и технический анализ /Пер. с англ. /Ричард Вайсман – М.: Альпина Паблишерз, 2011. – 229 c. – ISBN 978-5-9614-1597-1 .

7. Буренин А. Н. Управление портфелем ценных бумаг. – М.: Научнотехническое общество имени академика С. И. Вавилова, 2008. – 440 с .

8. Кац Д. О. Энциклопедия торговых стратегий/ Пер. с англ. / Джеффри Оуэн Кац, Донна Л. МакКормик. – М.: Альпари Паблишер, 2002. – 400 с. – ISBN 5-94599-028-0 .

9. Klamechki L.H. Build an automated stock trading system in Excel/ Lawrence H. Klamecki. – New York; © 2012 Finencial-edu.com, version 3.0. – ISBN:0-9760169-4X .

10. Fitschen K. Building reliable trading systems /Keith Fitschen. – New Jersey; Published by John Wiley & Sons, Inc., 2013. – 291 p. – ISBN 978ebk) .

11. Aldridge I. High-frequency trading: a practical guide to algorithmic strategies and trading system /Aldridge Irene – New Jersey; Published by John Wiley & Sons, Inc., 2010. – 339 p. - ISBN 978-0-470-56376-2

12. Prado R. The evolution and optimization of trading strategies /Robert Prado – 2nd ed. – New Jersey; Published by John Wiley & Sons, Inc., 2008 .

– 334 p. – ISBN 978-0-470-12801-5 .

13. Jaekle U., Tomasi E. Trading Systems. A new approach to system development and portfolio optimization./Utban Jaekle, Emilio Tomasi Harriman House Ltd, 2009. – 240 p. - ISBN 978-1-905641-79-6 .

14. Klamechki L.H. Build an automated stock trading system in Excel/ Lawrence H. Klamecki. – New York; © 2012 Finencial-edu.com, version 3.0. – ISBN:0-9760169-4X .

15. Коннолли К.Б. Покупка и продажа волатильности / Пер. с англ./ Кевин Б. Коннолли – М.: «ИК «Аналитика» .

16. Шарп У., Александр Г., Байли Дж. ИНВЕСТИЦИИ /Пер. с англ. – М.:

ИНФРА-М, 2013. - XII, 1028c .

17.Чеботарев Ю.А. Управляющий робот фондами биржевых операций/ Ю.А. Чеботарев. –М.: ЗАО Издательство «Экономика», 2006- 118с .

ISBN 5-282-02658-9

18.Чеботарев Ю.А. Торговые роботы на российском фондовом рынке/ Ю.А. Чеботарев. –М.: Омега-Л,2006- 144с. ISBN 5-365-00218-0

Интернет-ресурсы, аналитические материалы:

19. Сайт Московской биржи // http:// www.moex.com

20. Сайт Банка России // http:// www.cbr.ru

21. Сайт Национального клирингового центра //http://www.nkcbank.ru/

22. Сайт информационного агентства «МФД-ИнфоЦентр» // http://mfd.ru

23. Миркин.ру // http://www.mirkin.ru

24. Информационный сайт Национальной Валютной Ассоциации http://www.ruonia.ru/

25. Информационный ресурс // http://algoritmus.ru/

26. Сайт брокера КИТ Финанс (ООО) http://brokerkf.ru/

27. Сайт ЗАО компания «Инвестиционная «ФИНАМ»

http://www.finam.ru/ Справочная литература

28. Руководство пользователя QUIK. Версия 6.11

29. Excel 2010 Developer Reference Help Приложения Приложение 1. Пример построения индикатора MACD Приложение 2. Пример построения полос Боллинджера Приложение 3. Код бэк –теста на VBA Sub SBER_SBERP()

–  –  –

Dim NewSheet As String ' первый модуль создание новой книги Dim NewSheet1 As String Dim X As String Dim Resp As Integer NewSheet = InputBox("Введите наименование эмитентов", "Создание нового листа") Worksheets.Add.Name = NewSheet Call Загрузка_дынных_для_анализа Call SPREAD ' строим спред большая цена минус меняшя цена Call CORREL ' считаем коэффициент коррелянции Call SPREAD_RETURN_MAX_MIN 'считаем доходность спреда ' добаляем возможность бэктеста стратегии Dim Resp1 As Integer Resp1 = MsgBox(prompt:="Хотите провести backtest по стратегии % отклонения от временного канала ?", Buttons:=vbYesNo, Title:="Бэктест") Select Case Resp1 Case Is = vbYes GoTo StartSub1 Case Is = vbNo GoTo EndSub1 End Select

StartSub1:

NewSheet1 = NewSheet Worksheets.Add.Name = NewSheet1 & "Strategy1" Call Загрузка_дынных_для_анализа Call SPREAD Call First_strategy(NewSheet, NewSheet1) Call BACKTEST_POSITION Call Return_Finder(NewSheet1) Call RESULT_Builder Call table_maker

EndSub1:

Resp = MsgBox(prompt:="Хотите продолжить?", Buttons:=vbYesNo, Title:="новый эмитент") Select Case Resp Case Is = vbYes GoTo StartSub Case Is = vbNo GoTo EndSub End Select EndSub: ' окончание работы End Sub Sub Загрузка_дынных_для_анализа () Dim Resp As Integer Dim fStr As String With Application.FileDialog(msoFileDialogFilePicker).Show If.SelectedItems.Count = 0 Then MsgBox "Cancel Selected" Exit Sub End If 'fStr is the file path and name of the file you selected .

fStr =.SelectedItems(1) End With With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;" & fStr, Destination:=Range("$A$1")).Name = "CAPTURE".FieldNames = True.RowNumbers = False.FillAdjacentFormulas = False.PreserveFormatting = True.RefreshOnFileOpen = False.RefreshStyle = xlInsertDeleteCells.SavePassword = False.SaveData = True.AdjustColumnWidth = True.RefreshPeriod = 0.TextFilePromptOnRefresh = False.TextFilePlatform = 866.TextFileStartRow = 1.TextFileParseType = xlDelimited.TextFileTextQualifier = xlTextQualifierDoubleQuote.TextFileConsecutiveDelimiter = False.TextFileTabDelimiter = True.TextFileSemicolonDelimiter = True.TextFileCommaDelimiter = False.TextFileSpaceDelimiter = False.TextFileColumnDataTypes = Array(9, 9, 5, 9, 9, 9, 9, 1).TextFileDecimalSeparator = "."

.TextFileTrailingMinusNumbers = True.Refresh BackgroundQuery:=False End With With Application.FileDialog(msoFileDialogFilePicker).Show If.SelectedItems.Count = 0 Then MsgBox "Cancel Selected" Exit Sub End If 'fStr is the file path and name of the file you selected .

fStr =.SelectedItems(1) End With With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;" & fStr, Destination:=Range("$C$1")).Name = "CAPTURE".FieldNames = True.RowNumbers = False.FillAdjacentFormulas = False.PreserveFormatting = True.RefreshOnFileOpen = False.RefreshStyle = xlInsertDeleteCells.SavePassword = False.SaveData = True.AdjustColumnWidth = True.RefreshPeriod = 0.TextFilePromptOnRefresh = False.TextFilePlatform = 866.TextFileStartRow = 1.TextFileParseType = xlDelimited.TextFileTextQualifier = xlTextQualifierDoubleQuote.TextFileConsecutiveDelimiter = False.TextFileTabDelimiter = True.TextFileSemicolonDelimiter = True.TextFileCommaDelimiter = False.TextFileSpaceDelimiter = False.TextFileColumnDataTypes = Array(9, 9, 5, 9, 9, 9, 9, 1).TextFileDecimalSeparator = "."

.TextFileTrailingMinusNumbers = True.Refresh BackgroundQuery:=False End With End Sub Sub SPREAD() ' процедура построения спреда Range("F1") = ("SPREAD") Dim Range_1 As Range Dim c As Variant Dim b As Variant Range("B2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) b=1 For Each c In Range_1 b=1+b Cells(b, 6) = c.Value - Cells(b, 4).Value Next c End Sub Sub CORREL() 'процедцра поиск коэф. коррелдяции Range("E1") = ("Коррел") Dim Range_1 As Range Dim Range_2 As Range Dim Correletion As Double Range("B2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) Range("D2").Select Set Range_2 = Range(Selection, Selection.End(xlDown)) Correletion = WorksheetFunction.CORREL(Range_1, Range_2) Range("E2") = Correletion End Sub Sub SPREAD_RETURN_MAX_MIN() ' процедура расчёта доходности спрэда и нахождение max b мин значения для первого маленького периода Dim Range_1 As Range Dim Range_2 As Range Dim n As Variant Dim k As Variant Dim MinSpread As Variant Dim MaxSpread As Variant Range("G1") = ("S_Returns") Range("F2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) k=1 For Each n In Range_1 k=1+k Cells((k + 1), 7) = (Cells((k + 1), 6).Value - Cells(k, 6).Value) / Cells(k, 6).Value Next n Cells((k + 1), 7).ClearContents Range("F2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) MinSpread = Application.WorksheetFunction.Min(Range_1) MaxSpread = Application.WorksheetFunction.Max(Range_1) Range("K2") = ("Min") Range("K3") = ("Max") Range("L2") = MinSpread Range("L3") = MaxSpread End Sub Sub BACKTEST_POSITION() ' процедура для выставления заявок и контроля открытых позиций '++++++++++++++++++++++++++++++++++ Основной модуль BackTeat++++++++++++++++++++++++++++++ Dim EST_POSA As Variant Dim Posa As Double Dim f As Variant Dim capital As Variant Range("K1") = ("Капитал") capital = InputBox("Введите размер инвестиционного капитала", "капитал") Range("K2") = capital 'the estimated position одной ноги Dim Sec_A As Variant Dim Price_A As Variant Dim Sec_B As Variant Dim Price_B As Variant Dim rest As Variant Dim Profit As Variant ' хранит значение доходности операции Dim M_risk As Variant Dim Com_Sum As Variant ' комиссия Dim Ccm_1_leg As Variant ' комиия превой ноги Dim Com_2_leg As Variant Dim intr As Variant Dim Com_Rate As Variant Dim slip As Variant slip = 0.08 Range("AR8") = slip Com_Rate = 0.00042 ' + 0.0001 ' для удобства вычисления комиссии буду списываться с финреза Range("AR9") = Com_Rate * 100 Range("I1") = ("EQUITY") Range("L1") = ("Дт(Бумаги)_A") Range("M1") = ("Кт(ден. ср-ва)_A") Range("N1") = ("P/L_А") Range("O1") = ("Дт(Бумаги)_B") Range("P1") = ("Кт(ден. ср-ва)_B") Range("Q1") = ("P/L_B") Range("R1") = ("Total_P/L") ' Range("S1") = ("Rest") Range("J8") = ("M_risk") Range("AB1") = ("PORTFOLIO") Range("AB2") = capital Range("AC1") = ("COMMISSION") Range("AD1") = ("Q_SEC_1") Range("AE1") = ("Q_SEC_2") Range("T1") = ("Money_For_long") Range("AF1") = ("PORTFOLIO")

–  –  –

Range("H2").Select Set TestRange = Range(Selection, Selection.End(xlDown)) '=================================== Основной цакл начало============================== '++++++++++++++++++++++++++++++ BUY SPREAD+++++++++++++++++++++++++++++++++ ' Open long: Short sec A, long sec B For Each f In TestRange If f.Value = 1 And Posa = 0 Then ' Cells(m + 1, 9) = 1 Cells(m + 1, 7) = ("Open_long_BUY_SPREAD") Sec_A = Fix((-capital) / (Cells(m + 1, 2).Value)) ' ДТ А можно добавить округление для расчета лотов Cells(m + 1, 12) = Sec_A ' отрицательное количество бумаг Cells(m + 1, 30) = Sec_A Price_A = -Sec_A * (Cells(m + 1, 2).Value - slip) 'КТ А Cells(m + 1, 13) = Price_A ' положительное Sec_B = Fix((capital) / (Cells(m + 1, 4).Value)) ' ДТ B Cells(m + 1, 15) = Sec_B ' положительное Cells(m + 1, 31) = Sec_B Price_B = -Sec_B * (Cells(m + 1, 4).Value + slip) 'КТ B Cells(m + 1, 16) = Price_B ' отрицательное 'rest = Price_B + capital ' погрешность окургления .

' Cells(m + 1, 19) = rest ' остаток от округления при покупке целого числа лотов capital = Price_A + Price_B + capital Cells(m + 1, 28) = capital Com_1_leg = (Price_A - Price_B) * Com_Rate Posa = 1 m=1+m ' close long: Long A, Short B, ElseIf f.Value = -1 And Posa = 1 Then Cells(m + 1, 9) = -1 Cells(m + 1, 7) = ("close_long_SELL_SPREAD") Cells(m + 1, 12) = 0 ' ДТ A Cells(m + 1, 13) = Sec_A * (Cells(m + 1, 2).Value + slip) 'КТ А' отрицательная Sec_A = O Cells(m + 1, 14) = Price_A + Cells(m + 1, 13).Value ' балнас P/L по бумаге А после закрытия позиции Cells(m + 1, 15) = 0 ' ДТ B Cells(m + 1, 16) = Sec_B * (Cells(m + 1, 4).Value - slip) 'КТ B' положительная Sec_B = O ' EST_POSA = Cells(m + 1, 16).Value Cells(m + 1, 17) = Cells(m + 1, 16).Value + Price_B ' балнас P/L по бумаге А после закрытия позиции Com_2_leg = (Cells(m + 1, 16).Value - Cells(m + 1, 13).Value) * Com_Rate Com_Sum = Com_1_leg + Com_2_leg Profit = Cells(m + 1, 14).Value + Cells(m + 1, 17).Value - Com_Sum ' - intr Cells(m + 1, 18) = Profit ' rest = 0 capital = capital + Profit ' + rest

–  –  –

'+++++++++++++++++++++++++++++++ SELL SPREAD++++++++++++++++++++++++++++++++ 'Open Short: Long A, short B ElseIf f.Value = -1 And Posa = 0 Then Cells(m + 1, 9) = -1 Cells(m + 1, 7) = ("Open_Short_SELL_SPREAD") Sec_B = Fix((-capital) / (Cells(m + 1, 4).Value)) ' ДТ B Cells(m + 1, 15) = Sec_B ' отрицательное Cells(m + 1, 31) = Sec_B Price_B = -Sec_B * (Cells(m + 1, 4).Value - slip) 'КТ B Cells(m + 1, 16) = Price_B ' положительное Sec_A = Fix((capital) / (Cells(m + 1, 2).Value)) ' ДТ А Cells(m + 1, 12) = Sec_A ' положительное Cells(m + 1, 30) = Sec_A Price_A = -Sec_A * (Cells(m + 1, 2).Value + slip) 'КТ А Cells(m + 1, 13) = Price_A ' отрицательное capital = Price_A + Price_B + capital Cells(m + 1, 28) = capital ' rest = Price_A + capital

–  –  –

'Close Short: Short A, Long B ElseIf f.Value = 1 And Posa = -1 Then Cells(m + 1, 9) = 1 Cells(m + 1, 7) = ("close_Short_BUY_SPREAD")

–  –  –

Cells(m + 1, 14) = (Cells(m + 1, 13).Value) + Price_A ' балнас P/L по бумаге А после закрытия позиции Cells(m + 1, 15) = 0 ' ДТ B Cells(m + 1, 16) = Sec_B * (Cells(m + 1, 4).Value + slip) 'КТ B ' отрицательное Sec_A = O Cells(m + 1, 17) = Price_B + Cells(m + 1, 16).Value ' баланс P/L по бумаге А после закрытия позиции Com_2_leg = (Cells(m + 1, 13).Value - Cells(m + 1, 16).Value) * Com_Rate Com_Sum = Com_1_leg + Com_2_leg Profit = Cells(m + 1, 14).Value + Cells(m + 1, 17).Value - Com_Sum '- intr Cells(m + 1, 18) = Profit capital = capital + Profit '+ rest

–  –  –

ElseIf f.Value = 0 And Posa = 0 Then ' out position(no_trade) Posa = Posa Cells(m + 1, 9) = Posa Cells(m + 1, 7) = ("No_trade") m=1+m ElseIf f.Value = 0 And Posa = 1 Then ' out position(no_trade) + long Posa = Posa Cells(m + 1, 9) = Posa Cells(m + 1, 7) = ("Need_close_Long") Cells(m + 1, 28) = capital Cells(m + 1, 30) = Sec_A Cells(m + 1, 31) = Sec_B

–  –  –

ElseIf f.Value = 0 And Posa = -1 Then ' out position(no_trade) + short Posa = Posa Cells(m + 1, 9) = Posa Cells(m + 1, 7) = ("Need_close_short") Cells(m + 1, 28) = capital Cells(m + 1, 30) = Sec_A Cells(m + 1, 31) = Sec_B

–  –  –

'============================== основной цыкл конец==================== End Sub Sub Return_Finder(NewSheet1 As String) Dim Range_1, Range_2, Range_3, Range_4, Range_5 As Range Dim p, v, c, y As Variant Dim t, m, k, l, f, money As Variant Dim Sharpe_ratio, Aver, ST_div As Variant Worksheets("RUONIA").Select ' получение ставки Рик фри Range("F1").Select Range(Selection, Selection.End(xlDown)).Select Selection.Copy Sheets(NewSheet1 & "Strategy1").Select ActiveSheet.Range("AJ3").Select ActiveSheet.Paste Range("AH1") = ("Day_Close") Range("AI1") = ("Day_Return") Range("AJ1") = ("RF_Rate") Range("AK1") = ("R_day - RF") Range("AL3") = ("Sharpe_ ratio") Range("AL1") = ("Expectation") Range("AL2") = ("St_deviation") t=1 money = Cells(2, 11).Value Range("V2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) For Each p In Range_1 If Cells(t + 1, 18).Value 0 Then Cells(t + 1, 32) = Cells(t + 1, 28).Value ' отлавливает момент выходы в cash money = Cells(t + 1, 32).Value ElseIf Cells(t + 1, 7).Value = "No_trade" Then Cells(t + 1, 32) = money ElseIf Cells(t + 1, 18).Value = 0 And Cells(t + 1, 7).Value "No_trade" Then Cells(t + 1, 32) = Cells(t + 1, 28).Value + Cells(t + 1, 30).Value * Cells(t + 1, 2).Value + Cells(t + 1, 31).Value * Cells(t + 1, 4).Value money = Cells(t + 1, 32).Value End If t=t+1 Next p ' цикл вычленения цен закрытия каждого первого дня Range("V2").Select Set Range_2 = Range(Selection, Selection.End(xlDown)) m=1 k=1 For Each v In Range_2 Cells(k + 1, 34) = Cells(m + 1, 32).Value m=m+9 k=k+1 Next v l=1 Range("AH2").Select Set Range_3 = Range(Selection, Selection.End(xlDown)) For Each c In Range_3 If Cells(l + 1, 34).Value 0 And Cells(l + 2, 34).Value = 0 Then Cells(l + 2, 35) = 0 ElseIf Cells(l + 1, 34).Value = 0 Then Cells(l + 2, 35) = 0 ElseIf Cells(l + 1, 34).Value 0 Then Cells(l + 2, 35) = (Cells(l + 2, 34).Value - Cells(l + 1, 34).Value) / Cells(l + 1, 34).Value ' доходность дневная по цене открытия след. дня End If l=l+1 Next c ' Считаем коэффициент шарпа Range("AJ3").Select f=2 Set Range_4 = Range(Selection, Selection.End(xlDown)) For Each y In Range_3 Cells(f + 1, 37) = Cells(f + 1, 35).Value - Cells(f + 1, 36).Value f=f+1 Next y Range("AK3").Select Set Range_5 = Range(Selection, Selection.End(xlDown)) Aver = WorksheetFunction.Average(Range_5) ST_dev = WorksheetFunction.StDevP(Range_5) Sharpe_ratio = Aver / ST_dev Range("AM3") = Sharpe_ratio Range("AM1") = Aver Range("AM2") = ST_dev End Sub Sub RESULT_Builder() Dim Max_min As Variant Dim Max_before_min, Com_Value As Variant Dim Range_1 As Range Dim Range_2 As Range Dim Range_info As Range Dim c, t, Sum As Variant ' Dim m As Variant ' Dim nlt As Variant ' Dim nst As Variant ' nlt = 0 nst = 0 m=2 With ActiveSheet.Range("AO2") = "БЭТ-ТЕСТИРОВАНИЕ МТС".Range("AO3") = "Период тестрирования".Range("AP3") =.Range("A2").Value.Range("AR3") =.Range("A2").End(xlDown).Value.Range("AO4") = "Параметры".Range("AO5") = "Количество периодов расчета max/min".Range("AO6") = "Delta".Range("AQ6") = ("%").Range("AO7") = ("Торговые издержки").Range("AO8") = ("Проскальзывание").Range("AQ8") = ("руб..").Range("AO9") = ("Ставка комиссий соборота").Range("AQ9") = ("%").Range("AO10") = ("Комисси удеражнные").Range("F2").Select Set Range_info = Range(Selection, Selection.End(xlDown)) t=1 Sum = 0 For Each c In Range_info Sum = Sum + Cells(t + 1, 29).Value t=t+1 Next c Com_Value = Sum.Range("AQ10") = "руб.."

.Range("AR10") = Com_Value t=0.Range("AO12") = "Результаты МТС".Range("AO13") = "Капитал на начало".Range("AQ13") = ("руб.").Range("AR13") = Cells(2, 11).Value.Range("AO11") = ("Сумма комисисй/нач. капитаk”) '.Range("AQ11") = ("%").Range("AR11") = (Com_Value /.Range("AR13").Value) * 100.Range("AO14") = ("Капитал на конец").Range("AQ14") = ("руб.").Range("AR14") =.Range("AF2").End(xlDown).Value.Range("AO15") = ("Доходность за период,%").Range("AQ15") = ("%").Range("AR15") = ((.Range("AR14").Value -.Range("AR13").Value) /.Range("AR13").Value) * 100.Range("AO16") = ("Годовая доходность,%").Range("AQ16") = ("%").Range("AR16") = (((100 +.Range("AR15").Value) / 100) ^ (1 / (3 + (4 / 12))) - 1) * 100.Range("AO17") = (“Прибыль").Range("AQ17") = "руб."

.Range("AR17") =.Range("AR14").Value -.Range("AR13").Value.Range("AO18") = "НДФЛ".Range("AQ18") = "руб."

.Range("AR18") =.Range("AR17").Value * 0.13.Range("AO19") = ("Капитал на конец BUY&HOLD по SBER").Range("AQ19") = "."

.Range("AR19") = (Range("K2").Value / Range("B2").Value) * Range("B2").End(xlDown).Value.Range("AO20") = ("Доходность за весь период SBER,%").Range("AQ20") = "%".Range("AR20") = ((Range("AR19").Value - Range("K2").Value) / Range("K2").Value) * 100.Range("AO21") = ("Капитал на конец BUY&HOLD по SBERP").Range("AQ21") = "."

.Range("AR21") = (Range("K2").Value / Range("D2").Value) * Range("D2").End(xlDown).Value.Range("AO22") = ("Доходность за весьпериод по SBERP,%").Range("AQ22") = "%".Range("AR22") = ((Range("AR21").Value - Range("K2").Value) / Range("K2").Value) * 100.Range("AO23") = ("Статистика Трейдов").Range("H2").Select m=2 Set Range_1 = Range(Selection, Selection.End(xlDown)) For Each c In Range_1 If c.Value = 1 And Cells(m, 9).Value = 1 Then nlt = nlt + 1 ElseIf c.Value = -1 And Cells(m, 9).Value = -1 Then nst = nst + 1 ElseIf c.Value = 0 And Cells(m, 9).Value = 1 Then nlt = nlt nst = nst End If m=m+1 Next c ' win и lose m=2 long_win = 0 long_lose = 0 short_win = 0 short_lose = 0 Range("G2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) For Each c In Range_1 If c.Value = ("close_long_SELL_SPREAD") And Cells(m - 1, 28).Value Cells(m, 28).Value Then long_win = long_win + 1 ElseIf c.Value = ("close_long_SELL_SPREAD") And Cells(m - 1, 28).Value = Cells(m, 28).Value Then long_lose = long_lose + 1 ElseIf c.Value = ("close_Short_BUY_SPREAD") And Cells(m - 1, 28).Value Cells(m, 28).Value Then short_win = short_win + 1 ElseIf c.Value = ("close_Short_BUY_SPREAD") And Cells(m - 1, 28).Value = Cells(m, 28).Value Then short_lose = short_lose + 1 End If m=m+1 Next c.Range("AO24") = "Long Trades".Range("AR24") = nlt.Range("AP25") = "Long Wins".Range("AR25") = long_win.Range("AP26") = "Long Losses".Range("AR26") = long_lose.Range("AP27") = "% Wins".Range("AR27") = (long_win / (long_win + long_lose)) * 100.Range("AO28") = "Short Trades".Range("AR28") = nst.Range("AP29") = "Short Wins".Range("AR29") = short_win.Range("AP30") = "Short Losses".Range("AR30") = short_lose.Range("AP31") = "% Wins".Range("AR31") = (short_win / (short_win + short_lose)) * 100

.Range("AO32") = "РИСК".Range("AO33") = ("Макс просадка МТС,%").Range("AQ33") = "%"

.Range("AF2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) ' - Max_min = Application.WorksheetFunction.Min(Range_1) For Each c In Range_1 If c.Value = Max_min Then c.Select Set Range_2 = Range(Selection, Selection.End(xlUp)) Max_before_min = Application.WorksheetFunction.Min(Range_2) Exit For Next c.Range("AR33") = (Max_before_min - Max_min) / Max_before_min * 100 Max_min = 0 Max_before_min = 0.Range("AO34") = ("Макс просадка по SBER,%").Range("AQ34") = "%".Range("B2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) ' - Max_min = Application.WorksheetFunction.Min(Range_1) For Each c In Range_1 If c.Value = Max_min Then c.Select Set Range_2 = Range(Selection, Selection.End(xlUp)) Max_before_min = Application.WorksheetFunction.Min(Range_2) Exit For Next c.Range("AR34") = (Max_before_min - Max_min) / Max_before_min * 100 Max_min = 0 Max_before_min = 0.Range("AO35") = ("Макс просадка по SBERP,%").Range("AQ35") = "%".Range("D2").Select Set Range_1 = Range(Selection, Selection.End(xlDown)) ' - Max_min = Application.WorksheetFunction.Min(Range_1) For Each c In Range_1 If c.Value = Max_min Then c.Select Set Range_2 = Range(Selection, Selection.End(xlUp)) Max_before_min = Application.WorksheetFunction.Min(Range_2) Exit For Next c.Range("AR35") = (Max_before_min - Max_min) / Max_before_min * 100

.Range("AO36") = ("Коэффициент Шарпа").Range("AR36") =.Range("AM3").Value

End With End Sub Sub table_maker() ' ' table_maker ' Columns("AO:AO").EntireColumn.AutoFit ActiveWindow.ScrollColumn = 24 ActiveWindow.ScrollColumn = 25 ActiveWindow.ScrollColumn = 26 Columns("AP:AP").EntireColumn.AutoFit Columns("AR:AR").EntireColumn.AutoFit ActiveWindow.SmallScroll ToRight:=2 Columns("AP:AP").ColumnWidth = 10.57 Columns("AQ:AQ").ColumnWidth = 3.71 Columns("AO:AO").ColumnWidth = 43.29 Application.CutCopyMode = False Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeTop).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeBottom).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeRight).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone ActiveWindow.ScrollColumn = 2 ActiveWindow.ScrollColumn = 3 ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 5 ActiveWindow.ScrollColumn = 6 ActiveWindow.ScrollColumn = 7 ActiveWindow.ScrollColumn = 8 ActiveWindow.ScrollColumn = 9 ActiveWindow.ScrollColumn = 10 ActiveWindow.ScrollColumn = 11 ActiveWindow.ScrollColumn = 12 ActiveWindow.ScrollColumn = 13 ActiveWindow.ScrollColumn = 14 ActiveWindow.ScrollColumn = 15 ActiveWindow.ScrollColumn = 16 ActiveWindow.ScrollColumn = 17 ActiveWindow.ScrollColumn = 18 ActiveWindow.ScrollColumn = 19 ActiveWindow.ScrollColumn = 20 ActiveWindow.ScrollColumn = 21 ActiveWindow.ScrollColumn = 22 ActiveWindow.ScrollColumn = 23 ActiveWindow.ScrollColumn = 24 ActiveWindow.ScrollColumn = 25 ActiveWindow.ScrollColumn = 26 Range("AO2:AR36").Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeTop).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeBottom).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With With Selection.Borders(xlEdgeRight).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlMedium End With Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("AO2").Select Selection.Font.Bold = True Range("AR11").Select Selection.Font.Bold = True Range("AR15").Select Selection.Font.Bold = True Range("AR33").Select Selection.Font.Bold = True Range("AO2:AR2").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.ThemeColor = xlThemeColorDark1.TintAndShade = -0.249977111117893.PatternTintAndShade = 0 End With Range("AO4:AR4").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 5296274.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO7:AR7").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 5296274.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO12:AR12").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 5296274.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO23:AR23").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 5296274.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO32:AR32").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 5296274.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO3:AR3").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO5:AR6").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO8:AR11").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO13:AR22").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO24:AR31").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Range("AO33:AR36").Select With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 13434879.TintAndShade = 0.PatternTintAndShade = 0 End With Columns("AO:AO").EntireColumn.AutoFit ' Range("AR10:AR11").Select Selection.NumberFormat = "0.00" Range("AR14:AR22").Select Selection.NumberFormat = "0.00" Range("AR27").Select Selection.NumberFormat = "0.00" Range("AR31").Select Selection.NumberFormat = "0.00" ActiveWindow.SmallScroll Down:=12 Range("AR33:AR36").Select Selection.NumberFormat = "0.00" ActiveWindow.SmallScroll Down:=-12 Columns("AR:AR").EntireColumn.AutoFit Range("AU16").Select End Sub Приложение 4. 49 результаты тестирования МТС с различными входными параметрами

–  –  –

«Данная дипломная работа выполнена мною самостоятельно»

Похожие работы:

«Воздушные отопители Руководство по ремонту Air Top Evo 3900 Air Top Evo 5500 Модель Air Top Evo 3900/5500 ST B (бензин) Модель Air Top Evo 3900/5500 ST D (дизель) 04/2008 1313560R Содержание: 1 Введение 4 1.1 Назначение воздушных отопителей 4 1.2 Предписания по установке отопителя на транспортное средство 5 1.3 Ав...»

«“БУРАН-М” Производственный комплекс для изготовления строительных изделий. ПАСПОРТ. РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ. Златоуст 2013 г. 456228, Россия, Челябинская обл., г. Златоуст, пос. Красная Горка, д. 16, тел/факс (3513) 66-77-35, 66-7...»

«Теплофизика и аэромеханика, 2000, том 7, № 4 УДК 536.423 РАЗРЫВ ПЛЕНКИ ЖИДКОСТИ, СТЕКАЮЩЕЙ ПО ПОВЕРХНОСТИ С ЛОКАЛЬНЫМ ИСТОЧНИКОМ ТЕПЛА* О.А. КАБОВ Институт теплофизики им. С.С. Кутателад...»

«A38-WP/3111 Международн организа М ная ация граждан нской авиаци ии TE/139 13/9/13 РАБОЧИЙ ДОКУМЕН Р НТ АССАМБЛЕ 38-Я С А ЕЯ СЕССИЯ ТЕХНИЧЕС Т СКАЯ КОМ МИССИЯ Пункт 33 повестки дня. Аэронавигация. Ст 3 д тандартизац ци...»

«Москва 2017 УДК 82-94 ББК 84(0)-44 И86 Перевод с английского Марии Крузе Перевод выполнен с оригинального издания "Better han Fiction 2", вышедшего в 2015 году. Авторы оригинального издания: Стефан Меррилл Блок, Карен Джой Фаулер, Ребекка Динерстайн, Джейн Смайли, Ави Дакор-Джоунс,...»

«Поздеев Игорь Леонидович, Назмутдинова Ирина Константиновна РОЛЬ ОБЫЧАЯ В МЕХАНИЗМЕ РЕГУЛИРОВАНИЯ СЕМЕЙНЫХ ОТНОШЕНИЙ В ТРАДИЦИОННОМ УДМУРТСКОМ ОБЩЕСТВЕ В статье рассматриваются теоретические основы стереотипизированных форм поведени...»

«Ultima ratio Вестник Российской Академии ДНК-генеалогии Том 4, № 11 2011 ноябрь Российская Академия ДНК-генеалогии ISSN 1942-7484 НаучноВестник Российской Академии ДНК-генеалогии. публицистическое издание Российской Академии ДНК-генеалогии. Издательство Lulu inc., 2011. Автор...»

«ВСЕ НЕОБХОДИМЫЕ ВОЗМОЖНОСТИ КЛИМАТИЧЕСКОЙ ТЕХНИКИ ПО РАЗУМНОЙ ЦЕНЕ ОБОГРЕВАТЕЛЬ ИНФРАКРАСНЫЙ РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ АНI-0700B АНI-1000B АНI-2000B (РСТ) Товар сертифицирован в соответствии с законом "О защите прав потребителей" SWISS TRADE MARK СОДЕРЖАНИЕ 1. ОБЩИЕ УКАЗАНИЯ 2. ТРЕБОВАНИЯ БЕЗОПАСНОСТИ 3. ТЕХНИ...»

«443 УДК 621.3.018.1 ПРЕОБРАЗОВАТЕЛИ ФАЗОВОГО СДВИГА ДЛЯ ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМ НЕФТЕГАЗОВОЙ ПРОМЫШЛЕННОСТИ CONVERTERS OF PHASE SHIFT FOR INFORMATION AND MEASURING SYSTEMS OF THE OIL AND GAS INDUSTRY...»

«Механизированная разработка грунта. Разработка грунта экскаватором в выемках, котлованах, траншеях и отвал или насыпь. Разработка и перемещение грунта бульдозерами и скреперами.Основные разделы лекции: 1 Общие положени...»

«Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования "Владимирский государственный университет имени Александра Григорь...»

«Современные тенденции миниатюризации СШП антенн мобильных устройств А. В. Уваров1,2, А. В. Уваров2 Институт радиотехники и электроники им. В. А. Котельникова РАН Россия,Москва, anton.uvarov@phystech.edu Федеральное государственное автономное образовательное учреждени...»








 
2018 www.wiki.pdfm.ru - «Бесплатная электронная библиотека - собрание ресурсов»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.