English Deutsch 日本語
preview
Создание торговой системы (Часть 4): Как случайные выходы из сделок влияют на ожидаемую доходность

Создание торговой системы (Часть 4): Как случайные выходы из сделок влияют на ожидаемую доходность

MetaTrader 5Трейдинг |
512 0
Daniel Opoku
Daniel Opoku

Введение

В Части 3 этой серии мы рассмотрели, как трейдеры могут устанавливать реалистичные целевые показатели прибыли и достигать своих целей, используя системную статистику. Мы установили, что для достижения долгосрочных торговых целей каждый винрейт и соотношение риска и прибыли (RRR) требуют уникальной комбинации размера позиции и частоты сделок. Хотя стратегии множественного входа могут помочь увеличить объем торговли, прежде чем двигаться дальше, необходимо рассмотреть важную концепцию — управление случайным винрейтом.

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

В связи с этим возникают важные вопросы:

  • Как трейдеры могут избежать этого разрушительного паттерна?
  • Возможно ли выйти из сделки до достижения установленного профит-таргета и при этом увеличить средства на счете?
  • Можно ли структурировать случайность при получении прибыли таким образом, чтобы улучшить результаты?

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


Разбираемся в случайном винрейте

В Части 1 этой серии мы продемонстрировали, что каждый фиксированный RRR соответствует минимальному пороговому значению винрейта, который необходимо превысить для достижения прибыльности. Например:

  • При RRR = 1,5 минимальный винрейт составляет 40%.
  • Для RRR = 2,5 минимальный винрейт падает до 28.6%.
  • Если RRR = 3,0, для прибыльности необходимо как минимум 25% успешных сделок.

Когда трейдер последовательно применяет фиксированный RRR, расчеты просты: прибыльность зависит от поддержания винрейта выше порогового значения.

Однако на практике многие трейдеры выходят из сделок при случайных уровнях прибыли, будь то из-за страха, нетерпения или использования механизмов трейлинг-стопа. Такое поведение приводит к варьирующимся RRR, которые, в свою очередь, генерируют различные винрейты.

Рассмотрим пример:

  • Первые 50 сделок: При RRR = 1,2 винрейт составляет 45%
  • Следующие 50 сделок: При RRR = 0,3 винрейт составляет 60%
  • Последние 50 сделок: При RRR = 2,0 винрейт составляет 30%

В общей сложности трейдер совершил 150 сделок, каждая из которых имела разные винрейты и RRR. Важнейший вопрос: Является ли трейдер в целом прибыльным?

Ответ заключается в расчете ожидаемой доходности торговой системы.

Формула ожидаемой доходности

Показатель ожидаемой доходности измеряет среднюю прибыль от каждой сделки и определяет, является ли система прибыльной:

eqn1

  • Если E > 0, система прибыльна.
  • Если E ≤ 0, система убыточна.

Суммируя ожидаемую доходность по сделкам с различными RRR и винрейтами, трейдеры могут оценить, приносят ли их случайные выходы из сделок по-прежнему чистый положительный результат.

Случайный винрейт при использовании волатильностных трейлинг-стопов

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

  • Средний истинный диапазон (ATR)
  • Стандартное отклонение
  • Полосы Боллинджера

лишь некоторые из тех, что позволяют динамически корректировать уровни стоп-лосса в зависимости от волатильности рынка

В периоды высокой волатильности (например, 1000 пунктов) сделки могут оставаться открытыми дольше, что может указывать на возможность получения прибыли или закрытия при более высоких RRR. И наоборот, при низкой волатильности (например, 200 пунктов) сделки могут быть преждевременно закрыты, что снижает RRR. Это, естественно, приводит к случайным результатам, поскольку коэффициент RRR колеблется в зависимости от рыночных условий.

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


Моделирование по методу Монте-Карло: Анализ случайных винрейтов

Чтобы лучше понять, как случайные выходы влияют на прибыльность, в следующем разделе мы воспользуемся моделированием по методу Монте-Карло. Моделируя сотни и тысячи случайных результатов сделок, мы можем наблюдать, как ведет себя ожидаемая доходность при различных сценариях случайных значений RRR и винрейта.

Этот анализ даст практические выводы по следующим вопросам:

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

Пример: Оценка управления сделками с помощью случайных винрейтов

В данном исследовании мы рассматриваем торговую систему с винрейтом равным 30% при RRR равном 4. Три трейдера применили эту систему, но из-за 15 последовательных убыточных сделок они решили изменить свои стратегии выхода, зафиксировав прибыль на пяти различных уровнях RRR.

Трейдер 1: Профиль и ожидаемая доходность

