⚖️ Спор о метриках, который можно не начинать.
Две версии одной стратегии. У первой профит-фактор выше, у второй просадка меньше. Какая лучше?
Обычно тут начинается выбор оружия. Кто-то верит в Шарпа, кто-то в фактор восстановления, кто-то в CVaR. И спор идёт не о стратегиях, а о том, чьей линейкой мерить. Причём линейку почти всегда выбирают после того, как увидели результаты.
Есть способ ответить раньше, чем метрика выбрана.
📐 Предположение, которое всё меняет
Формулировка Горчакова из заметки 2004 года звучит так. Возьмём выборочные функции распределения доходностей двух систем. Если у первой она поточечно не выше, чем у второй, то у первой «доходность» больше, а риск меньше - при ЛЮБЫХ разумных функциях доходности и риска.
Это называется стохастическим доминированием первого порядка.
На человеческом: выстройте доходности обеих систем по возрастанию и сравните по порядковым местам. Худший день первой не хуже худшего дня второй. Второй по плохости - не хуже второго. И так далее до самого лучшего.
Если это выполняется, спорить не о чем. Не «по моей метрике лучше», а лучше по всем сразу - и по тем, которые вы ещё не придумали. Любая функция, которая считает больше лучше меньшего, поставит первую систему выше.
Заметьте, насколько это сильнее обычного сравнения. «PF выше» - утверждение об одном числе. Доминирование - утверждение обо всём распределении.
🔬 Что вышло на моих данных
Я вставил эту проверку в свой риск-движок и первым делом прогнал через неё одиннадцать вариантов канальной системы на долларе. Все на одной истории - 2366 общих торговых дней, тринадцать лет. Профит-факторы от 1,569 до 1,709.
Результат: ни один вариант не доминирует ни один другой. Ни одной пары.
Я посмотрел, насколько они вообще близки к доминированию. Для каждой пары считаю долю точек, где порядок нарушается: ноль означает чистое доминирование, половина - полную неразличимость. Медиана по всем парам вышла 48,9%.
Сорок девять процентов. Распределения пересекаются ровно посередине.
🤔 Что это значит на самом деле
Разница в профит-факторе между вариантами есть - от 1,57 до 1,71, почти девять процентов. А разницы в распределении нет.
Значит, выбирая один вариант из этого набора, я выбираю не лучший. Я выбираю тот, который выиграл по конкретной метрике, - а метрика в такой ситуации не обнаруживает факт, а совершает выбор за меня.
Это неприятный вывод, потому что именно так все и настраивают системы: сканируют параметр, берут максимум профит-фактора. Формально всё честно. Но данные не подтверждают, что найденная точка чем-то лучше соседних.
Тот же результат я получил и на четырёх вариантах канала на юане, включая свою боевую. Ни одного доминирования, нарушения 45-58%.
🧹 Побочная польза
Строгое доминирование на реальных данных почти никогда не срабатывает. Это не недостаток метода - это его сообщение: кандидаты действительно несравнимы.
Зато у фильтра нашлось неожиданное применение. Две пары файлов дали ноль нарушений в обе стороны - то есть распределения совпали точно. Это оказались дубликаты выгрузок: одинаковое число сделок, одинаковый профит-фактор. Я бы их не заметил, а фильтр показал сразу.
💡 Как я это использую
Не как селектор - он почти всегда молчит. Как дешёвый предохранитель перед сравнением метриками.
Если доминирование есть - вопрос закрыт, метрику можно не выбирать. Если его нет - я знаю, что дальше начинается вкусовщина, и отношусь к результату соответственно: не «система А лучше», а «система А выигрывает по такой-то мере, и это выбор, а не факт».
Стоит проверка одну функцию и три секунды счёта. А главное - она не даёт спорить о линейках там, где мерить нечего.
