15 важнейших параметров, которые отвечают за качество торговых стратегий

Алгоритмический трейдинг

Алготрейдинг действительно освобождает время и концентрацию любого ручного трейдера. Тем не менее время, концентрация и внимание будут необходимы в другом векторе — векторе обработки данных. Это не менее важная часть алготрейдинга, как и поиск рыночных неэффективностей.

Запуск торговых алгоритмов в live-режим возможен только после множества бэктестов и оптимизаций. Пройдя эти этапы, трейдер выбирает наилучшие параметры торговой системы (ТС). Статья расскажет, по каким критериям оценивать успешность той или иной тестовой серии, а также разберемся с различными настройками алгоритма при запуске на реальном счете.

Содержание

Видео

Какой софт используем

Все бэктесты мы проводим на платформе JForex от Dukascopy банка. Алгоритмы изначально разрабатывались в визуальном конструкторе Visual JForex, сейчас же стали использовать Java код напрямую. Результаты тестов алготрейдинга оценивались с помощью Microsoft Excel. Попутно как вспомогательный софт использовался Total Commander для быстрой переработки отчетов в нужный формат.

Использование одной платформы для создания алгоритмов, тестирования, оптимизаций и, наконец, запуска на реальном счете — очень удобно. Это существенно повышает качество теста, а также вероятность того, что в live-торговле результаты автоматизированного трейдинга будут максимально приближены к историческим.

В нашем Telegram-канале есть то, чего не публикуем на сайте 👇

Показатели результативности торговой системы

Результативность любого исторического теста можно оценить более чем по 40 параметрам. Рассмотрим несколько ключевых из них, которые помогут получить полную картину. Для примера возьмем один (случайно выбранный) исторический тест на часовом графике EUR/USD длительностью чуть более года.

Первое, что мы получаем после проведенного теста — отчет в формате html.

Алготрейдинг. Результаты бэктеста
Отчет в сыром виде. Требует тщательной обработки напильником.

Отчет содержит все необходимое о бэктесте, информация по каждой сделке подробно предоставлена. Однако, его надо существенно довести до ума — в изначальном виде отчет выглядит сложно и не наглядно.

Из отчета с помощью Excel макросов можно извлечь огромное количество данных, после чего сделать из них конфетку. Ниже на изображении выделены базовые данные: окно тестирования, таймфрейм, валютная пара.

Алготрейдинг. Результаты бэктеста
Алготрейдинг. Результативность ТС на бэктесте. Общий вид.

Окно тестирования и количество закрытых позиций

Окно тестирования — это исторический период, на котором проводился тест.

Есть универсальное мнение, что величина окна тестирования должна зависеть от “скорострельности” торговой системы, а также ее рабочего таймфрейма.

Например, если система разработана для дневных графиков и совершает в год 20 трейдов, то тест необходимо проводить более чем на 5-ти годах исторических котировок. Внутридневные “высокоскорострельные” торговые системы редко тестируют более чем на 3-6 месяцах истории.

Авторитет в области оптимизаций торговых систем Роберт Пардо (Robert Pardo) приводит цифру 35 как минимальное количество трейдов для оценки способностей вашей ТС, так как на таком количестве сделок начинают себя проявлять статистические закономерности вашей системы.

Алготрейдинг. Результаты бэктеста
Окно тестирования и количество позиций.

Еще на окно теста влияет количество параметров, которые вы тестируете в своей стратегии.

Чем больше параметров участвует в тесте, тем длиннее должен быть исторический период.

Об этом пишет в своих работах еще один не менее уважаемый человек в области финансовых рынков — Маркос Лопес де Прадо. Взаимосвязь исторического окна к количеству параметров можно изучить на картинке ниже.

Оценка параметров стратегии
По оси Х — количество параметров стратегии, по оси У — минимальное время теста (в годах).

Для чего нужно увеличивать историческое окно теста при увеличении параметров? Чтобы снизить вероятность переоптимизации стратегии (он же оверфиттинг).