Мы проанализируем эффективность Трейдера 1, его кривую эквити, просадки и комбинированные стратегии, используя моделирование по методу Монте-Карло. В таблице 1 приведены результаты торговли Трейдера 1 при различных винрейтах и уровнях RRR, а также значения ожидаемой доходности:

Таблица 1: Торговый профиль Трейдера 1

Винрейт (%)
RRR
Ожидаемая доходность
20.92% 2.61
-0.244
36.22% 2.15
0.142
51.91% 1.84
0.475
61.24% 0.55
-0.049
76.55% 0.27
-0.029

Анализ показывает, что три стратегии (винрейт составляет 20,9%, 61,2% и 76,6%) генерируют отрицательную ожидаемую доходность, в то время как две стратегии (36,2% и 51,9%) демонстрируют положительную ожидаемую доходность. Однако, поскольку совокупная сумма ожидаемой доходности положительна, этот трейдер все равно может достичь общей прибыльности, если будет эффективно управлять сочетанием стратегий.

Трейдер 1: Визуальный анализ кривых эквити

Используя 100 сделок на систему, мы наблюдали следующее:

  • Стратегии с отрицательной ожидаемой доходностью (винрейт 20.9%, 61.2%, 76.6%) привели к снижению кривой эквити.
  • Стратегии с положительной ожидаемой доходностью (винрейт 36.2% и 51.9%) привели к росту кривой эквити.

sc1_graph1

Рисунок 1: Торговая система Трейдера 1

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

Анализ просадок по Трейдеру 1

Анализ профилей риска и доходности для Трейдера 1 выявляет значительные различия в потенциальных просадках в зависимости от винрейта и RRR. Максимальная просадка фиксируется при винрейте в 51,9% и RRR равном 1,84, при этом убытки могут превышать 55% от баланса счета. Напротив, минимальная просадка достигается при винрейте в 76,5% и RRR равном 0,27, при этом убытки не превышают 5%.

Все остальные комбинации показателей винрейта и соответствующих им значений RRR для Трейдера 1 попадают в эти два экстремума. Это указывает на то, что уровень риска варьируется от очень незначительного снижения эквити до потенциально серьезной просадки капитала.

sc1dd

Рисунок 2: Процент просадки Трейдера 1 для каждой системы

Анализ кривой эквити по Трейдеру 1

Оценка эффективности работы Трейдера 1 также включает в себя анализ поведения кривой эквити при различных показателях винрейта и RRR. Максимальная кривая эквити соответствует винрейту в 51,9% и RRR в размере 1,84, при этом стоимость счета возрастает и составляет немногим более 2000 долларов. С другой стороны, минимальная кривая эквити наблюдается при винрейте в 20,9% и RRR, равным 2,61, когда стоимость счета падает ниже 500 долларов.

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

sc1eq

Рисунок 3: Кривые эквити Трейдера 1 по каждой системе

В таблице 2 представлен краткий обзор рисунков 2 и 3.

Таблица 2: Среднее и медианное значение эквити и медианная просадка для Трейдера 1

Винрейт (%) RRR Среднее эквити ($) Медианное эквити ($) Медианная просадка (%)
20.92% 2.61
$789.00
$777.00
26.99%
36.22% 2.15
$1130.00 $1132.00 21.57%
51.91% 1.84
$1601.00 $1596.00 39.03%
61.24% 0.55
$950.00 $946.00 10.29%
76.55% 0.27
$978.00 $988.00 7.77%

Ключевая информация:

  • Наибольшее медианное эквити (1595 долларов) получаем при винрейте в 51,9% и RRR = 1,84. Хотя при этом наблюдается наибольшая медианная просадка (39%).
  • Наименьшая просадка (7,8%) наблюдается при винрейте в 76,5% и RRR = 0,27, но эквити ограничено суммой ниже 1000 долларов.
  • Наихудшие результаты получены при винрейте в 20,9% и RRR = 2,61, где и эквити, и ожидаемая доходность отрицательны. Это негативно сказывается на общей эффективности.

Комбинированная стратегия управления торговлей --> Трейдер 1

Для моделирования реальных торговых условий мы провели 500 моделирований по методу Монте-Карло, в которых любая из пяти стратегий могла быть случайным образом применена к 100 сделкам. 

sc1_pie

Рисунок 4: Интегрированный подход к управлению сделками Трейдера 1

Круговая диаграмма результатов деятельности Трейдера 1 показывает, как различные стратегии управления сделками применялись на протяжении всего его торгового процесса. Распределение было относительно сбалансированным по пяти подходам:

  • Система с винрейтом 20,9% → 18,6% сделок
  • Система с винрейтом 36,2% → 18,4% сделок
  • Система с винрейтом 51,9% → 20,8% сделок
  • Система с винрейтом 61,2% → 21,4% сделок
  • Система с винрейтом 76,5% → 20,8% сделок

