Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Индикаторы

Turtle Breakout Indicator Tested on Gold: Profitable in 2025 and 2026 (70) - индикатор для MetaTrader 5

Ali Akbar
Ali Akbar
Hi, I'm Ali. 24 years old, trading for around 5 years, and developing MQL5/MQL4 tools. I mainly work on automating manual strategies, fixing broken EA logic, and building clean indicators. I care more about clean architecture and proper risk management than over-complicated code. Always down to talk
| Russian English 中文 Español Deutsch 日本語 Português 한국어 Français Italiano Türkçe
Просмотров:
40
Рейтинг:
(2)
Опубликован:
MQL5 Фриланс Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Лаборатория выхода при прорыве: прорывы по индикатору Дончиана с тремя вариантами выхода, отображаемыми рядом

Отмечает прорывы канала Дончиана в стиле «Черепахи» и за каждым из них следует сразу три уровня выхода: скользящий стоп ATR, канал выхода «Черепахи» и фиксированная цель. На панели отображается, какой уровень выхода принес наибольшую прибыль по вашему инструменту, в R, включая спред. Без перерисовки, с буферами для советника.

Почему три варианта выхода

Успех или провал систем прорыва зависит от выхода. Вход прост, и все с этим согласны: цена закрывается выше максимального максимума последних 20 баров — покупаете. А вот дальше начинаются споры. Использовать скользящий стоп по ATR? Применить 10-барный канал выхода «Черепах»? Взять фиксированную прибыль 2R и закрыть позицию?

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

Как определяется прорыв

  1. Канал входа — это максимальный максимум и минимальный минимум предыдущих InpEntryBars баров (по умолчанию 20, система «Черепах» № 1).
  2. Сигнал на покупку — это закрытый бар, который закрылся выше верхней границы канала, в то время как предыдущий бар этого не сделал. Сигнал на продажу — это зеркальное отражение. Учитывается только первое закрытие за пределами канала, поэтому сильный тренд не генерирует стрелку на каждом баре.
  3. Торговая операция начинается при открытии следующего бара. Начальный стоп-лосс устанавливается на расстоянии, равном InpStopATR, умноженному на ATR (2,0 × ATR(20), «2N» по системе «Черепах»).
  4. Дополнительный фильтр тренда отбирает только прорывы в направлении 200-периодовой EMA. По умолчанию он отключен.

Три варианта выхода

  • A. Трейлинг по ATR. Стоп-лосс следует за лучшей ценой с момента входа на расстоянии, равном InpTrailATR, умноженному на ATR (по умолчанию 3,0), и никогда не смещается назад.
  • B. Канал выхода «Черепах». Стоп-лосс следует за самым низким минимумом из последних InpExitBars баров для длинной позиции (по умолчанию 10, Система 1) и за самым высоким максимумом для короткой позиции.
  • C. Фиксированная цель. Тейк-профит на уровне InpTargetR, умноженном на начальный риск (по умолчанию 2R), с использованием начального стопа.

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

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

Что показывает панель

  • Количество прорывов, разбитое на длинные и короткие позиции, а также количество тех, которые все еще открыты.
  • Для каждого выхода: закрытые сделки, процент выигрышей, коэффициент прибыльности, среднее значение R и сумма по R.
  • Для выхода, который вы выбираете для отображения (InpDrawExit): суммы по длинным и коротким позициям отдельно, чтобы вы могли увидеть, не определяет ли одна из сторон результат.

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

Результаты тестирования на золоте

XAUUSD, данные MetaQuotes-Demo, настройки по умолчанию. Тест за 2025 год охватывает 360 дней до 31 декабря 2025 года. Тест за 2026 год охватывает 260 дней до 18 сентября 2026 года.

XAUUSD Сделки Процент выигрышных сделок PF Сумма
H4 2025, выход A (ATR-трейл) 129 43,4 % 1,45 +23,08R
H4 2025, выход B (10-барный канал) 129 41,1 % 2,34 +66,20R
H4 2025, выход C (цель 2R) 129 45,7 % 1,68 +47,83R
H4 2026, выход A 76 35,5 % 1,10 +3,46R
H4 2026, выход B 76 35,5 % 1,70 +22,35R
H4 2026, выход C 75 38,7 % 1,26 +11,99R
1-е полугодие 2025 г., выход A 465 37,6 % 1,32 +70,32 руб.
1-е полугодие 2025 г., выход B 465 37,8 % 1,23 +51,18R
1-е полугодие 2025 г., выход C 465 37,8 % 1,21 +60,32R
1-е полугодие 2026 г., выход A 270 39,6 % 1,21 +25,14R
1-е полугодие 2026 г., выход B 270 40,4 % 1,29 +35,15R
1-е полугодие 2026 г., выход C 269 38,3 % 1,23 +39,06R

Все двенадцать показателей положительны. На H4 канал выхода «Черепаха» был лучшим вариантом выхода в обоих годах, а трейл ATR — самым слабым. На H1 явного победителя не было: в 2025 году лидировал трейл, а в 2026 году — фиксированная цель. Именно в этом и заключается смысл существования панели. «Лучший выход» менялся в зависимости от таймфрейма и года даже для одного и того же инструмента.

А теперь о том, что важно учесть, прежде чем кто-то начнёт воодушевляться. В 2025 году золото значительно выросло в цене, и это отражено в разбивке. При выходе B на H4 99 длинных позиций принесли +79,4R, а 30 коротких позиций принесли убыток -13,2R. В 2026 году золото колебалось в обе стороны, и обе стороны оказались в плюсе: 42 длинных позиции принесли +14,9R, а 34 коротких позиции — +7,5R.

