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). Тем не менее наш опыт применения адаптивной оптимизации подсказывает, что, если стратегия тестируется на достаточно большом интервале истории и генерирует достаточное количество сигналов на открытие позиций, ее будущая устойчивость более вероятна, чем в случае оптимизации на неподвижном историческом окне.

Более 800 000 книг и аудиокниг! 📚

Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением

ПОЛУЧИТЬ ПОДАРОК