Такое почти равномерное распределение показывает, что Трейдер 1 не слишком полагался на какой-либо один подход, а вместо этого распределял сделки между несколькими подходами.

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

sc1dd500 sc1eq500

Рисунок 5: Результат комбинированной стратегии Трейдера 1 

Таблица 3: Комбинированные результаты по Трейдеру 1

Среднее эквити ($)
Медианное эквити ($)
Медианная просадка (%)
 $1092.00  $991.00  18.38%

Ключевая информация

  • Просадки варьировались от менее 5% (влияния системы с винрейтом 76,5%) до более 55% (влияния системы с винрейтом 51,9%).
  • Кривые эквити находились в диапазоне от минимального значения около 500 долларов до максимального в районе 1750 долларов.
  • Вероятность достижения отметки в 2000 долларов снизилась по сравнению с использованием только системы с винрейтом в 51,9%.
  • Среднее эквити (1091 долларов) и медианное эквити (990 долларов) свидетельствуют о стабильном, но умеренном росте счета.
  • Медианная просадка (18,4%) значительно ниже, чем в наихудшем случае при использовании одной системы (39–55%), что подчеркивает снижение риска за счет диверсификации.

Оптимизация стратегии: Трейдер 1

Для повышения прибыльности Трейдеру 1 следует:

  1. Увеличить ставку на винрейт в 36,2% при RRR = 2,15, что свидетельствует о высокой ожидаемой доходности, контролируемой просадке (~21,6%) и потенциале роста эквити около 1500 долларов.
  2. Снизить или исключить винрейт в 20,9% при RRR = 2,61, который неизменно приводит к отрицательной ожидаемой доходности и слабым результатам по эквити.
  3. Рассмотреть возможность взвешенного распределения средств в пользу систем с более высокими ожидаемыми доходностями, а не равномерного распределения, чтобы улучшить баланс между ростом и риском.

Трейдер 2: Профиль и ожидаемая доходность

Торговый профиль Трейдера 2 основан на пяти различных соотношениях риска и прибыли (RRR) и соответствующих им винрейтах. Значения ожидаемой доходности, связанные с каждым из них, приведены в Таблице 4:

Таблица 4: Торговый профиль Трейдера 2

Винрейт (%)
RRR
Ожидаемая доходность
21.46% 2.98
-0.147
36.65% 1.80
0.026
55.09% 1.28
0.256
56.41% 1.11
0.188
77.38% 0.78
0.379

Из таблицы 4 видно, что только одна система — с винрейтом в 21,5% и RRR=2,98 — имеет отрицательную ожидаемую доходность. Остальные четыре метода имеют положительную ожидаемую доходность, демонстрируя особенно высокий потенциал с винрейтами 55,1% и 77,4%. Это говорит о том, что Трейдер 2, применяя этот диверсифицированный план, имеет высокую вероятность получения положительных долгосрочных результатов.

Трейдер 2: Визуальный анализ кривых эквити

Визуальный анализ кривых эквити по 100 сделкам обнаруживает определенные паттерны:

  • Система с винрейтом в 21,5% предсказуемо демонстрирует нисходящую кривую, что соответствует ее отрицательной ожидаемой доходности.
  • Системы с винрейтом в 36,7% и 56,4% демонстрируют вялый рост, колеблясь в районе точки безубыточности в диапазоне 1000–1100 долларов.
  • Системы с винрейтом в 55,1% и 77,4% демонстрируют устойчивый рост кривых эквити и вносят наибольший вклад в прибыльность.

sc2_graph1

Рисунок 6: Торговая система Трейдера 2

Для оценки статистической надежности было проведено 100 моделирований для каждой системы. Их эффективность была проанализирована с помощью блочных диаграмм эквити и просадки.

Анализ просадок по Трейдеру 2

Как и в случае с Трейдером 1, каждая торговая система представляет свой собственный диапазон просадок в зависимости от взаимодействия между винрейтом и RRR. Для Трейдера 2 максимальная просадка фиксируется при винрейте в 77,4% и RRR равном 0,78, при этом убытки приближаются к 45% от баланса счета. Минимальная просадка достигается при винрейте в 56,4% и RRR равном 1,11, при этом убытки находятся в районе 5%.

Все остальные комбинации винрейтов и RRR по Трейдеру 2 приводят к просадкам, которые находятся между этими верхними и нижними границами. Это подтверждает тот паттерн, что подверженность риску, зависящему от конкретной системы, очень чувствительна к изменениям параметров.

sc2dd

Рисунок 7:  Процент просадки Трейдера 2 по каждой системе

Анализ кривой эквити по Трейдеру 2

