Приблизительное время чтения: 11 минут
Вы можете фильтровать сделки, чтобы улучшить качество сигнала. Здесь мы сосредоточимся на ситуациях, когда волатильность на рынке, на котором осуществляются торги, снизилась. Вот как можно запрограммировать, протестировать и реализовать эту концепцию.
В Unger Academy мы используем ценовые паттерны в наших торговых системах в первую очередь как фильтры в рамках основной стратегии, а не как прямые сигналы для открытия и закрытия сделок. Вместо того, чтобы управлять сделками на основе рыночных ценовых паттернов, как это обычно делается, мы используем ценовое действие в первую очередь как
операционный фильтр.
В этой статье мы воспользуемся паттерном сжатия волатильности, чтобы усовершенствовать стратегию следования за трендом, которая открывает новые позиции при прорыве определенного ценового уровня. Наш подход заключается в фильтрации сделок и сосредоточении исключительно на ситуациях, когда волатильность на рынке снижается. В следующих разделах мы обсудим причины этого и постараемся понять возможное влияние такого подхода к фильтрации на различные инструменты.
Что такое сокращение волатильности?
Если мы используем дневной бар для представления цен, достигнутых рынком в этой сессии, мы можем получить рисунок, подобный тому, что показан на рисунке 1.

«Тело» представляет собой разницу между ценами открытия и закрытия рынка, а «диапазон» измеряет расстояние между максимумом и минимумом сессии. Поскольку ширина диапазона может служить показателем волатильности цен, сравнивая диапазоны последовательных баров, можно определить потенциальные тенденции волатильности.
Модель сокращения волатильности, которую мы будем оценивать, можно определить в PowerLanguage следующим образом:

Согласно этой модели, диапазон последней завершенной сессии (highS(1)-lowS(1)) должен быть меньше диапазона предыдущей сессии (highS(2)-lowS(2)), который, в свою очередь, должен быть меньше диапазона предыдущей сессии (highS(3)-lowS(3)).
Насколько сильно его фильтрующее действие?
Чтобы ответить на этот вопрос, мы можем использовать простой код, который рассчитывает процент появлений на рынках из разных секторов с 2010 года по сегодняшний день:

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

Из результатов таблицы видно, что частота этого паттерна остается относительно постоянной на разных рынках, составляя около 15–20 % торговых сессий. Таким образом, если мы рассмотрим возможность использования этого паттерна в качестве фильтра в стратегии прорыва, мы можем ожидать значительного снижения общего количества сделок. Важно помнить о потенциальном риске потери статистической значимости результатов.
Тем не менее, мы оптимистично оцениваем эффективность этого фильтра, поскольку сокращение волатильности обычно предшествует заметным ценовым движениям, особенно прорывам на уровнях, отслеживаемых стратегией.
ПЕРВОЕ ТЕСТИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ НЕСКОЛЬКИХ ИНСТРУМЕНТОВ
Для первоначального тестирования мы рассмотрим тот же набор фьючерсных контрактов. Мы применим простую стратегию, описанную ниже, к каждому инструменту, используя данные с 2010 года по настоящее время и 15-минутный таймфрейм графика.
Стратегия открывает длинные или короткие позиции при прорыве максимума или минимума предыдущей сессии. Дополнительные фильтры не применяются. Стратегия закрывает позицию в конце торговой сессии или при достижении стоп-лосса в 2000 долларов.

Результаты для системы показаны на рисунке 3. Как и ожидалось, заметно, что два инструмента из энергетического сектора, сырая нефть (@CL) и бензин RBOB (@RB), демонстрируют лучшие результаты при торговле с использованием этого подхода прорыва.

Мы сосредоточимся на этих инструментах и введем фильтр сокращения волатильности, изменив скрипт с помощью выделенных ниже частей:

Результаты с фильтром и без него представлены в таблице на рисунке 4. Фильтрующее действие паттерна в точности соответствует нашим ожиданиям. Несмотря на то, что чистая прибыль уменьшилась, средняя сделка теперь ближе к тому, что можно назвать устойчивой в реальной торговле, где также необходимо учитывать комиссионные расходы и проскальзывание.

Для дальнейшей иллюстрации мы продолжаем разрабатывать конкретную стратегию для фьючерсного контракта @RB.
Давайте создадим простую стратегию
Вернемся к коду, использованному в предыдущем разделе, и посмотрим, может ли добавление временного фильтра к записям улучшить его производительность.
Затем мы добавим два входа, myday1 и myday2, чтобы исключить торговлю во время двух сессий в неделе. Торговая сессия @RB начинается в 18:00 (по биржевому времени) и заканчивается в 17:00 следующего дня, с воскресенья по пятницу. На основе доступных исторических данных было установлено, что производительность стратегии может быть улучшена, если myday1 = 0 и myday2 = 1, то есть если воскресенье и понедельник исключены.
Мы включим это новое условие, основанное на времени, в наш код, выделив следующие части:
Входные данные:


