В соответствии со сложившимися научными традициями, задачи оптимизации принято решать путем определения наименьшего значения целевой функции. Несмотря на то что с практической точки зрения нахождение максимального и минимального значений – это противоположные задачи, для их решения могут применяться одни и те же методы. Для этого следует переформулировать задачу таким образом, чтобы минимум исходной задачи соответствовал максимуму переформулированной (например, взяв целевую функцию с противоположным знаком или взяв обратную к ней величину в качестве новой целевой функции). Тогда алгоритм, отыскивающий максимум новой задачи, тем самым найдет минимум первоначальной (и наоборот). Несмотря на сложившиеся традиции, мы будем формулировать оптимизационные задачи как поиск максимумов. Это объясняется тем, что одной из основных целевых функций при оптимизации торговых стратегий является прибыль и различные производные от нее. Поэтому с психологической точки зрения комфортнее максимизировать прибыль, а не минимизировать ее.
Исторически теория оптимизации работала почти исключительно с целевой функцией, задаваемой аналитической формулой. В наиболее простых с математической точки зрения случаях формула представляет собой дифференцируемую функцию. Для исследования ее свойств (участки возрастания и убывания, точки экстремума) может использоваться производная, что позволяет строить эффективные алгоритмы поиска оптимального решения. Приравнивание к нулю производных по всем параметрам и решение полученной системы уравнений позволяет получить изящное решение в общем виде.
Современные потребности, поддерживаемые впечатляющими достижениями научно-технического прогресса, привели к существенному расширению круга решаемых прикладных задач. Во многих из них целевая функция не задана аналитически и не может исследоваться с помощью производных. В этих условиях значения функции могут быть получены только путем алгоритмических расчетов.
Решение задачи оптимизации существенно осложняется в тех случаях, когда необходимо использовать более одной целевой функции. При оптимизации торговых стратегий эта проблема возникает почти всегда. Основная целевая функция для таких стратегий – прибыль. Однако невозможно ограничиться только этим показателем. Необходимо принимать во внимание также изменчивость прибыли, максимальные просадки, долю прибыльных сделок, показатели риска и многие другие важные факторы, каждый из которых является отдельной целевой функцией.
Особенность использования нескольких целевых функций заключается в том, что максимум одной функции редко совпадает максимумом другой. Напротив, разные целевые функции, как правило, оказываются противоречащими друг другу – оптимальные значения одной из них могут оказаться сколь угодно плохими с точки зрения другой. (Подобная ситуация уже рассматривалась нами в разделе 1.6.) Поиск путей эффективного использования нескольких целевых функций составляет предмет теории многокритериальной оптимизации. Можно выделить три основных подхода к многокритериальной оптимизации:
1.
2.