При торговом подходе Трейдера 2 максимальная кривая эквити достигнута при винрейте в 77,4% и RRR в размере 0,78, при этом стоимость счета возрастает и составляет немногим более 1700 долларов. Напротив, минимальная кривая эквити наблюдается при винрейте в 21,5% и RRR равном 2,98, когда эквити опускается ниже 600 долларов.

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

sc2eq

Рисунок 8: Кривые эквити Трейдера 2 по каждой системе

В таблице 5 обобщены основные результаты, представленные на рисунках 7 и 8.

Таблица 5: Среднее и медианное значение эквити и медианная просадка для Трейдера 2

Винрейт (%) RRR Среднее эквити ($) Медианное эквити ($) Медианная просадка (%)
21.46% 2.98
$858.00 $837.00
23.11%
36.65% 1.80
$1008.00 $999.00 17.11%
55.09% 1.28
$1295.00 $1295.00 25.62%
56.41% 1.11
$1214.00 $1202.00 20.76%
77.38% 0.78
$1442.00 $1445.00 31.66%

Ключевая информация

  • Наибольший прирост эквити наблюдался при использовании системы с винрейтом в 77,4% (средний эквити ≈ 1443 доллара).
  • Наихудший результат показывает система с винрейтом 21,5% (среднее значение эквити ≈ 858 долларов).
  • Медианные просадки значительно варьируются - от минимума примерно в 17% (винрейт в 36,7%) до максимумов, превышающих 30% (винрейт в 77,4%).
  • Хотя стратегии с более высоким винрейтом обеспечивают более сильный рост, они также, как правило, приводят к более глубоким просадкам.

Комбинированная стратегия управления торговлей --> Трейдер 2

Было проведено 500 прогонов моделирования по методу Монте-Карло, в каждом из которых пять стратегий случайным образом комбинировались на протяжении 100 сделок.

sc2_pie

Рисунок 9: Интегрированный подход к управлению сделками Трейдера 2

Результаты показывают распределение того, как Трейдер 2 применял свои методы:

  • Система с винрейтом 21,5% → 22,0% сделок
  • Система с винрейтом 36,7% → 20,4% сделок
  • Система с винрейтом 55,1% → 18,0% сделок
  • Система с винрейтом 56,4% → 20,2% сделок
  • Система с винрейтом 77,4% → 19,4% сделок

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

Совокупные результаты этих стратегий показаны на Рисунке 10 как для роста эквити, так и для просадок.

sc2dd500 sc2eq500

Рисунок 10: Результат комбинированной стратегии Трейдера 2 

 

Таблица 6: Комбинированные результаты по Трейдеру 2

Среднее эквити ($)
Медианное эквити ($)
Медианная просадка (%)
 $1167.00 $1169.00 23.14%

Ключевая информация

  • Просадки варьировались от 5% до 45%, отражая экстремумы лучших и худших систем.
  • Кривые эквити варьировались в диапазоне от 600 до 1800 долларов, причем максимальный размер эквити был увеличен за счет диверсификации по сравнению с более слабыми отдельными системами.
  • Системы с показателями 36,7% и 56,4% обеспечивают стабильность, но мало способствуют росту эквити.
  • Достижение эквити в размере 2000 долларов после 100 сделок было статистически маловероятным, поскольку этот показатель выходил за пределы максимальных наблюдаемых значений.

Оптимизация стратегии: Трейдер 2

Для повышения прибыльности стратегически, Трейдер 2 может рассмотреть возможность:

  1. Придания большего значения винрейту в 55,1% (RRR=1,28), который обеспечивает благоприятный баланс между ростом и управляемыми просадками,
  2. Снижения зависимости от стратегии с винрейтом в 21,5% (RRR=2,98), которая постоянно снижает результаты.

Трейдер 3: Профиль и ожидаемая доходность

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

Таблица 7: Торговый профиль Трейдера 3

Винрейт (%)
RRR
Ожидаемая доходность
39.64% 2.93
0.556
41.55% 1.58
0.074
52.51% 1.53
0.331
58.29% 1.24
0.305
60.36% 0.43
-0.139

Из этого анализа мы видим, что четыре стратегии генерируют положительную ожидаемую доходность, в то время как только одна — стратегия с винрейтом в 60,4% и коэффициентом RRR=0,43 — имеет отрицательную ожидаемую доходность. Поскольку совокупная ожидаемая доходность по всем стратегиям является положительной, общий торговый план Трейдера 3 имеет высокие шансы принести прибыль.

Трейдер 3: Визуальный анализ кривых эквити

