Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 32
- Рейтинг:
- Опубликован:
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Идея, лежащая в основе этого
Обычно для оценки того, «спокойный сегодня день или бурный», используется показатель «процент от среднего дневного диапазона» — сегодняшний диапазон, деленный на среднее значение за последние N дней. Это полезно, но данный показатель сравнивает данные только со средним значением, что скрывает форму распределения: рынок, который в основном спокойный, но на котором время от времени наблюдаются дни с огромными скачками, будет иметь завышенное среднее значение, из-за чего обычные дни с узким диапазоном кажутся менее экстремальными, чем они есть на самом деле. Этот индикатор, напротив, отвечает на более конкретный вопрос: из последних N завершенных периодов, в каком проценте диапазон был меньше, чем сегодняшний на данный момент? Это подлинный процентильный ранг, построенный непосредственно на основе эмпирического распределения исторических диапазонов, а не на основе одной средней величины — та же идея, которая используется в статистике для описания того, где наблюдение находится в рамках своего собственного распределения, примененная здесь к волатильности.
Сильное статистическое сжатие (низкий процентиль) часто предшествует расширению диапазона, поэтому показатели сжатия обычно отслеживают перед формированием сигналов прорыва; напротив, очень высокий процентиль сигнализирует о дне, который уже продвинулся дальше, чем почти все аналогичные дни в истории, что меняет представление о том, сколько пространства реально может остаться.
Как это интерпретировать
- Значение процентиля — доля (в процентах) завершенных периодов за последние InpLookbackPeriods, полный диапазон которых был меньше, чем диапазон текущего периода на данный момент. Значение 12% означает, что диапазон сегодняшнего дня на данный момент меньше, чем у 88% из последних 100 дней.
- COMPRESSED (по умолчанию — синий) — процентиль, равный или ниже InpCompressionPercentile; текущий период необычно «спокоен» по сравнению со своей собственной историей.
- EXPANDED (по умолчанию — красный) — процентиль, равный или превышающий InpExpansionPercentile; текущий период уже продвинулся дальше, чем большинство аналогичных периодов в истории.
- НОРМАЛЬНЫЙ (по умолчанию — серебристый) — в пределах между двумя пороговыми значениями — обычный, ничем не примечательный диапазон на данный момент.
- Индикаторная полоса — простая визуальная шкала от 0 до 100; положение маркера вдоль шкалы соответствует самому процентилю, поэтому сжатие и расширение видны с первого взгляда, без необходимости считывать точное число.
Внешние переменные (входные данные)
| Входные данные | По умолчанию | Назначение |
|---|---|---|
| InpRangePeriod | D1 | Какой таймфрейм определяет один «диапазон» — обычно используется «Daily», но «Weekly» или «H4» работают точно так же. |
| InpLookbackPeriods | 100 | Количество завершенных исторических периодов, составляющих распределение, по которому ранжируется текущий диапазон. |
| InpCompressionPercentile | 20,0 | Процентиль, на уровне которого или ниже которого отображается статус «COMPRESSED». |
| InpExpansionPercentile | 80,0 | Перцентиль, при котором или выше которого статус отображается как «EXPANDED». |
| InpUpdateOnNewBarOnly | true | Если значение true, обновление происходит один раз при появлении каждого нового бара на графике; если false, обновление происходит при каждом тике. |
| InpPanelCorner | Левый верхний | Угол графика, к которому привязана панель. |
| InpPanelXDistance / InpPanelYDistance | 12 / 18 | Смещение панели от выбранного угла в пикселях. |
| InpFontSize | 9 | Размер шрифта, используемый для каждой строки. |
| InpGaugeWidth / InpGaugeHeight | 160 / 10 | Размеры в пикселях шкалы процентилей. |
| InpCompressedColor / InpNormalColor / InpExpandedColor | DeepSkyBlue / Silver / Red | Цвет, используемый для строки «Status» и маркера индикатора в каждом из трех состояний. |
| InpPanelTextColor / InpPanelBgColor | Белый / Тёмно-серый | Цвет статического текста и цвет фона панели. |
Рекомендуемое использование
Работает с любым символом; процентиль рассчитывается исключительно на основе распределения исторического диапазона цен данного символа, поэтому он автоматически адаптируется к любому режиму волатильности, в котором находится инструмент в данный момент, без необходимости ручной перекалибровки. Параметру InpRangePeriod не обязательно совпадать с таймфреймом самого графика — процентиль дневного диапазона можно с таким же успехом считывать с графика M15, как и с графика D1, поскольку расчет извлекает данные напрямую через функцию CopyRates().
Процентиль — это описание того, где находится сегодняшний день по отношению к собственной истории, а не прогноз: значение «COMPRESSED» повышает вероятность расширения, но не гарантирует его, а значение «EXPANDED» не означает, что движение завершилось. Данный индикатор лишь считывает ценовые данные и никогда не размещает, не изменяет и не закрывает какие-либо ордера, поэтому его можно безопасно использовать на любом типе счета.
Этот индикатор рисует только через собственные объекты панели и не создает лишних элементов на графике для каждого бара, поэтому его можно безопасно использовать одновременно с любым количеством других наложений. Все объекты графика создаются под единым внутренним префиксом имени и полностью удаляются с помощью функции ObjectsDeleteAll() в методе OnDeinit() при отсоединении индикатора, поэтому он не оставляет после себя ничего на графике

Рис. 1. Панель сжатия и индикатор процентилей на XAUUSD H1, сигнализирующие о сжатом диапазоне. Отображено в чёрно-белом варианте в соответствии с рекомендациями по изображениям Code Base
Перевод с английского произведен MetaQuotes Ltd.
Оригинальная публикация: https://www.mql5.com/en/code/77161
MT5 Symbol Changer Profit Display
EMTOrdersUtility — это утилита для мониторинга торговых операций в режиме реального времени и смены символов, разработанная для активных трейдеров, которым необходим доступ к информации о своих открытых позициях по различным финансовым инструментам в режиме реального времени.
PulseStrike Scalper - Statistical Burst Detection EA
PulseStrike Scalper — советник для статистического обнаружения всплесков
PropFirm Defense
Библиотека из 24 классов MQL5, которая отслеживает соблюдение правил проп-фирмы — просадку, дневной убыток, стабильность выплат, минимальное количество торговых дней, период запрета на торговлю во время новостей — для любого счёта и закрывает все позиции при нарушении этих правил, при этом никогда не открывая собственных позиций.
GDS Renko Replay Trainer
GDS Renko Replay Trainer — это бесплатный обучающий инструмент для отработки ручных решений на исторических графиках Ренко в MetaTrader 5. Загрузите исторический интервал, прокрутите его вперед и размещайте виртуальные сделки «КУПИТЬ» или «ПРОДАТЬ». Вы можете поставить на паузу, продвинуться на один тик или перейти к следующему завершённому блоку Ренко. Каждая виртуальная позиция имеет стоп-лосс и тейк-профит, а тренажёр фиксирует результаты вашей сессии. Инструмент формирует блоки Ренко фиксированного размера на основе исторических тиков Bid/Ask с классическим разворотом из двух блоков. Будущие тики не используются для построения видимого графика или совершения виртуальных сделок. При сделках на покупку для входа используется цена Ask, а для выхода — цена Bid; при сделках на продажу — наоборот. Ордера, введенные на панели, ожидают следующего воспроизводимого действительного тика. Стопы и цели проверяются при каждом тике, включая ценовые разрывы.