Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 72
- Рейтинг:
- Опубликован:
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
PrecisionSniper: Сигнальный индикатор с несколькими стечениями сигналов и встроенной панелью для бэктестов
PrecisionSniper - это комплексный индикатор для MetaTrader 5, предназначенный для выявления высоковероятных возможностей для длинных и коротких сделок путем объединения множества технических условий в единую взвешенную систему оценок. Вместо того чтобы полагаться на какой-то один индикатор, PrecisionSniper оценивает до восьми независимых условий на бар, присваивает каждому из них вес и подает сигнал только тогда, когда суммарный показатель соответствует или превышает настраиваемый порог. В результате мы получаем сигнальный механизм с большим количеством фильтров, который значительно снижает уровень шума и фокусирует внимание трейдера на сетапах, имеющих сильное многофакторное подтверждение.
В основе индикатора лежат три экспоненциальные скользящие средние (EMA Fast, EMA Slow и EMA Trend), которые поддерживаются RSI momentum, MACD histogram direction, ADX trend strength, VWAP position, tick volume surge, а также опциональный фильтр смещения на более высоких временных интервалах (HTF). Когда фильтр HTF bias включен, он имеет самый высокий вес в системе скоринга, что делает его особенно эффективным для трейдеров, которые хотят, чтобы их входы совпадали с трендом на более крупном таймфрейме. Сигналы оцениваются как A+, A, B или C в зависимости от общего балла, а входной фильтр Grade Filter позволяет пользователю отображать только те сигналы, которые он хочет торговать.
PrecisionSniper включает в себя богатый набор встроенных функций, помимо генерации сигналов: автоматически рисуемые на графике уровни входа, стоп-лосса и трех тейк-профитов, адаптивный трейлинг-стоп, который переносится вперед по мере достижения каждого TP, стоп-лосс с учетом структуры, который привязывается к недавним максимумам или минимумам свинга вместо фиксированного значения ATR, и полнофункциональная панель на графике, которая отображает рыночный контекст в реальном времени наряду с резюме результатов бэктестов, рассчитанных непосредственно на основе исторических ценовых данных. Приборная панель поддерживает три режима бэктестирования: вся загруженная история, фиксированный диапазон дат и скользящее окно из последних N баров.
Девять торговых пресетов (Auto, Scalping, Aggressive, Default, Conservative, Swing, Crypto, Gold, Custom) позволяют мгновенно перенастроить периоды EMA, длину RSI, длину ATR, минимальный счет и множитель SL для различных инструментов и таймфреймов. Автоматический режим автоматически выбирает подходящий пресет на основе текущего таймфрейма графика.
Входные параметры индикатора
В таблице ниже представлены все входные параметры, их значения по умолчанию и функции.
| Параметр | По умолчанию | Описание |
|---|---|---|
| Предустановка | По умолчанию | Выбор встроенного профиля конфигурации. Варианты: Auto, Scalping, Aggressive, Default, Conservative, Swing, Crypto, Gold, Custom. Auto определяет соответствующую предустановку на основе текущего таймфрейма графика. Пользовательский использует входы с префиксом C_, указанные ниже. |
| Таймфрейм HTF | PERIOD_CURRENT (выкл.) | Фильтр смещения более высокого таймфрейма. Если установлено значение для любого таймфрейма, кроме PERIOD_CURRENT, индикатор добавляет бонус в 2 пункта, когда выравнивание HTF EMA совпадает с направлением сигнала. Для отключения установите значение PERIOD_CURRENT. |
| C_EmaFast | 9 | [Только пользовательские предустановки] Период для линии быстрой ЕМА (синяя). Используется при проверке пересечения EMA и расстояния между ними. |
| C_EmaSlow | 21 | [Только пользовательская предустановка] Период для медленной линии EMA (оранжевый). Разрыв между быстрой и медленной линиями должен превышать 0,15x ATR, чтобы считаться действительным сигналом разделения EMA. |
| C_EmaTrend | 55 | [Только пользовательская предустановка] Период для линии Trend EMA (серая пунктирная). Цена должна быть выше (для лонгов) или ниже (для шортов) этой EMA не менее чем на 0,1x ATR, чтобы определить точку трендовой позиции. |
| C_RSI | 13 | [Только пользовательская предустановка] Период RSI. Начисляет 1,5 балла за лонги, если RSI находится между 50 и 70 и растет; начисляет 1,5 балла за шорты, если RSI находится между 30 и 50 и падает. |
| C_ATR | 14 | [Только пользовательские предустановки] Период ATR. ATR используется для определения размера SL, расчета уровня TP, порогов разделения EMA, порогов положения тренда и классификации режимов волатильности. |
| C_MinScore | 5 | [Только для пользовательских предустановок] Минимальный общий балл, необходимый для срабатывания сигнала. Повысьте это значение, чтобы отфильтровать только самые надежные сетапы. Максимальный теоретический балл - 10 (или 9 без включения HTF). |
| C_SLMult | 1.5 | [Только пользовательские предустановки] Множитель ATR для расстояния Stop Loss, когда отключен Structure-Based SL. Эффективный SL = цена входа +/- (ATR x SL Multiplier). |
| TP1 Risk:Reward | 1.0 | Соотношение риска и вознаграждения для тейк-профита 1. Расстояние TP1 = расстояние риска x TP1_RR. Если включен трейлинг-стоп, достижение TP1 перемещает трейлинг к цене входа (безубыток). |
| TP2 Риск:Вознаграждение | 2.0 | Соотношение риска и вознаграждения для тейк-профита 2. Достижение TP2 перемещает трейлинг-стоп на уровень TP1, если трейлинг включен. |
| TP3 Риск:Вознаграждение | 3.0 | Соотношение риска и вознаграждения для тейк-профита 3. Достижение TP3 перемещает трейлинг-стоп на уровень TP2 при включенном трейлинге. |
| Множитель SL (все предустановки) | 1.5 | Глобальное переопределение для множителя SL ATR. Это значение всегда имеет приоритет над встроенным в пресет множителем SL. Применяется к плоскому SL на основе ATR, если отключена структура SL. |
| Min Bars Between Signals | 5 | Период охлаждения. После срабатывания сигнала в течение этого количества баров не может появиться новый сигнал в том же направлении. Предотвращает кластеризацию сигналов в условиях нестабильности. |
| Включить трейлинг-стоп | true | Активирует срабатывающий трейлинг-стоп. При включении уровень трейлинг-стопа переходит на вход (BE) после TP1, на TP1 после TP2 и на TP2 после TP3. При включении этой функции механизм бэктестинга использует значения R с поправкой на трейлинг. |
| SL на основе структуры | true | При включении стоп-лосс размещается за ближайшим максимумом свинга (для шортов) или минимумом свинга (для лонгов) в окне Swing Lookback плюс буфер 0,2x ATR. Возвращается к плоскому SL на основе ATR, если вычисленный swing SL меньше, чем 0,5x ATR от входа. |
| Бары обратного хода свинга | 10 | Количество баров, на которое нужно оглянуться при поиске ближайшего максимума или минимума свинга для размещения SL на основе структуры. |
| Фильтр уровней | Все сигналы | Фильтрует сигналы по классу. "Все сигналы" показывает оценки B, A и A+ (C скрывается отдельно с помощью HideCGrade). "Только A+ и A" требует оценки 6,5 или выше. "Только A+" требует оценки 8,0 или выше. |
| Скрыть сигналы оценки C | true | При значении true сигналы с оценкой ниже 5.0 (оценка C) будут подавляться независимо от настройки фильтра оценок. Рекомендуется оставлять включенным для реальной торговли. |
| Показывать длинные/короткие сигналы | true | Включает отображение на графике сигнальных маркеров на покупку (зеленая стрелка вверх) и продажу (красная стрелка вниз). |
| Показывать линии EMA | true | Включает отображение на графике трех линий EMA (Fast, Slow, Trend). Отключение этой функции позволяет сохранить чистоту графика, но при этом использовать данные EMA для скоринга. |
| Показывать линии TP/SL | true | При значении true горизонтальные линии для входа, стоп-лосса, TP1, TP2 и TP3 рисуются на графике после каждого нового сигнала на последнем баре. |
| Показывать линию Trail Stop | true | Если значение true и Enable Trailing Stop также true, оранжевая пунктирная линия показывает текущий уровень трейлинг-стопа. Линия обновляется в реальном времени по мере прохождения сделки через уровни TP. |
| Показывать приборную панель | true | Включает отображение информационной панели на графике, на которой отображаются тренд, оценка, статус сигнала, RSI, ADX, режим волатильности, смещение HTF, фильтр классов и полная статистика бэктеста. |
| Режим бэктеста | Все загруженные данные | Контролирует, какие исторические бары учитываются в панели бэктестов. Варианты: "All Loaded Data" (вся история графика), "Date Range" (от BtFrom до BtTo), "Rolling Window" (последние бары BtRollingBars). |
| [Диапазон дат] От | 2025.01.01 | Время начала бэктеста в режиме Date Range. В статистике панели учитываются только сделки, открытые в эту дату или после нее. |
| [Диапазон дат] До | 2025.12.31 | Время окончания бэктеста в режиме Date Range. В статистике панели учитываются только сделки, открытые в этот день или ранее. |
| [Rolling] Последние N баров | 500 | Количество последних баров для включения в режим бэктестирования Rolling Window. Полезно для мониторинга последних сигналов без влияния старых рыночных режимов. |
Система оценки
Каждый бар оценивается по восьми условиям. В таблице ниже перечислены каждое условие, максимальное количество баллов, которое оно дает, и направление, к которому оно относится.
| Условие | Баллы | Примечания |
|---|---|---|
| Пересечение EMA Fast/Slow с достаточным разделением | 1.5 | Разрыв EMA должен превышать 0,15x ATR, чтобы избежать потери очков на плоских, неспокойных рынках. |
| Цена выше/ниже EMA Trend на 0,1x ATR | 1.5 | Подтверждает, что бар торгуется на правильной стороне долгосрочной линии тренда. |
| RSI в зоне импульса и повышается/понижается | 1.5 | Долго: RSI между 50 и 70, повышается. Короткие: RSI между 30 и 50, падает. |
| Гистограмма MACD расширяется в сигнальном направлении | 1.0 | Сравнивает текущую гистограмму с предыдущим баром для выявления ускорения импульса. |
| Цена выше/ниже VWAP текущего бара | 0.5 | VWAP рассчитывается как (High + Low + Close) / 3 для текущего бара. |
| Тиковый объем выше 20-барного среднего на 20% | 0.5 | Выявляет всплески участия, которые часто сопровождают настоящие прорывы. |
| ADX выше 20 с преобладанием DI+ или DI- | 1.0 | Требуется трендовый рынок (ADX выше 20) и индекс направленности, согласованный с направлением сигнала. |
| Выравнивание смещения EMA на более высоком таймфрейме | 2.0 | Оценивается только в том случае, если таймфрейм HTF установлен в значение, отличное от PERIOD_CURRENT. Самый высокий единичный вес в системе. |
Пороги оценки сигнала следующие: оценка 8,0 и выше дает оценку A+, от 6,5 до 7,9 - A, от 5,0 до 6,4 - B, ниже 5,0 - C. Входы Grade Filter и HideCGrade работают вместе, чтобы контролировать, какие оценки появляются на графике в виде стрелок.
Встроенные предустановленные конфигурации
В таблице ниже приведены точные значения параметров, применяемые каждой предустановкой. В предустановке Custom вместо этого используются входы с префиксом C_.
| Предустановка | EMA Fast | EMA Медленный | EMA Trend | RSI | ATR | Min Score | SL Mult |
|---|---|---|---|---|---|---|---|
| Скальпинг | 5 | 13 | 34 | 8 | 10 | 4 | 0.8 |
| Агрессивный | 8 | 18 | 50 | 11 | 12 | 3 | 1.2 |
| По умолчанию | 9 | 21 | 55 | 13 | 14 | 5 | 1.5 |
| Консерватор | 12 | 26 | 89 | 14 | 14 | 7 | 2.0 |
| Качели | 13 | 34 | 89 | 21 | 20 | 6 | 2.5 |
| Криптовалюта | 9 | 21 | 55 | 14 | 20 | 5 | 2.0 |
| Золото (ежедневно) | 21 | 55 | 200 | 21 | 20 | 7 | 2.5 |
Предустановка Auto выбирается автоматически: графики длительностью 5 минут и менее используют Scalping, от 6 минут до 1 часа - Default, от 1 часа до 4 часов - Aggressive, а свыше 4 часов - Swing.
Приборная панель и статистика бэктестов
Приборная панель на графике (включается вводом Show Dashboard) отображает две секции. В верхней секции отображается контекст рынка, включая направление тренда (бычий, медвежий или нейтральный), текущий балл и класс сигнала, статус активного сигнала (длинный активный, короткий активный или ожидающий), смещение HTF, RSI с метками перекупленности/перепроданности, ADX с меткой силы, режим волатильности (высокий, нормальный или низкий на основе 42-барного среднего ATR) и текущие настройки фильтра класса.
В нижней части приборной панели представлена статистика бэктестов, рассчитанная на основе исторических сигналов на загруженном графике. Эта статистика включает общее количество сделок с разбивкой на выигрыши, проигрыши и безубыточные результаты, процент выигрышей, коэффициент прибыли, средний R на сделку, общий накопленный R, а также разбивку TP/SL, показывающую, сколько сделок достигло TP1, TP2, TP3 или было остановлено при полном убытке. Механизм бэктестов корректно обрабатывает сделки, закрытые по противоположному сигналу (force-close), и не учитывает их как фактические достижения SL в счетчике пробоя SL.
Важно: Статистика бэктестов, отображаемая на приборной панели, рассчитывается на основе логики сигналов индикатора, примененной к историческим барам на текущем графике. Они не учитывают брокерские спреды, проскальзывание, комиссию за своп, частичное управление позицией или реальные условия исполнения. Прежде чем применять сигналы на реальном торговом счете, всегда проверяйте их эффективность на демо-счете. Прошлые сигналы на исторических данных не гарантируют будущих результатов.
Как использовать
Прикрепите PrecisionSniper к любому графику в MetaTrader 5 и выберите предустановку, соответствующую вашему инструменту и таймфрейму. Для большинства форекс-пар на H1 или H4 хорошей отправной точкой будет предустановка Default. Для более низких таймфреймов, таких как M5 или M15, попробуйте Scalping или Aggressive. Для XAUUSD на дневном графике используйте предустановку Gold.
Чтобы еще больше улучшить качество сигнала, установите для входа HTF Timeframe на один или два таймфрейма выше графика, на котором вы торгуете. Например, если вы торгуете на H1, установите HTF на H4 или D1. Это добавляет бонус в 2 балла только в том случае, если тренд на более крупном таймфрейме согласуется с сигналом, что фактически означает, что при смещении HTF выживают только сигналы класса A или выше. Если вы предпочитаете торговать меньшим количеством сигналов, но с более высокой степенью уверенности, установите фильтр класса "Только A+ и A".
Когда появляется стрелка на покупку или продажу, линии входа, стоп-лосса и TP1/TP2/TP3 рисуются автоматически. Если включен трейлинг-стоп, следите за оранжевой пунктирной линией трейла, когда сделка движется через уровни TP. Трейл переходит в безубыток после TP1, в TP1 после TP2 и в TP2 после TP3, фиксируя прибыль на каждом этапе. Используйте приборную панель бэктеста, чтобы просмотреть статистику последних сигналов и настроить фильтр Min Score или Grade Filter, если текущие настройки дают слишком много или слишком мало сигналов для вашего стиля.
| Имя файла | Описание |
|---|---|
| PrecisionSniper.mq5 | Полный исходный код индикатора PrecisionSniper для MetaTrader 5 |
Перевод с английского произведен MetaQuotes Ltd.
Оригинальная публикация: https://www.mql5.com/en/code/71860
SessionRangeBreakout
Индикатор азиатского диапазона с уровнями пробоя на лондонской сессии. Стрелки входа, алерты, push. Заточен под XAUUSD M15.
XANDER Pulse Candles
Раскрасьте свечи по состоянию импульса. Четыре уровня смещения + нейтральный - создан для темных графиков.
Institutional StatArb and Cointegration Spread Z-Score
Количественный мультиактивный осциллятор, предназначенный для статистического арбитража (парной торговли), рассчитывает логарифмический спред между двумя коррелирующими активами и измеряет его Z-Score для выявления нейтральных с точки зрения риска возможностей среднего перелома.
YURAZ_MCCH
Индикатор рассчитывает % роста или падения относительно CLOSE, написан с применением ООП, и легко интегрируется в любой советник или иной индикатор.