Для оценки эффективности мы смоделировали 100 сделок для каждой стратегии. Визуальный анализ кривых эквити представлен на Рисунке 11:

  • Стратегия отрицательной ожидаемой доходности (винрейт в 60.4% , RRR=0.43): Приводит к неуклонному снижению кривой эквити с течением времени.
  • Стратегии с умеренной положительной ожидаемой доходностью (процент выигрышных сделок 41.6%, 52.5%, 58.3%): Демонстрируют устойчивый рост эквити, хотя и с различной волатильностью.
  • Стратегия с высоким RRR (винрейт в 39.6% , RRR=2.93): Демонстрирует самый сильный рост эквити, но также и самые резкие колебания, с большими свингами вверх и вниз.

sc3_graph1

Рисунок 11: Торговая система Трейдера 3

Для оценки статистической надежности было проведено 100 моделирований для каждой системы. Их эффективность была проанализирована с помощью блочных диаграмм эквити и просадки.

Анализ просадок по Трейдеру 3

Как показано на примерах Трейдера 1 и Трейдера 2, каждая торговая система генерирует уникальный профиль просадки, определяемый взаимосвязью между винрейтом и RRR. Для Трейдера 3 максимальная просадка фиксируется при винрейте в 39,6% и RRR равном 2,93, при этом убытки достигают приблизительно 65% от баланса счета. Напротив, минимальная просадка зафиксирована при винрейте в 60,4% и RRR равном 0,43, когда сокращение эквити ограничено примерно 5%.

Все остальные комбинации винрейта и RRR по Трейдеру 3 попадают в эти два экстремума. Это подтверждает, что эффективность системы тесно связана с взаимодействием вероятности и динамики соотношения риска и прибыли.

sc3dd

Рисунок 12: Проценты просадки для каждой системы по Трейдеру 3

Анализ кривой эквити по Трейдеру 3

При торговом методе Трейдера 3 максимальная кривая эквити достигнута при винрейте в 39,6% и RRR в размере 2,93, при этом баланс счета возрастает приблизительно до 2700 долларов. С другой стороны, минимальная кривая эквити наблюдается при винрейте в 60,4% и RRR равном 0,43, когда эквити опускается примерно до 750 долларов.

Кривые эквити из всех оставшихся комбинаций винрейтов и RRR остаются в пределах этих двух границ. Это подчеркивает изменчивость результатов, зависящих от выбранного баланса между вероятностью успеха и соотношением вознаграждения и риска.

sc3eq

Рисунок 13: Кривые эквити для каждой системы по Трейдеру 3

В таблице 8 представлен краткий обзор рисунков 12 и 13.

Таблица 8: Среднее и медианное значение эквити и медианная просадка для Трейдера 3

Винрейт (%) RRR Среднее эквити ($) Медианное эквити ($) Медианная просадка (%)
39.64% 2.93 $1775.00 $1768.00 45.41%
41.55% 1.58 $1080.00 $1053.00 16.34%
52.51% 1.53 $1387.00 $1363.00 28.93%
58.29% 1.24 $1353.00 $1369.00 28.55%
60.36% 0.43 $861.00 $852.00 16.03%

Ключевая информация:

  • Система с винрейтом в 39,6% обеспечивает самые высокие средние и медианные показатели эквити, но и самые большие просадки.
  • Системы с винрейтом в 52,5% и 58,3% обеспечивают стабильный рост эквити, удерживая при этом просадки ниже 50%, что делает их более устойчивыми.
  • Винрейт в 60,4% снижает эффективность из-за отрицательной ожидаемой доходности.

Комбинированная стратегия управления торговлей --> Трейдер 3

Было проведено 500 прогонов моделирования по методу Монте-Карло, в каждом из которых пять стратегий случайным образом комбинировались на протяжении 100 сделок.

sc3_pie

Рисунок 14: Интегрированный подход к управлению сделками Трейдера 3

Стратегии были распределены следующим образом:

  • Система с винрейтом в 19,4% → 39,6%
  • Система с винрейтом в 19,6% → 41,6%
  • Система с винрейтом в 25,4% → 52,5%
  • Система с винрейтом в 14,4% → 58,3%
  • Система с винрейтом в 21,2% → 60,4%

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

Совокупные результаты этих стратегий, охватывающие как рост эквити, так и характер просадок, представлены на Рисунке 15.

sc3dd500 sc3eq500

Рисунок 15: Результат комбинированной стратегии Трейдера 3

Таблица 9: Комбинированные результаты по Трейдеру 3

Среднее эквити ($)
Медианное эквити ($)
Медианная просадка (%)
 $1291.00 $1263.00 25.48%