воскресенье и понедельник исключаются из торговли, общий профиль показателей стратегии улучшается, хотя не каждый отдельный показатель улучшается.
Это дает нам новые результаты, показанные на рисунке 5. Мы видим, что чистая прибыль системы значительно увеличилась, даже несмотря на то, что мы торгуем только четыре из пяти доступных дней в неделе. Максимальная просадка уменьшилась, а средняя сделка увеличилась до 140 долларов. Общее количество сделок уменьшилось, что может снизить статистическую значимость результатов. Однако мы также торгуем меньше сессий, поэтому 30–35 сделок в год — это разумное количество. Поэтому мы решили сохранить выбранный временной фильтр.
Можем ли мы еще больше улучшить стратегию, торгуя в ночное время?
Мы торгуем в течение дня и закрываем все открытые позиции не позднее конца сессии. Что произойдет, если мы дадим сделкам больше времени для развития? Чтобы ответить на этот вопрос, мы вводим новый входной параметр MaxDays, новую переменную DaysInTrade (которая увеличивается на 1 с каждой сессией) и заменяем команду выхода setexitonclose последними пятью строками в следующем наборе кода:

Оптимизировав MaxDays с использованием данных, доступных с 2010 года по настоящее время, мы пришли к выводу, что выгодно проводить сделки максимум в течение трех сессий. Затем мы установили MaxDays=3 и посмотрели на новые результаты (см. рисунок 6).

проводилась в течение дня, и все открытые позиции закрывались в конце сессии. Если дать сделкам больше времени для развития, улучшит ли это стратегию? Результаты показывают, что изменение стратегии с внутридневной на многодневную оказало значительное влияние на систему.
Переход от внутридневной стратегии к многодневной оказал значительное влияние на систему. Max DD (максимальная просадка) действительно уменьшилась, но чистая прибыль увеличилась более чем на 40%, а средняя сделка увеличилась почти на 50%, что уже является хорошим показателем для инструмента, которым мы торгуем.
Можно ли увеличить его еще больше? Стратегия проста и уже дает нам отличные показатели. Добавление определенных условий может улучшить ее, но также увеличить риск переобучения.
Поэтому мы решили не вводить дополнительные правила входа, а только посмотреть, может ли быть полезно добавление тейк-профита.
На рисунке 7 вы можете увидеть результаты после введения тейк-профита в размере 4000 долларов.

Максимальная просадка (Max DD) осталась примерно на том же уровне, но мы увеличили как чистую прибыль, так и средний размер сделки. Поэтому мы удовлетворены этим выбором.
Заключительные соображения
Мы показали, как для фьючерсов на первичную энергию разрешение сделок только после сжатия волатильности оказало значительное влияние на показатели системы прорыва, следующей за трендом. Этот подход значительно улучшил среднюю сделку и уменьшил максимальную просадку.
Это привело нас к разработке комплексной стратегии для фьючерсов @ RB. В будущем, возможно, стоит вернуться к активам, которые мы изначально отложили из-за их низкой эффективности при использовании исходной стратегии, чтобы определить влияние этой модели на них.

Если сравнить эти отфильтрованные результаты (рисунок 8) с результатами нефильтрованной стратегии, можно заметить значительное улучшение показателей. Это подчеркивает эффективность использования фильтра сокращения волатильности при входе в рынок.
Об Авторе:
Андреа Унгер — профессиональный трейдер с полной занятостью, президент Академии Унгера и автор книги «Метод Унгера». Он является четырехкратным чемпионом мира по трейдингу (2008, 2009, 2010 и 2012), почетным членом SIAT (Итальянское общество технического анализа, отделение IFTA) и выступает по всей Европе, Америке, Австралии и Азии. С ним можно связаться по адресу Andrea@ UngerAcademy.com. Академия Унгера предоставляет услуги трейдерам, в том числе частным лицам, помогая им улучшить свой подход к торговле (более подробную информацию можно найти на сайте https://autc.pro/tasc).
ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА:
- Унгер, Андреа [2021]. Руководство успешного трейдера по управлению капиталом: проверенные стратегии, приложения и методы управления, Wiley Trading.
- [2021]. Метод Унгера: выигрышная стратегия 4-кратного чемпиона мира по трейдингу, The Boss Books.
———————————————
Переведено специально для сайта Finware Technologies, www.finware.ru
Вы можете свободно распространять эту статью любыми способами целиком вместе с этим блоком и действующей гиперссылкой на сайт finware.ru.
———————————————