Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 21
- Опубликован:
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Пользовательская средняя
CustomAverage — это автономный индикатор тренда, не перерисовывающийся, построенный на основе идеи двойного усреднения: быстрое базовое среднее вычисляется непосредственно по цене, а затем к нему применяется второй, независимый этап сглаживания. В результате получается единая адаптивная линия, которая реагирует на цену быстрее, чем одна скользящая средняя с длинным периодом, но при этом ведет себя заметно спокойнее, чем одна скользящая средняя с коротким периодом.
Идея, лежащая в основе индикатора
Простая скользящая средняя вынуждает идти на компромисс между оперативностью и шумом: сократите период — она будет плотно следовать за ценой, но подвергаться резким колебаниям в диапазонах; удлините — она будет отставать от каждого реального разворота. CustomAverage позволяет избежать этого единственного компромисса, разделив задачу на два независимых фильтра:
- Этап 1 — Базовое среднее. К выбранному ценовому ряду (цена закрытия, открытия, медиана, типичная цена, взвешенная цена и т. д.) применяется скользящее среднее (SMA, EMA, SMMA или LWMA — на выбор). На этом этапе осуществляется основная работа по следованию за трендом.
- Этап 2 — Сглаживание. Вторая скользящая средняя (опять же, любой из четырёх классических методов) применяется не к исходной цене, а к результату этапа 1. Поскольку она фильтрует уже усреднённый ряд данных, достаточно сравнительно короткого периода сглаживания, чтобы устранить остаточные колебания, не добавляя при этом значительного дополнительного запаздывания.
Каждое значение рассчитывается один раз, слева направо, строго на основе баров, которые уже закрылись по отношению к обрабатываемому бару — индикатор никогда не заглядывает в будущее и никогда не перерисовывает исторические значения. При каждом новом тике код пересчитывает только те бары, которые изменились (rates_total / prev_calculated), поэтому он работает быстро даже при большом объеме исторических данных и на низких таймфреймах.
Как интерпретировать показатель
- Основная линия представляет собой итоговое значение, усредненное дважды. Она меняет цвет в зависимости от собственного наклона: один цвет — когда линия растёт от бара к бару, другой — когда она падает, — благодаря чему направление тренда видно с первого взгляда без использования отдельного осциллятора.
- Бычья стрелка наносится под свечу, на которой цена закрывается выше среднего значения после того, как на предыдущей свече она закрылась ниже него — простой, классический длинный сигнал на пересечении цены и среднего значения.
- Медвежья стрелка наносится над свечой, на которой цена закрывается ниже среднего значения после того, как на предыдущей свече она закрылась выше него — это зеркальный сигнал на открытие короткой позиции.
- Небольшая текстовая надпись в углу графика показывает текущее числовое значение среднего, обновляемое при каждом расчете.
- Индикатор сам по себе не генерирует торговых рекомендаций — рассматривайте линию как динамический фильтр поддержки/сопротивления/тренда, а стрелки — как временные ориентиры, которые следует сочетать с вашими собственными правилами входа, выхода и управления рисками.

Рис. 1. Индикатор CustomAverage, нанесённый на ценовой график (чёрно-белый, в соответствии с рекомендациями по изображениям Code Base).
Внешние переменные (входные данные)
| Переменная | Значение по умолчанию | Описание |
|---|---|---|
| InpMAPeriod | 14 | Период расчета базового среднего значения этапа 1. |
| InpMAMethod | MODE_EMA | Метод усреднения для этапа 1: SMA, EMA, SMMA или LWMA. |
| InpAppliedPrice | PRICE_CLOSE | Ряды цен, подаваемые на этап 1 (цена закрытия, открытия, максимальная, минимальная, медиана, типичная или взвешенная). |
| InpSmoothPeriod | 5 | Период сглаживания этапа 2, применяемого к результату этапа 1. Значение 0 или 1 отключает этап 2, и индикатор ведет себя как простое одноэтапное среднее. |
| InpSmoothMethod | MODE_SMMA | Метод усреднения для этапа 2: SMA, EMA, SMMA или LWMA. |
| InpShowSignals | true | Включает/отключает стрелки пересечения цены и среднего значения. |
| InpArrowUpCode | 233 | Код символа Wingdings, используемый для стрелки бычьего пересечения. |
| InpArrowDownCode | 234 | Код символа Wingdings, используемый для стрелки «медвежьего» пересечения. |
| InpArrowUpColor | clrLime | Цвет стрелки бычьего пересечения. |
| InpArrowDownColor | clrRed | Цвет стрелки пересечения при нисходящем тренде. |
| InpColorUp | clrDodgerBlue | Цвет линии при росте скользящего среднего. |
| InpColorDown | clrOrangeRed | Цвет линии при снижении среднего значения. |
| InpLineWidth | 2 | Ширина отображаемой линии в пикселях. |
| InpShowLabel | true | Отображает/скрывает текстовую метку на графике с текущим числовым значением среднего значения. |
| InpLabelCorner | CORNER_RIGHT_UPPER | Угол диаграммы, используемый для привязки метки значения. |
Рекомендуемое использование
- Работает с любыми инструментами и на любых таймфреймах; это индикатор, построенный исключительно на ценовых данных, и он не предъявляет никаких требований к типу счета (одинаково работает на счетах с неттингом и хеджированием, как на реальных, так и на демо-счетах).
- Базовая настройка по умолчанию — 14/EMA со ступенью сглаживания 5/SMMA — является сбалансированной отправной точкой для графиков H1–H4. Для более быстрых внутридневных графиков (M1–M15) следует рассмотреть возможность сокращения обоих периодов; для свинг-трейдинга или позиционной торговли на D1–W1 увеличение InpMAPeriod снизит чувствительность к шуму.
- Установка параметра InpSmoothPeriod в 0 или 1 превращает индикатор в обычное одноступенчатое скользящее среднее, что полезно для непосредственного сравнения эффекта второй ступени фильтрации на одном и том же графике.
- Как и любой инструмент на основе скользящего среднего, эта линия по своей конструкции отстает от цены и лучше всего работает в качестве фильтра тренда или динамической ориентирной линии поддержки/сопротивления, а не как самостоятельный сигнал входа; используйте стрелки пересечения в сочетании с более широким торговым планом (структура, волатильность, управление рисками), а не торгуйте по ним изолированно.
- Индикатор строится в основном окне графика и создает один объект-метку графика, который он автоматически удаляет при деинициализации (смена таймфрейма, удаление индикатора, перезагрузка шаблона и т. д.), поэтому не оставляет после себя «сиротских» объектов графика.
Перевод с английского произведен MetaQuotes Ltd.
Оригинальная публикация: https://www.mql5.com/en/code/75951
Broker Spec Inspector
Выводит на экран скрытые ограничения контракта, при которых ордера отклоняются без предупреждения: уровень стопа, уровень заморозки, минимальный/шаговый/максимальный лот, размер тика и его стоимость, тип спреда, режим исполнения, свопы, а также маржа, необходимая для открытия минимального лота, в соотношении к вашей свободной марже.
Session Opening Range Breakout EA
Советник, который определяет максимум и минимум заданного окна открытия сессии, а затем открывает сделки при подтверждённом прорыве этого диапазона с учётом размера позиции, зависящего от уровня риска, и ограничением в одну сделку за сессию.
YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя
Скрипт рисует уровни Рудолфа Акселя
YURAZ_MCCH
Индикатор рассчитывает % роста или падения относительно CLOSE, написан с применением ООП, и легко интегрируется в любой советник или иной индикатор.