Чтобы понять, насколько это связано с трендом золота, я применил те же настройки по умолчанию к трём валютным парам на графике H4 за тот же период 2026 года:

H4 2026 Сумма выхода A (PF) Сумма по выходу B (PF) Сумма выхода C (PF)
EURUSD -11,74R (0,68) -3,86R (0,89) -5,97R (0,88)
GBPUSD -9,21R (0,77) -3,15R (0,91) +6,90R (1,13)
USDJPY +1,30R (1,03) +0,73R (1,02) +3,03R (1,06)

От нулевого до отрицательного. Для прорывов нужен рынок с трендом, и в этот период у золота он был, а у этих пар — в основном нет. Поэтому я интерпретирую данные по золоту как «прорывы сработали, пока у золота был тренд», а не как доказательство того, что они всегда будут срабатывать.

Рис. 1. XAUUSD, график H4, конец июля —середина сентября 2026 года: стрелки прорыва, канал входа и результат каждой сделки при выходе B

Рис. 2. Панель для XAUUSD H4 в 2025 и 2026 годах с нанесённой точкой выхода B

Входные данные

Входные данные По умолчанию Что делает
InpEntryBars 20 Длина канала входа в барах
InpExitBars 10 Длина канала выхода для выхода B
InpATRPeriod 20 Период ATR
InpStopATR 2,0 Начальный стоп, кратные ATR
InpTrailATR 3,0 Расстояние следования, кратное ATR
InpTargetR 2,0 Выход C: тейк-профит, кратные R
InpUseTrend false Сохранять только прорывы в сторону тренда EMA
InpTrendEMA 200 Период EMA тренда, таймфрейм графика
InpDrawExit A. Трейлинг по ATR Точка выхода, нарисованная на графике и отправленная в буферы с 6 по 9
InpDaysBack 365 Количество дней истории в отчёте
InpDrawDays 60 Количество дней, в течение которых были нарисованы торговые линии
InpShowPanel true Показать панель
InpPanelCorner слева вверху Угол панели
InpAlertPopup true Всплывающее предупреждение о новом прорыве
InpAlertPush false Push-уведомление о новом прорыве

Для классической системы Turtle System 2 установите InpEntryBars равным 55, а InpExitBars — 20.

Использование в советнике

Прорыв фиксируется на свече, закрывшейся за пределами канала, поэтому советник считывает его со сдвигом 1 после закрытия этой свечи. Стрелки сохраняются по всей загруженной истории, а не только в пределах окна, в котором ведется подсчёт. Я проверил в тестере стратегий, что сигналы, которые советник видел в реальном времени, точно совпадали с сигналами в буферах по итогам теста: 473 из 473 на H1 и 131 из 131 на H4 для золота в 2025 году.

Буфер Содержимое
0 Покупка при прорыве, значение — запланированная точка входа (цена открытия следующего бара), в противном случае — EMPTY_VALUE
1 Продажа при прорыве, тот же формат
2, 3 Максимум и минимум канала входа
4 Стоп-лосс по последней сделке ниже нарисованной линии выхода
5 Начальный стоп на баре прорыва
6–9 Таблица результатов нарисованного выхода на последнем закрытом баре: закрытые сделки, выигрыши, сумма в R, сумма убытков в R
int      handle;
datetime lastBar = 0;

int OnInit()
  {
   handle = iCustom(_Symbol, PERIOD_H4, "BreakoutExitLab");
   return(handle == INVALID_HANDLE ? INIT_FAILED : INIT_SUCCEEDED);
  }

void OnTick()
  {
   //--- Прорывы подтверждаются по закрытым свечам, поэтому проверку следует выполнять один раз при появлении каждой новой свечи
   datetime bar = iTime(_Symbol, PERIOD_H4, 0);
   if(bar == lastBar)
      return;
   lastBar = bar;

   double buy[1], sell[1], stop[1];
   if(CopyBuffer(handle, 0, 1, 1, buy) < 1 || CopyBuffer(handle, 1, 1, 1, sell) < 1 ||
      CopyBuffer(handle, 5, 1, 1, stop) < 1)
      return;

   if(buy[0] != EMPTY_VALUE)
      Print("Breakout buy, initial stop ", stop[0]);
   if(sell[0] != EMPTY_VALUE)
      Print("Breakout sell, initial stop ", stop[0]);
  }

У индикатора намеренно нет групп входных данных. MQL5 считает каждую «группу входных данных» параметром функции iCustom(), и каждое значение после неё сдвигается на одну позицию.

Ещё один небольшой нюанс, о котором я узнал при создании панели: метка графика может содержать не более 63 символов. Первые строки моей панели были длиннее, и MetaTrader обрезал их посередине числа, поэтому теперь строки делаются короче.

Ограничения

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

Али Раджпут


Перевод с английского произведен MetaQuotes Ltd.
Оригинальная публикация: https://www.mql5.com/en/code/77687

ATS Confirmed Swings - non-repainting swing highs and lows ATS Confirmed Swings - non-repainting swing highs and lows

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

ATR Trailing Stop (Pine Script Port) ATR Trailing Stop (Pine Script Port)

Порт индикатора трейлинг-стопа ATR на языке Pine Script для MQL5: nLoss = коэффициент ATR; стоп-приказ смещается ниже цены в восходящем тренде и выше цены в нисходящем тренде, а также переключается (с появлением стрелки «купить»/«продать»), когда цена закрывается за ним. Включает эталонный порт на Python и тест на соответствие, который проверяет, что оба варианта согласуются с дословной, бар за баром, транскрипцией семантики Pine (история na/nz/series).

YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя

Скрипт рисует уровни Рудолфа Акселя

YURAZ_MCCH YURAZ_MCCH

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