Задача оптимизации может заключаться в поиске определенной структуры объекта (структурной оптимизации) или последовательности действий (календарной оптимизации). Однако в контексте построения автоматизированных торговых стратегий наибольший интерес представляет параметрическая оптимизация. В этом случае поиск наилучшего решения осуществляется путем выбора значений для величин, составляющих совокупность числовых параметров.
2.1.1. Параметрическая оптимизация
В зависимости от постановки задачи параметры могут быть действительными числами (например, доля капитала, инвестируемого в определенную стратегию), целыми числами (например, количество дней от момента открытия позиции до истечения опционов или количество базовых активов) или величинами нечисловой природы, но сводимыми к числовым (например, если параметр имеет смысл решения использовать или не использовать определенный тип опционной комбинации, он может быть представлен целым числом со значениями 1 и 0 соответственно). Количество параметров может быть ограничено одним (одномерная оптимизация), но в большинстве случаев их больше (многомерная оптимизация).
Постановка задачи оптимизации может быть безусловной или содержать определенные ограничения. В частности, не все возможные комбинации значений параметров являются допустимыми. В силу существующих ограничений некоторые из них могут быть неприемлемы либо нереализуемы. Такие узлы исключаются из оптимизации. В этом случае говорят об условной оптимизации. Такого рода ограничения могут иметь вид равенств:
x1 + x2 +… + xn = M,где х принимает значение 0 или 1 в зависимости от того, открывается ли торговая позиция для i-го базового актива. Смысл ограничения в том, что общее число базовых активов в точности равно M.
Ограничения могут принимать вид неравенств:
c1x1 + c2x2 +… + cnxn ≤ K.Здесь сi – это цена соответствующего опциона, а xi – количество проданных или купленных опционов. При этом знак может указывать, является ли данная позиция длинной (плюс) или короткой (минус). Смысл ограничения в том, что общая стоимость опционного портфеля не превышает установленной величины К.
Ограничения также могут накладываться на диапазон значений, которые может принимать тот или иной параметр (в предыдущей главе мы часто пользовались понятием «область допустимых значений»). Такие ограничения часто используются при разработке автоматизированных торговых стратегий. Они могут накладываться исходя из практических соображений, поскольку сокращение множества допустимых значений позволяет уменьшить количество вычислений и время оптимизации. Кроме того, ограничения могут быть вызваны особенностями разрабатываемой стратегии или требованиями системы управления рисками (например, доля коротких комбинаций в составе портфеля может быть ограничена определенной пороговой величиной). И наконец, ограничения на область допустимых значений могут возникать по причине недоступности данных, необходимых для расчета целевой функции, или невозможности такого расчета для определенных значений параметра.
Для того чтобы избежать путаницы в применении некоторых понятий, часто используемых в литературе при описании оптимизационных процедур, ниже приводится краткое описание смысла, который мы вкладываем в некоторые термины.
• Оптимизационное пространство (иногда называемое сеткой) – совокупность всех возможных комбинаций значений параметров формирует полное оптимизационное пространство.
• Узел (junction) – наименьшая структурная единица оптимизационного пространства, определяемая уникальной комбинацией значений параметров.
• Вычисление – все процедуры, необходимые для расчета целевой функции для одного узла оптимизационного пространства.
• Полный оптимизационный цикл – совокупность всех вычислений, производимых в процессе поиска оптимального решения (от старта процедуры оптимизации до остановки алгоритма).
• Целевая функция – количественный показатель, выражающий меру полезности определенной комбинации значений параметров с точки зрения разработчика торговой системы (может рассчитываться аналитически или алгоритмически).
• Глобальный максимум – узел, имеющий наибольшее значение целевой функции. Глобальных максимумов может быть несколько.
• Локальный максимум – узел, расположенный на одной из вершин оптимизационного пространства, но имеющий меньшее значение целевой функции, чем глобальный максимум. Локальных максимумов может быть несколько.
• Оптимальное решение – значение параметров и целевой функции узла, на котором остановился алгоритм оптимизации. Оптимальное решение не всегда совпадает с глобальным максимумом. Чем эффективнее методика, тем ближе оптимальное решение к глобальному максимуму.