Ключевая информация:

  • Просадки: Варьировались от 5% до 65%, отражая экстремумы результатов одной системы. Медианная просадка на 25,48% указывает на умеренный, но управляемый, но контролируемый профиль риска, подчеркивая более эффективный контроль по сравнению с отдельными системами с более высоким уровнем риска.
  • Кривые эквити: Колеблются между минимумом в 400 долларов и максимумом в 2250 долларов. Среднее эквити (1290,77 долларов) и медианное эквити (1263,45 долларов) очень близки, что свидетельствует о стабильной прибыльности во всех моделированиях, при этом результат обусловлен устойчивыми исходами, а не выбросами.
  • Влияние комбинированной стратегии: Хотя максимальное эквити ниже, чем у самой сильной одиночной системы (2700 долларов при 39,6% выигрышных сделок), комбинированный подход сглаживает рост, снижает волатильность и обеспечивает сбалансированный результат, который, тем не менее, превышает 2000 долларов.

Оптимизация стратегии: Трейдер 3

  1. Увеличим долю в системы с винрейтом в 52,5% и 58,3%, которые обеспечивают устойчивый рост эквити с просадками ниже 50%.
  2. Сократим или полностью исключим систему с винрейтом в 60,4%, поскольку ее отрицательная ожидаемая доходность снижает прибыльность.
  3. Сократим стратегию с винрейтом в 39,6% - несмотря на высокую прибыльность, ее экстремальные просадки представляют значительный риск, если не соблюдать строгий размер позиции.


Структура кода

Следующие строки кода служат исходными данными для создания других торговых сценариев. 

# Initial parameters
initial_equity = 1000
risk_per_trade = 0.01  # 1% risk
trades_per_run = 100

# Step 1: Generate 5 random win-rates (10%-95%) and 5 random RRR (0.1 - 5)
np.random.seed(94)
win_rates = np.random.uniform(0.10, 0.80, 5)
rrr = np.random.uniform(0.1, 3, 5)
  • Начальные параметры
    • initial_equity= 1000 :  Устанавливает начальный баланс счета в размере 1000 долларов. Все последующие сделки будут основываться на этом базовом значении, что позволит нам оценивать рост, убытки и просадки.
    • risk_per_trade= 0.01:  Трейдер рискует 1% от эквити на каждую сделку. Если эквити составляет 1000 долларов, то каждая сделка сопряжена с риском в размере 10 долларов. Эта переменная управляет размером позиции и помогает моделировать реалистичное управление капиталом.
    • trades_per_run = 100 :  Каждый запуск по методу Монте-Карло моделирует 100 сделок. Это обеспечивает статистическую выборку, достаточно большую для наблюдения за трендами, чередой успешных сделок или убытков и долгосрочной ожидаемой доходностью.
  • Для исследования различных торговых сред код генерирует случайные показатели винрейтов и RRR.
    • np.random.seed(94):  Устанавливает начальное значение генератора случайных чисел, чтобы моделирование было воспроизводимым. При каждом запуске кода генерируются одни и те же случайные числа, что обеспечивает согласованные результаты. Для возможности изменения случайности или изменения начального значения, этот фрагмент кода следует закомментировать.
    • win_rates = np.random.uniform(0.10, 0.80, 5) : Выдает пять случайных процентов выигрышных сделок в диапазоне от 10% до 80%.
    • rrr = np.random.uniform(0.1, 3, 5) : Генерирует пять случайных соотношений риска и прибыли в диапазоне от 0,1 до 3,0.

Для воспроизведения торговых сценариев, представленных для Трейдера 1, Трейдера 2 и Трейдера 3, читатель может изменить начальное значение, используемое для генерации случайных значений в коде Python. Для каждого сценария использовались следующие начальные значения:

  • Трейдер 1: Начальное значение = 42
  • Трейдер 2: Начальное значение = 30
  • Трейдер 3: Начальное значение = 94

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


Разработка стратегии: Демонстрация случайных уровней тейк‑профита

Для лучшего понимания концепции случайных уровней тейк-профита при сохранении фиксированного стоп-лосса и при неизменных условиях входа, мы разработали простую торговую стратегию, иллюстрирующую эту идею на практике. Эта стратегия сочетает в себе два хорошо известных технических индикатора — Parabolic SAR и индикатор DeMarker — для определения потенциальных точек входа в сделку.

Для большей доступности этот советник (ЕА) разработан как для платформы MetaTrader 4, так и для MetaTrader 5 . В этом разделе мы сосредоточимся на версии MetaTrader 5 и приведем краткое описание структуры ее кода, чтобы помочь читателям понять, как эта концепция реализуется на практике.

// Input parameters
input double   LotSize=0.01;            // Lot Size
input double   pStep = 0.01;            // Psar Step
input double   pMax = 0.1;              // Psar Max
input int      DemPeriod = 14;          // DeMarker Period
input double   Overbought = 0.7;        // Overbought >0.5 & < 1
input int      StopLoss=50;             // Stop Loss (pips)
input int      MinRandomTP = 30;        // MinRandom TakeProfit (pips)
input int      MaxRandomTP=200;         //MaxRandom TakeProfit

