Книга: Опционы: Разработка, оптимизация и тестирование торговых стратегий
Назад: 5.1. База данных
Дальше: 5.3. Моделирование торговых заявок

5.2. Сигналы на открытие и закрытие позиций

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

5.2.1. Принцип генерирования сигналов

В опционной торговле инструментами торговли являются базовые активы и опционы. Однако можно рассматривать в качестве торговых инструментов и опционные комбинации. На сложность торгового инструмента можно вообще не накладывать никаких ограничений. Например, как об отдельном торговом инструменте можно говорить о произвольном наборе торгующихся на рынке более простых инструментов. Построение определенного набора торговых инструментов – это элемент алгоритма стратегии. Обозначим через Ω = (K1…, KN) множество, состоящее из N торговых инструментов стратегии.
В каждый момент времени t (на каждом шаге прогонки) у стратегии имеется текущий набор информации I(t). Эта информация разнообразна: история цен торговых инструментов, формализованная фундаментальная информация, значения индикаторов технического анализа, показатели прибыли-убытков текущих позиций, вероятностные сценарии и т. д. Единственное требование к информации I(t) – при ее получении или вычислениях, связанных с ее получением, не должны использоваться данные из будущих моментов времени t + 1, t + 2… Для каждого торгового инструмента алгоритм стратегии вычисляет специальные функционалы Φ(Kj, I(t)), где Kj – j-й торговый инструмент, а I(t) – информация, доступная на шаге t. Интерпретация этих функционалов является элементом алгоритма стратегии.
Например, логические значения false и true могут иметь следующий смысл: Φ(Kj, I(t)) = true означает, что стратегия выработала сигнал совершить определенную сделку с инструментом Kj. Это может быть как сделка покупки, если функционал Φ(Kj, I(t)) отвечает за покупки, так и сделки продажи, если соответствующий функционал отвечает за продажи. В более информативном случае значения функционалов Φ могут принимать любые действительные значения. При этом значение функционала говорит не только о наличии сигнала, но и о его силе.
Допустим, что вычисляется функционал Φ, оценивающий перспективность сделок с определенным набором инструментов. Предположим, что на шаге T получен вектор оценок функционала Φ = {Φ(Kj, I(t)), j = 1…, N}. Следующим этапом алгоритма является интерпретация значений этого вектора с целью генерации вектора сигналов, на основании которых формируются приказы на совершение сделок. Рассмотрим два варианта интерпретации оценок Φ, переводящих их в сигналы купли-продажи инструментов.
Первый вариант основывается на использовании пороговых значений. Предположим, что длинная позиция открывается, если расчетное значение функционала, основанного на критерии доходности, выраженной в процентах от объема инвестиций, превышает порог 3 % (Θbuy = 3). Если значение функционала, основанного на данном критерии, прогнозирует убыток, превышающий 3 % (Θsell = 3), то открывается короткая позиция. В этом случае сигналы на открытие позиций генерируются следующим образом:
• купить инструмент Kj, если Φ(Kj) > Θbuy,
• продать инструмент Kj, если Φ(Kj) < Θsell.
Если данные неравенства не выполняются, то сделки с инструментом Kj не производятся.
Второй вариант использует упорядочение торговых инструментов с помощью упорядочения элементов вектора Упорядочение позволяет из имеющихся инструментов выделить определенное число а лидеров и b аутсайдеров по значениям Top = {Kj1, Kj2…, Kja} и Bottom = {KjN – b + 1, KjN – b + 2…, KjN}. Тогда сигналы стратегии на покупку и продажу генерируются следующим образом:
• купить все инструменты из множества Top,
• продать все инструменты из множества Bottom.
Разумеется, эти способы генерации сигналов выглядят очень упрощенно, и в реальные стратегии закладываются более сложные алгоритмы, как правило, сводящиеся к приведенным выше после определенных преобразований.

5.2.2. Разработка и оценка эффективности функционалов

В качестве функционалов, используемых для выработки сигналов, можно использовать различные критерии оценки, описанные книге «Опционы: системный подход к инвестициям». Эти критерии дают численную оценку привлекательности сделок с определенным торговым инструментом – опционной комбинацией. Если упорядочить весь набор инструментов по такому критерию, то мы получим уже другой функционал – ранговый, принимающий целые значения – номера комбинаций в упорядочении. Независимо от особенностей функционала, его использование в процедуре бэктестинга остается неизменным – оценка перспективности совершения сделки с определенным инструментом.
Поиск эффективных функционалов – одна из главных задач разработчика стратегий. Для разработки функционалов используются статистические исследования. Они заключаются в том, что на определенном периоде истории генерируется множество сделок по исследуемому функционалу и изучаются статистические показатели этого множества – средняя прибыль, дисперсия, распределения и корреляции. Таким способом можно подобрать полезные функционалы для генерации сигналов. Однако хорошая статистика на множестве сделок является только лишь необходимым, но не достаточным, условием качественности функционала. Для успешной стратегии важное значение имеет еще и порядок, в котором встречаются и чередуются прибыльные и убыточные сделки. Так, достаточно длинная серия убыточных сделок может быть неприемлемой на практике из-за слишком большой «просадки» счета или чрезмерной длительности бесприбыльного периода. Аналогично хорошая статистка сделок может быть у стратегии, которая удовлетворительно работала в прошлом, но превратилась в убыточную в последнее время. Поэтому статистические исследования могут и должны использоваться для построения функционалов, а исторические симуляции и бэктестинг – для их оптимизации и оценки эффективности.