Переоптимизированные стратегии на истории с большей вероятностью сломаются при живой торговле.

А мы совсем не хотим, чтобы наши стратегии ломались и вели себя хуже, чем при тестах.

Общий доход, общий убыток и профит-фактор

Любая система совершает убыточные трейды. Можно воспринимать их как плату за участие в деле — это часть бизнеса, некая издержка.

Алготрейдинг. Результаты бэктеста
Общий доход, убыток. Профит-фактор.

Отношение общего дохода к общему убытку (без знака минус) дает профит-фактор.

Если ваша система имеет профит-фактор выше 1, она способна зарабатывать. В нашем примере это 1.37, что очень неплохо.

Казалось бы, тут можно остановиться, но нет: одного только профит-фактора “>1” недостаточно. Нужно знать, что происходит внутри. Быть может, только 1 сделка определила всю доходность, а большинство времени система была в просадке.

За 1 час поможем разобраться с факторами успеха и причинами неудач на финансовых рынках. Бесплатно

Просадка: максимальная, средняя, в процентах, днях

Любая система переживает просадки. В прошлых статьях мы уже изучали данный аспект, но стоит еще раз дать определение.

Просадка (англ. drawdown) — убыток, полученный за время от достижения исторического пика кривой доходности до исторического минимума кривой доходности.

Графически это выглядит так:

Максимальные просадки кривой доходности
Просадка — от максимума до минимума кривой доходности.

Перед запуском алгоритма в живом режиме трейдер определяет для себя величину максимальной просадки, которую он готов выдержать психологически. Эта цифра варьируется у разных людей. Кто-то не готов уступить более 15%, но есть те, кто допускает волатильность и до 50%.

Важные показатели
Просадка, в процентах и днях.

У нас система допустила максимальную просадку 21.2%. Также 165 календарных дней потребовалось, чтобы обновить один из исторических максимумов кривой доходности. Эти две просадки — максимальная в процентах и в днях — необязательно должны совпадать. Также можно вычислить среднюю просадку. В нашем случае это 1.4% и 24 календарных дня.

Необходимо уточнить, что при каждой сделке в случае срабатывания стоп-лосса теряется 1% капитала.

Средний годовой доход

После просадки можно перейти к годовому доходу. В нашем случае это шикарные 53.6%. В среде управляющих даже 30% или 40% среднегодовых — очень хорошие показатели. Например, у одного из самых высокодоходных хедж-фондов мира — Ren Tech — среднегодовая доходность около 40%.

Результат ТС
Средний годовой доход на историческом тесте

Средний годовой доход лучше вычислять, если окно тестирования больше одного года. Хотя можно привести к такому виду любой тест алготрейдинга.

Коэффициент восстановления

Коэффициент восстановления (англ. recovery factor) — выражает отношение между средней годовой доходностью и максимальной просадкой.

Результаты бэктестов
Коэффициент восстановления.

Если коэффициент восстановления равен 1, то это означает, что система после просадки, например, в 15% смогла ее перекрыть и дать сверху 15% дохода.

Коэффициент Шарпа

Улучшенная, и более полезная версия коэффициента восстановления. По той причине, что коэффициент Шарпа учитывает еще и волатильность торговой стратегии или портфеля, а не только просадку и доходность.

Формула Шарпа, которую используем мы:

Коэффициент Шарпа

Где:

  • CAGR (compound annual growth rate) — средний годовой доход
  • σ (сигма) — стандартное отклонение; в знаменателе — среднегодовое стандартное отклонение

Чем больше значение Шарпа, тем лучше себя проявляет инвестиционный портфель. Например, Шарп между 1 и 2 — хороший результат, а все, что выше 2 — вообще супер.

Коэффициент Шарпа — один из самых важных показателей эффективности управляющего или фонда.

Ок, теперь переходим к более точечному анализу — к анализу торговых сделок.

Сделки: величина и время