double OverSold = 1- Overbought;

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

  • Размер лота: параметр Lotsize определяет объем сделки или сумму капитала, которой трейдер готов рискнуть на каждую позицию. По умолчанию это значение равно 0,01 лота, что делает его подходящим для консервативной торговли или тестирования.
  • pStep и pMax: Параметры pStep и pMax определяют коэффициент ускорения и максимальное ускорение индикатора Parabolic SAR. Эти значения влияют на то, насколько быстро SAR реагирует на изменения цен. Значения по умолчанию составляют 0,01 для pStep и 0,1 для pMax, что обеспечивает сбалансированную чувствительность для стратегий следования за трендом.
  • DemPeriod: Параметр DemPeriod задает период, используемый индикатором DeMarker для расчета своих значений. Настройкой по умолчанию является 14.
  • Уровни перекупленности и перепроданности:  Параметр Перекупленность (Overbought) определяет верхний пороговый уровень для индикатора DeMarker, отмечая потенциальные зоны разворота. Значение следует установить в диапазоне от 0,5 до 1,0. Уровень Перепроданности (Oversold) автоматически рассчитывается как 1 – Перекупленность, что обеспечивает симметричный диапазон между двумя состояниями.
  • Стоп-лосс: Параметр Stoploss задает лимит риска на сделку, выраженный в пипсах. При необходимости система автоматически преобразует его в пункты. По умолчанию стоп-лосс установлен на уровне 50 пипсов, что обеспечивает умеренную защиту от волатильности рынка.
  • MinRandomTP и MaxRandomTP: Параметры MinRandomTP и MaxRandomTP определяют минимальные и максимальные границы для уровней тейк-профита. Эти значения передаются функции, которая генерирует случайный тейк-профит в указанном диапазоне. По умолчанию минимальное значение составляет 30 пипсов, а максимальное — 200 пипсов, что позволяет устанавливать различные целевые показатели прибыли, моделирующие динамично меняющиеся рыночные условия.
//---Time to start and end trade
double startTrade = 1;   //StartTradeTime(hrs)
double endTrade = 22;    // EndTradeTime(hrs)

bool IsTimeToTrade()
  {
   MqlDateTime brokertime_struct;
   TimeCurrent(brokertime_struct);
   double brokertime = brokertime_struct.hour;

   return (brokertime > startTrade && brokertime <= endTrade) ? true : false;
  }

Торговая система работает в рамках определенного временного периода, чтобы гарантировать исполнение сделок только в часы активности рынка. В этой настройке временной интервал устанавливается между 1 и 22 часами торгового дня.

Функция IsTimeToTrade() проверяет, попадает ли текущее рыночное время в заданное торговое окно. Если это условие выполнено, торговые операции разрешены к продолжению; в противном случае система приостанавливает их, чтобы предотвратить входы в неактивные или волатильные часы.

Генерация случайных уровней тейк‑профита

//--- Seed random generator once when EA is loaded
   MathSrand(TimeCurrent());

На этапе инициализации советника запускается генератор случайных чисел с помощью функции TimeCurrent(). Это гарантирует, что при каждом выполнении торгового алгоритма генерируются уникальные случайные значения, особенно для генерации случайных уровней тейк-профита, а не повторяется одна и та же последовательность при каждом запуске.

Привязывая случайные начальные значения к текущему рыночному времени, система вносит естественную изменчивость в результаты сделок, позволяя более реалистично моделировать динамичные торговые условия.

int RandomTakeProfit(int min, int max)
  {
// Normalize MathRand() into 0.0 – 1.0
   double rnd = (double)MathRand() / 32767.0;

// Scale to desired range [min, max]
   int result = (int)MathRound(min + rnd * (max - min));
   Print("TPValues: ",result);
   return result;
  }

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

Для повышения прозрачности и облегчения мониторинга работы в код был включен вызов Print(). Эта функция выводит в терминал случайно сгенерированное значение тейк-профита для каждой открытой сделки. Это позволяет трейдерам отслеживать и анализировать, как различные целевые показатели прибыли влияют на общую эффективность системы.

Определение критериев входа

Торговая система основана на простом, но эффективном подходе, основанном на правилах, который сочетает в себе индикаторы Parabolic SAR и DeMarker для определения сигналов входа.

//--- Sell condition
   bool sellSignal = psar[0] > high[0] ?
                     (demCurrent[0] > Overbought && demPrevious[0] < Overbought) ? true : false
                     : false;

//--- Buy condition
   bool buySignal = psar[0] < low[0] ?
                    (demCurrent[0] < OverSold && demPrevious[0] > OverSold) ? true : false
                    : false;