5.2.3. Фильтрация сигналов

В зависимости от алгоритма стратегии часть генерируемых сигналов необходимо отсеивать, не допуская до формирования на их основе торговых заявок. Это приходится делать либо по причине ожидаемых корпоративных событий, либо в силу того, что показатели определенных индикаторов не соответствуют параметрам стратегии. В качестве таких индикаторов могут выступать показатели риска, целью которых является фильтрация наиболее рискованных опционных комбинаций.
Рассмотрим пример индикатора риска, на основании которого может происходить фильтрация сигналов. Коэффициент асимметрии, описанный в главе 3, оценивает степень асимметричности опционной комбинации относительно текущей цены базового актива. Если в качестве функционала, оценивающего привлекательность комбинаций, используется матожидание прибыли, рассчитанное на основе эмпирического распределения, то многие асимметричные комбинации могут оказаться весьма привлекательными (иметь высокое матожидание прибыли). Это происходит в том случае, если эмпирическое распределение также имеет асимметричную форму. Поскольку матожидание прибыли рассчитывается путем интегрирования платежной функции комбинации по функции плотности вероятности эмпирического распределения, то в том случае, когда обе функции асимметричны и их моды смещены в одну сторону, значение интеграла получается высоким. Несмотря на это, такие комбинации не подходят для стратегий, основанных на коротких продажах опционов (поскольку по причине их асимметричности бόльшая часть премии, получаемой от продажи опционов, состоит из внутренней стоимости, а доля временной стоимости мала, потенциал извлечения прибыли у таких позиций весьма невелик). Использование индикатора «коэффициент асимметрии» позволяет фильтровать сигналы на открытие позиций по таким комбинациям.
Фильтрация, производимая по причине ожидаемых корпоративных событий, может осуществляться двумя путями. Самый простой путь – это когда в базе данных накапливается и поддерживается информация о предстоящих событиях. В таком случае эти базовые активы можно временно исключить из базы, на основании которой рассчитываются функционалы (то есть сигналы для таких инструментов генерироваться не будут). К событиям такого рода относятся квартальные отчеты, для которых информация о времени наступления события чаще всего доступна и более-менее надежна.
При отсутствии в базе данных информации о предстоящих событиях приходится использовать специальные фильтры, позволяющие отсеивать сигналы, генерируемые для инструментов, в отношении которых могут произойти нестандартные события. В качестве такого фильтра может использоваться отношение исторической и подразумеваемой волатильности IV/HV. В отсутствии предстоящих радикальных событий эти две волатильности имеют близкие значения. Если же указанное отношение значительно отличается от 1, то это может свидетельствовать о предстоящем серьезном событии с неопределенным исходом.
Историческая волатильность HV базового актива характеризует изменчивость его цены в период, предшествующий моменту расчетов. Подразумеваемая волатильность IV указывает на ожидаемую рынком изменчивость цены этого же базового актива в период, следующий за моментом расчетов.
Если подразумеваемая волатильность значительно превышает историческую волатильность, то можно сделать вывод о том, что цена базового актива менее волатильна по сравнению с теми колебаниями, которые рынок ожидает в будущем. Для системы бэктестинга это косвенно свидетельствует о приближающемся значительном событии, которое вызовет большие движения цены. Типичными примерами таких событий являются ожидаемые решения судебных инстанций, известия о переговорах по слиянию-поглощению, одобрение новых продуктов и т. д. Если на основе таких событий не строится специальная стратегия, то такие комбинации в процессе бэктестинга следует отфильтровывать.
Если историческая волатильность значительно превышает подразумеваемую волатильность, можно сделать предположение о том, что важное событие уже произошло и привело к тому, что рынок больше не ожидает от цены базового актива каких-либо существенных движений в будущем. При бэктестинге комбинации, относящиеся к таким базовым активам, следует исключать, поскольку в большинстве случаев они не соответствуют базовым параметрам тестируемой стратегии.
Назад: 5.1. База данных
Дальше: 5.3. Моделирование торговых заявок