KS Zigzag Channel
- Индикаторы
-
Kulvinder Singh
KULVINDER SINGH
MQL5 Developer | Python Developer | Forex Trader | Software Product Creator
📞 +91-9996327555 | ✉ Kulvinder99@gmail.com
🌐 smarttradingpip.com | advocateprosuit.in | cctvpeoplecounting.com - Версия: 1.20
- Обновлено: 21 июня 2026
- Активации: 5
Индикатор KS ZigZag Channels — это пользовательский индикатор для платформы MetaTrader 5 (MQL5).
Он строит опорные линии в стиле «зигзаг», соединяющие значимые локальные максимумы и минимумы, а также формирует вокруг каждого сегмента зигзага границы канала (верхнюю и нижнюю полосы отклонения). Цель индикатора — отфильтровать рыночный шум, выделить структуру основного тренда и определить динамические зоны поддержки/сопротивления, основанные на историческом отклонении цены от главной линии зигзага.
Основная логика и метод определения
В отличие от классических индикаторов ZigZag, основанных на процентных или пунктовых значениях, данная версия использует подход «скользящего окна» (размер окна задается параметром Length; по умолчанию = 100 баров):
Индикатор отслеживает состояние конечного автомата (буфер g_os[]: 0 = поиск потенциального максимума / восходящего сегмента; 1 = поиск потенциального минимума / нисходящего сегмента).
Новый локальный минимум (опорная точка) подтверждается в тот момент, когда цена закрытия бара, отстоящего на Length периодов назад, опускается ниже минимальной цены закрытия за последние Length баров (при условии, что ранее индикатор находился в состоянии «роста»).
Новый локальный максимум (опорная точка) подтверждается в тот момент, когда цена закрытия бара, отстоящего на Length периодов назад, поднимается выше максимальной цены закрытия за последние Length баров (при условии, что ранее индикатор находился в состоянии «падения»).
Такой подход приводит к формированию ретроспективных опорных точек (эффект «перерисовки» / backpainting) — это означает, что положение исторических опорных точек может смещаться по мере поступления новых рыночных данных.
Что отображается на графике
Для каждого подтвержденного сегмента зигзага (участка между двумя последовательными опорными точками противоположного типа) на график выводятся следующие элементы:
Срединная линия (сплошная; по умолчанию оранжевая = MidColor): соединяет цену предыдущей опорной точки с ценой текущей опорной точки. Это и есть основная линия ZigZag.
Верхняя граница (пунктирная; по умолчанию красная = UpperColor): параллельная линия, смещенная вверх на величину максимального отклонения, зафиксированного в пределах данного сегмента. Эта величина соответствует максимальному расстоянию от максимума или цены закрытия любого бара в сегменте до интерполированной срединной линии.
Нижняя граница (пунктирная; по умолчанию синяя = LowerColor): параллельная линия, смещенная вниз на величину максимального отклонения в нижнюю сторону. Эта величина соответствует максимальному расстоянию от интерполированной срединной линии до минимума или цены закрытия любого бара в сегменте.
Эти три линии в совокупности образуют канал, огибающий каждый исторический сегмент зигзага.
Небольшие кружки или стрелки (цвета dodger blue) отмечают точное местоположение опорных точек (максимумов/минимумов, использованных при построении).
При значении параметра ShowLabels = true рядом с опорными точками отображаются дополнительные текстовые метки с указанием цены. Последний сегмент — функция расширения
Когда параметр ExtendLast установлен на true (значение по умолчанию), индикатор продлевает самый последний канал вперед — вплоть до текущего бара:
Он берет за основу (точку привязки) последний подтвержденный разворотный пункт (pivot), направление которого совпадает с направлением текущего ценового движения (волны).
На основе этой точки привязки индикатор выполняет линейную интерполяцию цен: от цены разворотного пункта до цены закрытия текущего бара.
Затем он рассчитывает максимальное отклонение вверх и вниз, зафиксированное на всех барах текущей волны на данный момент.
Отображает продленные среднюю, верхнюю и нижнюю линии (с префиксом «KSZzE_»), проецируя их вправо (параметр ray = true).
В результате формируется динамический канал, ориентированный на будущее, который трейдеры часто используют для прогнозирования потенциальных уровней поддержки/сопротивления или зон разворота в режиме реального времени.
Основные параметры и настройки
Length (100): период анализа (глубина истории) — чем выше значение, тем меньше разворотных точек, но тем они значительнее.
ExtendLast (true): проецировать ли текущую, еще не завершенную волну вперед.
ShowExt (true): отображать ли линии верхнего/нижнего отклонения (собственно, сами «каналы»).
ShowLabels (true): отображать ли ценовые метки в точках разворота.
Три настраиваемых цвета для верхней, средней и нижней линий.
Типичные сценарии использования
Определение основной структуры колебаний рынка (свингов) и направления тренда.
Использование каналов в качестве динамических зон поддержки/сопротивления (цена часто реагирует вблизи верхней или нижней границ канала).
Более удобное применение уровней Фибоначчи, гармонических паттернов, дополнительных каналов или других графических инструментов, опираясь на четко обозначенные точки разворота.
Выявление потенциальных разворотов в момент, когда цена пробивает продленный канал или отскакивает от него в зоне текущего (живого) сегмента.
Примечание: Поскольку индикатор работает ретроспективно и пересчитывает точки разворота, исторические линии могут незначительно смещаться (перерисовываться) — это типичное поведение для большинства индикаторов семейства ZigZag. Для принятия решений о входе в сделку в реальном времени рекомендуется использовать данный индикатор в сочетании с другими подтверждающими инструментами, а не изолированно.
Он строит опорные линии в стиле «зигзаг», соединяющие значимые локальные максимумы и минимумы, а также формирует вокруг каждого сегмента зигзага границы канала (верхнюю и нижнюю полосы отклонения). Цель индикатора — отфильтровать рыночный шум, выделить структуру основного тренда и определить динамические зоны поддержки/сопротивления, основанные на историческом отклонении цены от главной линии зигзага.
Основная логика и метод определения
В отличие от классических индикаторов ZigZag, основанных на процентных или пунктовых значениях, данная версия использует подход «скользящего окна» (размер окна задается параметром Length; по умолчанию = 100 баров):
Индикатор отслеживает состояние конечного автомата (буфер g_os[]: 0 = поиск потенциального максимума / восходящего сегмента; 1 = поиск потенциального минимума / нисходящего сегмента).
Новый локальный минимум (опорная точка) подтверждается в тот момент, когда цена закрытия бара, отстоящего на Length периодов назад, опускается ниже минимальной цены закрытия за последние Length баров (при условии, что ранее индикатор находился в состоянии «роста»).
Новый локальный максимум (опорная точка) подтверждается в тот момент, когда цена закрытия бара, отстоящего на Length периодов назад, поднимается выше максимальной цены закрытия за последние Length баров (при условии, что ранее индикатор находился в состоянии «падения»).
Такой подход приводит к формированию ретроспективных опорных точек (эффект «перерисовки» / backpainting) — это означает, что положение исторических опорных точек может смещаться по мере поступления новых рыночных данных.
Что отображается на графике
Для каждого подтвержденного сегмента зигзага (участка между двумя последовательными опорными точками противоположного типа) на график выводятся следующие элементы:
Срединная линия (сплошная; по умолчанию оранжевая = MidColor): соединяет цену предыдущей опорной точки с ценой текущей опорной точки. Это и есть основная линия ZigZag.
Верхняя граница (пунктирная; по умолчанию красная = UpperColor): параллельная линия, смещенная вверх на величину максимального отклонения, зафиксированного в пределах данного сегмента. Эта величина соответствует максимальному расстоянию от максимума или цены закрытия любого бара в сегменте до интерполированной срединной линии.
Нижняя граница (пунктирная; по умолчанию синяя = LowerColor): параллельная линия, смещенная вниз на величину максимального отклонения в нижнюю сторону. Эта величина соответствует максимальному расстоянию от интерполированной срединной линии до минимума или цены закрытия любого бара в сегменте.
Эти три линии в совокупности образуют канал, огибающий каждый исторический сегмент зигзага.
Небольшие кружки или стрелки (цвета dodger blue) отмечают точное местоположение опорных точек (максимумов/минимумов, использованных при построении).
При значении параметра ShowLabels = true рядом с опорными точками отображаются дополнительные текстовые метки с указанием цены. Последний сегмент — функция расширения
Когда параметр ExtendLast установлен на true (значение по умолчанию), индикатор продлевает самый последний канал вперед — вплоть до текущего бара:
Он берет за основу (точку привязки) последний подтвержденный разворотный пункт (pivot), направление которого совпадает с направлением текущего ценового движения (волны).
На основе этой точки привязки индикатор выполняет линейную интерполяцию цен: от цены разворотного пункта до цены закрытия текущего бара.
Затем он рассчитывает максимальное отклонение вверх и вниз, зафиксированное на всех барах текущей волны на данный момент.
Отображает продленные среднюю, верхнюю и нижнюю линии (с префиксом «KSZzE_»), проецируя их вправо (параметр ray = true).
В результате формируется динамический канал, ориентированный на будущее, который трейдеры часто используют для прогнозирования потенциальных уровней поддержки/сопротивления или зон разворота в режиме реального времени.
Основные параметры и настройки
Length (100): период анализа (глубина истории) — чем выше значение, тем меньше разворотных точек, но тем они значительнее.
ExtendLast (true): проецировать ли текущую, еще не завершенную волну вперед.
ShowExt (true): отображать ли линии верхнего/нижнего отклонения (собственно, сами «каналы»).
ShowLabels (true): отображать ли ценовые метки в точках разворота.
Три настраиваемых цвета для верхней, средней и нижней линий.
Типичные сценарии использования
Определение основной структуры колебаний рынка (свингов) и направления тренда.
Использование каналов в качестве динамических зон поддержки/сопротивления (цена часто реагирует вблизи верхней или нижней границ канала).
Более удобное применение уровней Фибоначчи, гармонических паттернов, дополнительных каналов или других графических инструментов, опираясь на четко обозначенные точки разворота.
Выявление потенциальных разворотов в момент, когда цена пробивает продленный канал или отскакивает от него в зоне текущего (живого) сегмента.
Примечание: Поскольку индикатор работает ретроспективно и пересчитывает точки разворота, исторические линии могут незначительно смещаться (перерисовываться) — это типичное поведение для большинства индикаторов семейства ZigZag. Для принятия решений о входе в сделку в реальном времени рекомендуется использовать данный индикатор в сочетании с другими подтверждающими инструментами, а не изолированно.