Оценить результативность ТС можно только в комплексе. Одного профит-фактора или средней годовой доходности недостаточно. Нужно смотреть сделки.

Количество прибыльных и убыточных трейдов

Алготрейдинг. Результаты бэктеста.
Прибыльные и убыточные сделки. Количество, процент.

Известно, что система совершила 252 трейда, из которых только 91 — прибыльны. Или 36.1%.

Психологически довольно сложно работать с такой системой. Особенно трудно свыкнуться с этим начинающим трейдерам. Но с этим придется свыкаться — это еще одни реалии трейдинга, и в особенности трендоследящих подходов.

Максимальная прибыльная и убыточная сделки

Приведенная ТС ставит ограничения как на стоп-лосс, так и на тейк-профит. Поэтому максимальная прибыль и убыток почти не превышают заданной нормы (исключение — проскальзывания).

Результаты бэктестов
Максимальная прибыль и убыток — в пунктах.

Мы предпочитаем выражать максимум в пунктах, поскольку по мере изменения капитала меняются и максимальные прибыли/убытки. Еще один вариант — выражать их в процентах от капитала.

Средняя сделка, средняя прибыльная и средняя убыточная

Этот показатель также можно выражать в пунктах, в валюте депозита, либо в проценте от капитала. На изображении — средние сделки в пунктах.

Результаты сделок
Алготрейдинг. Средние сделки.

Если средний трейд выше нуля (в нашем случае 5.35 пп), система имеет право перейти на следующий этап отбора. При этом нужно помнить о комиссиях и прочих расходах на сделки.

Хорошим тоном также считается, когда средняя прибыльная сделка больше средней убыточной.

Соотношение средней прибыльной и убыточной

В нашем примере одна средняя положительная сделка перекрывает 2.42 средние отрицательные, что очень неплохо.

Результаты бэктестов
Средняя прибыльная сделка делится на среднюю убыточную.

Однако этого может оказаться недостаточно, если количество убыточных зашкаливает.

Положительные и отрицательные серии трейдов — максимальные и средние

Не менее интересным штрихом к картине ТС являются серии сделок.

Результаты бэктестов
Положительные и отрицательные серии сделок.

Обращает на себя внимание серия из 14-ти отрицательных трейдов. С нее начинается самая крупная просадка в этом тесте. Выход из просадки начался с еще одной самой крупной серии — 7 положительных сделок подряд.

14 убытков подряд
Самая крупная отрицательная серия.

Как видно, система редко дает 2 прибыльные сделки подряд. Средняя отрицательная серия состоит из 3-х трейдов.

Среднее, максимальное и минимальное время сделки

Результаты алготрейдинга
Время сделки: среднее, минимальное, максимальное

ТС практически внутридневная, поскольку средний трейд закрывается в течение одного дня. Касаемо самой продолжительной сделки нужно отметить, что в расчеты включены все календарные дни. Поэтому в 121 час самой продолжительной входят выходные дни.

Среднее время положительной и отрицательной сделки

Результаты
Среднее время прибыльных и убыточных сделок.

Очень интересная статистика, которая подтверждает истину всех времен:

Прибыльной сделке нужно дать больше времени.

А убытки резать наповал — без сожалений или сомнений.

Количество Long, Short трейдов, % положительных

По этой статистике смотрят, есть ли у системы так называемый market bias (т.е. склонность зарабатывать только на определенной стороне рынка). Если соотношение длинных и коротких сделок стремится к 50%, такая ТС считается сбалансированной.

Результаты количества сделок
Соотношение длинных и коротких позиций.

В приведенном примере 49.6% лонгов, что свидетельствует о сбалансированности. Однако дальше видим, что положительных лонгов 40.8%, а шортов — лишь 31.5%.

Результаты алготрейдинга
Положительные покупки и продажи.

Значит ли это, что короткие трейды нужно исключить из алгоритма? Нет, поскольку в чистом итоге они принесли прибыль.

Кривая доходности