Условие сделки на продажу:
Сделка на продажу активируется, когда индикатор Parabolic SAR появляется выше максимума свечи, сигнализируя о потенциальном давлении на снижение цены. В то же время индикатор DeMarker должен пересечь зону перекупленности, подтверждая, что рынок может быть перекуплен и готов к коррекции.

Условие сделки на покупку:
И наоборот, сделка на покупку инициируется, когда индикатор Parabolic SAR располагается ниже минимума свечи, указывая на потенциальный восходящий импульс. Индикатор ДеМаркера должен одновременно пересечь зону перепроданности, что указывает на ослабление давления со стороны продавцов и возможность бычьего разворота.

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


Результаты случайного тейк‑профита

Для оценки эффективности стратегии в различных условиях фиксации прибыли был проведен бэктест на валютной паре GBPUSD с использованием таймфрейма H1. В ходе тестирования каждая сделка открывалась с использованием одной и той же настройки входа и фиксированного стоп-лосса, а уровни тейк-профита выбирались случайным образом в пределах заданного диапазона.

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

Результаты тестирования стратегии на исторических данных представлены на рисунках 16 и 17, где показана динамика эквити и распределение сделок по случайно сгенерированным уровням тейк-профита.

randTPval

Рисунок 16: Случайный уровень тейк‑профита при каждом входе

equityGraph

Рисунок 17: График случайного тейк‑профита


Заключение

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

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

Структурированная случайность, такая как волатильностные трейлинг-стопы, с проверенными на исторических данных минимальными порогами прибыли, может систематизировать неопределенность и сохранить прибыль. Затем тестирование по методу Монте-Карло подтверждает эти правила в различных рыночных условиях, превращая случайность в преимущество.

Далее мы расширим эту структуру на стратегии множественного входа и масштабируемое управление позициями.

Перевод с английского произведен MetaQuotes Ltd.
Оригинальная статья: https://www.mql5.com/en/articles/19211

Прикрепленные файлы |
RandomTP.mq4 (10.62 KB)
RandomTP.mq5 (13.88 KB)
Как реализовать R/S-анализ и индикатор Хёрста в MQL5 Как реализовать R/S-анализ и индикатор Хёрста в MQL5
Индикатор показателя Хёрста для MQL5 реализован на основе R/S-анализа с OLS-регрессией в log-log пространстве. Теоретическая опора — результаты Gatheral–Jaisson–Rosenbaum (2014), согласно которым волатильность — дробное броуновское движение с H ≈ 0.10. Индикатор оценивает H в скользящем окне, выделяет антиперсистентный (H < 0.3), нейтральный и трендовый (H > 0.5) режимы, окрашивает линию и подаёт алерт при смене режима, помогая выбирать тип стратегии и управлять риском.
Построение моделей волатильности в MQL5 (Часть II): Реализация моделей GJR-GARCH и TARCH Построение моделей волатильности в MQL5 (Часть II): Реализация моделей GJR-GARCH и TARCH
В статье реализуются GJR-GARCH и TARCH в библиотеке волатильности MQL5 и объясняется, почему учёт асимметрии даёт преимущества по сравнению со стандартными ARCH/GARCH. Рассматриваются формулировка моделей, параметризация и использование через производные классы и скрипты. Читатели получают примеры кода для калибровки и одношагового прогнозирования на реальных данных для управления рисками и диагностики моделей.
Как построить 29-парный портфель с L1-фильтром и VaR-распределением лотов Как построить 29-парный портфель с L1-фильтром и VaR-распределением лотов
Разбирается практическое применение L1 Trend Filter для очистки шума и формирования структурных признаков, совместимых с live-торговлей. Показан полный цикл: H1-данные 29 инструментов из MetaTrader 5, каузальная фильтрация, CatBoost на горизонте трёх L1-баров, честный walk-forward и распределение лотов по VaR. Читатель получает воспроизводимый кодовый конвейер и методику портфельной оценки.
Архитектура машинного обучения для MetaTrader 5 (Часть 14): Моделирование транзакционных издержек для разметки методом тройного барьера в MQL5 Архитектура машинного обучения для MetaTrader 5 (Часть 14): Моделирование транзакционных издержек для разметки методом тройного барьера в MQL5
В статье заданные вручную предположения об издержках в разметке методом тройного барьера заменяются измеренными данными. Скрипт MQL5 собирает у брокера распределение спреда, ставки свопа и свойства символа, а модель Python преобразует эти данные в min_ret, откалиброванный с учётом условий брокера, который можно передать в get_events(). После этого метки учитывают фактические издержки полного цикла сделки для выбранного инструмента и периода удержания позиции.