Ознакомительная версия. Доступно 17 страниц из 85
Продолжительность периода тестирования не может быть меньше времени, остающегося до истечения опционов. Можно предложить следующее правило: τs должен включать не менее 10 полных неперекрывающихся циклов экспирации. Например, если средневзвешенный период времени, остающийся до истечения опционов, составляет 22 рабочих дня, то минимальная протяженность τs должна быть не меньше 220 дней. Такой расчет должен корректироваться в зависимости от среднего количества открываемых позиций. Чем больше количество производимых стратегией операций, тем более достоверной будет статистика прибыльности и тем более короткий период τs может являться приемлемым.
5.4.2. Адаптивная оптимизация
В алгоритм стратегии можно включить процедуру адаптивной оптимизации. Такая процедура реализуется с помощью скользящего окна оптимизации. Для формализованного описания процедуры адаптивной оптимизации воспользуемся параметрическим описанием стратегии S(P), где P обозначает вектор значений параметров, определяющих стратегию. Обозначим через τ(T) = [T – Δt + 1, T] интервал истории, заканчивающийся в определенный момент времени T и имеющий протяженность Δt дней (или других тайм-фреймов). При движении точки T из прошлого в будущее интервал τ(T) также двигается вслед за T. Предположим, что для данной стратегии определен алгоритм оптимизации A, который для интервала истории τ путем оптимизации вырабатывает вектор параметров P*(T) = A(τ(T)). Через l обозначим расстояние между моментами оптимизации, а через T0 – начальный момент времени. Тогда алгоритм моделирования торговли с адаптивной прогонкой будет выглядеть так. В моменты времени Tn = T0 + nl (где n – номер шага адаптации, пробегающий значения n = 1, 2, 3…, nlast), включается алгоритм оптимизации A, вырабатывающий новые значения параметров P*(Tn) = A(τ0(Tn)). Стратегия S(P*(Tn)) торгует на следующем за Tn интервале времени [Tn + 1, Tn + 1], после чего выполняется новый шаг адаптации и последующей торговли.
Фактически в результате введения адаптивного механизма исходная стратегия S(P), изначально обладавшая комплексом параметров P, превращается в сложную стратегию, представляющую собой последовательность (S(P*(T0)), S(P*(T1))…, S(P*(Tn))…). В сложной стратегии к исходным параметрам добавляются два новых параметра l и Δt, которые также могут быть подвергнуты процедуре оптимизации (подбору наилучших значений этих параметров). Бэктестинг стратегии, включающей периодическую реоптимизацию, может быть оценен (также как бэктестинг исходной стратегии) с помощью стандартных показателей эффективности, по которым можно принимать решение о применимости адаптивной оптимизации в каждом конкретном случае.
Адаптивная оптимизация во многих случаях позволяет строить стратегии, более устойчивые по отношению к смене фаз рынка. Однако необходимо помнить, что адаптивная оптимизация не устраняет проблему заоптимизированности стратегии, поскольку является ничем иным, как такой же оптимизацией, но с более сложной структурой. Более того, использование адаптаций в системе бэктестинга неизбежно приводит к увеличению числа оптимизируемых параметров, что, в свою очередь, может способствовать увеличению риска заоптимизированности (см. раздел 5.4.3). Тем не менее наш опыт применения адаптивной оптимизации подсказывает, что, если стратегия тестируется на достаточно большом интервале истории и генерирует достаточное количество сигналов на открытие позиций, ее будущая устойчивость более вероятна, чем в случае оптимизации на неподвижном историческом окне.
5.4.3. Проблема заоптимизированности (оverfitting)
Чрезмерная оптимизация параметров приводит к тому, что алгоритмы многих торговых стратегий демонстрируют высокие показатели эффективности на фиксированном участке прошлой истории. При этом показатели этих же стратегий могут существенно ухудшаться при попытке их применения к продолжению ценового ряда. Применительно к бэктестингу данная проблема известна как проблема заоптимизированности (overfitting, или curvefitting). Риск заоптимизированности неизбежно возникает даже для относительно простых стратегий, поскольку любой торговый алгоритм невозможен без наличия явных или неявных параметров. Для более сложных стратегий этот риск возрастает многократно.
В общем виде можно утверждать, что вероятность заоптимизированности прямо пропорциональна количеству степеней свободы, имеющихся в системе бэктестинга. При тестировании стратегий, ориентированных на торговлю акциями и фьючерсами, число степеней свободы приблизительно равно количеству параметров, используемых при оптимизации стратегии. Для опционных стратегий количество степеней свободы возрастает за счет того, что, помимо параметров, относящихся непосредственно к торговому алгоритму, существует множество параметров, связанных с формированием опционных позиций. Каждая стратегия оперирует определенным типом комбинаций, который описывается с помощью набора параметров. К этим параметрам могут относиться диапазон допустимых страйков, допустимый период времени до истечения опционов, глубина горизонта истории, используемого для расчета исторической волатильности, и многие другие. Поэтому для опционных стратегий проблема заоптимизированности стоит более остро, чем для стратегий, торгующих простыми активами.
К сожалению, не существует способа полностью нейтрализовать риск заоптимизированности. Однако частичное решение этой проблемы можно получить, соблюдая следующие общие принципы.
В качестве основного средства борьбы с проблемой заоптимизированности обычно используется так называемый walk-forward анализ. Эта методика, заключающаяся в разделении исторических временных рядов на периоды оптимизации (in-sample) и тестирования (out-of-sample), была описана в разделе 5.4.1. Основная идея заключается в том, что для бэктестинга используются данные, которые не применялись при создании и настройке стратегии. Необходимо, однако, подчеркнуть, что хорошие показатели стратегии, полученные на out-of-sample периоде, не доказывают, что стратегия не подвержена проблеме заоптимизированности. Объяснить это на первый взгляд нелогичное утверждение можно с помощью простых рассуждений. Предположим, что разработчик ставит перед автоматизированной системой следующую задачу: подобрать такие значения для параметров стратегии, что бы ее целевая функция (или функции) имела удовлетворительное значение на in-sample периоде и это значение ухудшалось бы на out-of-sample периоде не более, чем на заданную величину. В главе 2 мы видели, что в процессе оптимизации (на in-sample периоде) может быть получено множество комбинаций параметров с приемлемым значением целевой функции (так называемые зоны оптимальности). Поэтому вполне может оказаться, что хотя бы один вариант из этого множества даст удовлетворительные результаты при out-of-sample тестировании. Это означает, что хорошие результаты walk-forward анализа могут быть результатом простого подбора (заоптимизированности), и скорее всего не сохранятся в будущем при реальной торговле.
Ознакомительная версия. Доступно 17 страниц из 85