Один образ достоин тысячи слов… или цифр. Вид кривой доходности зачастую позволит понять систему гораздо быстрее, чем самая изысканная статистика в алготрейдинге.

Кривая доходности
Кривая доходности. Логарифмическая шкала.

Год и месяц теста произвели положительный результат.

Кривая доходности
Кривая доходности. Обычная шкала.

Да, на коротком промежутке разницы между логарифмической и обычной шкалой почти не видно. Однако она станет заметна на больших исторических окнах, поэтому лучше привыкать к логарифмической шкале.

Ниже пример 15-летнего теста. Логарифмическая шкала хорошо показывает начало (малые числа) и не так размашиста в конце (крупные числа).

Две шкалы. Алготрейдинг
Вверху — логарифмическая шкала, внизу — обычная.

На обычной шкале положительная кривая доходности идет вверх как бы по параболе. На логарифмической — по прямой линии.

Вернемся к примеру: полученная кривая, несмотря на высокий годовой доход и хороший коэффициент просадки, не внушает 100% доверия, поскольку видно:

  • Более чем полгода кривая доходности находилась во флэте.
  • Основная прибыль была получена за 2 месяца.

Здесь включаются личные предпочтения трейдеров и инвесторов, можно ли работать с ТС с данными настройками. Поскольку человеку хочется видеть линейный рост своих доходов (что, конечно же, не случается в реальности), большинство трейдеров может отказаться от этой стратегии. Но есть и те, кто хорошо понимает, как трудно добиться прибыльности, распределенной во времени линейно.

Таково устройство рынков: долгие промежутки спокойствия, сменяемые промежутками взрывной волатильности. Это демонстрируют как графики финансовых инструментов, так и графики кривых доходностей.

R-квадрат

Напоследок критерий красоты кривой доходности, или ее плавности. Это R-квадрат, или коэффициент детерминации. С его помощью можно отфильтровать неугодные настройки ТС, оставив себе только те, где коэффициент “красоты” стремится к 1.

Приведем несколько примеров. R-квадрат прямо на графиках.

R-квадрат
Кривая доходности из рассматриваемого примера.

Систему с коэффициент около 0.7 вполне можно допустить в дальнейшую разработку.

Доход есть, но плавность кривой не удовлетворяет требованиям.

R-квадрат
Высокий R-квадрат.

Последняя кривая доходности — хороший кандидат для запуска в live-режиме.

Все приведенные кривые — одна и та же система с немного отличающимися настройками.

Заключение

Мы рассмотрели несколько ключевых критериев, по которым оценивается пригодность торговой системы для ее дальнейшего использования.

Подобных критериев десятки, но, как и в создании торговых алгоритмов, нельзя перемудрить. Если сомневаетесь, смотрите на кривую доходности и ее плавность — она скажет больше, чем вся статистика вместе взятая.

В комментариях напишите, какие критерии вы используете на практике для оценки ваших торговых систем, какие из них вы считаете самыми надежными и почему.

Материалы

Как создавать торговые стратегии на основе статистики и данных, способных работать 24/5

Не упустите возможность получить прибыльные торговые стратегии.

Поделиться статьей

С радостью ответим на ваши комментарии

Читайте также

Поп-ап

В поиске прибыльных торговых стратегий на финансовых рынках?

Тогда вам по одной из кнопок ниже

До 60% скидок на все курсы. Только для тех, кто прошел вступительный материал до конца

  1. Ваша выгода составит от 2 409 ₽ до 31 482 .
  2. Стоимость любого курса можно разделить на 4 части. Без переплат, комиссий или кредитных договоров.
  3. Если курсы вам не подойдут — вернем деньги без вопросов.

До 60% скидок на все курсы. Только для тех, кто прошел вступительный материал до конца

  1. Ваша выгода составит от 2 495 ₽ до 36 936 .
  2. Стоимость любого курса можно разделить на 4 части. Без переплат, комиссий или кредитных договоров.
  3. Если курсы вам не подойдут — вернем деньги без вопросов.