Gnomon Diurnal Cone
- Индикаторы
-
Syarief Azman Bin Rosli
Здравствуйте и добро пожаловать в мой официальный профиль MQL5!
Меня зовут Шариф Азман Бин Росли (Syarief Azman Bin Rosli). Я разработчик алгоритмических торговых систем и количественный инженер с более чем десятилетним опытом создания надежных решений для MetaTrader 5 и MetaTrader 4. - Версия: 1.0
- Активации: 5
Обзор
Gnomon Diurnal Cone показывает, как далеко цена обычно уходит от открытия дня к каждому времени суток. Для каждого внутридневного слота индикатор берёт последние N полных дней и рисует медианное отклонение выше и ниже открытия (ядро конуса) и выбранный перцентиль (внешний конус). Конус сегодняшнего дня фиксируется при открытии дня только по завершённым дням, поэтому он никогда не перерисовывается, и продлевается до конца дня. Бюджет диапазона сравнивает сегодняшний диапазон с медианным полным дневным диапазоном, а два сигнала на закрытом баре отмечают необычное расширение и истощение. Это индикатор: он никогда не открывает, не изменяет и не закрывает сделки.
Быстрый старт
- Прикрепите индикатор к графику M15 (поддерживаются M1, M5, M15, M30 и H1).
- Сначала оставьте значения по умолчанию: Lookback Days 20, Outer Cone Percentile 80, Day Start Hour 0 (полночь сервера).
- Бейдж карточки должен показывать READY, а золотые линии ядра и синие внешние линии должны расходиться веером от сегодняшнего открытия. Если показано COLLECTING, прокрутите график назад, чтобы загрузить больше истории.
- Посмотрите последние 30 дней на графике (Days to Display): как цена вела себя относительно конуса и где появились стрелки.
- Включите Push Notification on Signal (MetaQuotes ID в Сервис > Настройки > Уведомления) или Popup Alert on Signal, чтобы получать оповещение при закрытии сигнала.
Как строится конус
- День длится от Day Start Hour (время сервера) до того же часа следующего дня. Слот - это минуты бара с начала дня, делённые на таймфрейм.
- Для каждого полного дня индикатор записывает в конце каждого слота наибольшее отклонение выше и ниже открытия дня, достигнутое к этому моменту. Слоты без баров сохраняют последнее значение.
- Действительные дни: из последних 2 x Lookback завершённых дней отбрасываются дни, где баров меньше 50 % от медианного количества (воскресные сессии, праздники), и остаются последние Lookback Days дней. Если действительных дней меньше, конус не рисуется.
- Ядро конуса = медиана отклонений в каждом слоте; внешний конус = Outer Cone Percentile (линейная интерполяция).
- Ожидаемый дневной диапазон = медиана полных дневных диапазонов этих дней. Типичный диапазон к текущему моменту = медиана диапазона, достигнутого ими к текущему слоту.
- Конус использует только завершённые дни и открытие дня, поэтому значения на закрытых барах никогда не меняются.
Элементы графика
- Золотые линии (Core Cone Upper / Lower) и синие линии (Outer Cone Upper / Lower). Линии прерываются в начале каждого дня.
- Серая пунктирная линия: открытие дня.
- Ступенчатая заливка: один блок на каждый час между линиями ядра, позади свечей, для последних N дней; сегодняшние блоки доходят до конца дня.
- Пунктирное продолжение (прогноз вперёд): ядро и внешний конус сегодняшнего дня от формирующегося бара до конца дня.
- Штриховые линии CEILING и FLOOR с подписями: сегодняшний минимум + ожидаемый диапазон и сегодняшний максимум - ожидаемый диапазон, то есть где закончился бы день, если бы от текущего экстремума он прошёл обычный полный диапазон. Они исчезают, когда сегодняшний диапазон достигает ожидаемого.
- Стрелки на 0.5 x ATR за баром: зелёная стрелка вверх EXPANSION UP, красная стрелка вниз EXPANSION DOWN, фиолетовая контурная стрелка вверх EXHAUSTION LOW, фиолетовая контурная стрелка вниз EXHAUSTION HIGH.
Сигналы
Проверяются при закрытии бара, не более одного сигнала каждого вида на сторону в день. Стрелки никогда не перерисовываются.
- EXPANSION UP / EXPANSION DOWN: бар закрывается выше верхнего внешнего конуса (ниже нижнего), а сегодняшний диапазон уже составляет не менее Expansion Min Budget % от ожидаемого дневного диапазона. День проходит больше обычного для этого времени.
- EXHAUSTION HIGH / EXHAUSTION LOW: сегодняшний диапазон составляет не менее Exhaustion Threshold % от ожидаемого дневного диапазона, бар делает новый максимум (минимум) дня и закрывается не менее чем на Rejection Close % собственного диапазона от этого экстремума. Обычный бюджет израсходован, а новый экстремум отвергнут.
- Signal Types: Expansion and exhaustion, Expansion only или Exhaustion only.
- Сигналы описывают статистическое положение цены; это не торговые рекомендации.
Карточка телеметрии
- Заголовок: индикатор состояния (зелёный READY, оранжевый COLLECTING, красный TF TOO HIGH или NO DATA) и название GNOMON DIURNAL CONE. <> перемещает карточку в следующий угол; [-] сворачивает её в капсулу с GNOMON, темпом и его режимом; [+] разворачивает. Угол и свёрнутое состояние возвращаются к входным параметрам при перезагрузке индикатора или смене таймфрейма.
- Подстрока: символ, таймфрейм, слот формирующегося бара (например slot 52/96) и бейдж состояния.
- SUNDIAL CLOCK: Day open; Day elapsed (доля прошедших слотов дня, серая шкала); Typical done (доля ожидаемого дневного диапазона, обычно достигаемая к этому времени, золотая шкала).
- RANGE BUDGET: Today range в pts (пунктах); Expected (медианный полный дневной диапазон); Budget used = сегодняшний диапазон / ожидаемый, шкала 0-150 % с белой отметкой на 100 % (бирюзовая ниже 75 %, оранжевая от 75 %, красная от Exhaustion Threshold); Pace = сегодняшний диапазон / типичный диапазон к этому времени, с режимом QUIET (ниже 0.75x), NORMAL (0.75-1.25x), HOT (1.25-1.75x) или EXTREME (1.75x и выше).
- CONE POSITION: бейдж текущей цены: ABOVE OUTER, UPPER STRETCH (между ядром и внешним конусом сверху), INSIDE CORE, LOWER STRETCH, BELOW OUTER; ценовые диапазоны Core и Outer в текущем слоте.
- PROJECTION: цены Ceiling и Floor с расстоянием от цены. Когда сегодняшний диапазон достигает ожидаемого, они показывают BUDGET SPENT и over by N pts.
- LAST SIGNAL: последний сигнал со временем и ценой закрытия, или NO SIGNAL YET.
- На H4 и выше карточка показывает TIMEFRAME TOO HIGH и "Use M1, M5, M15, M30 or H1"; при недостатке истории показывает COLLECTING HISTORY n/N DAYS.
Оповещения
Popup Alert on Signal, Sound Alert on Signal (alert.wav), Push Notification on Signal и Email on Signal (настройки почты в Сервис > Настройки > Почта) срабатывают один раз, когда сигнал появляется на только что закрытом баре, даже если Show Signal Arrows выключен. История, пересчитанная при прикреплении, никогда не вызывает оповещений. Текст: "Gnomon Diurnal Cone EURUSD M15: EXPANSION UP at 1.16945 (close beyond the P80 cone)".
Буферы для iCustom
0 Outer Cone Upper, 1 Core Cone Upper, 2 Core Cone Lower, 3 Outer Cone Lower, 4 Day Open (0-4 равны EMPTY_VALUE на первом баре каждого дня), 5 Expansion Up, 6 Expansion Down, 7 Exhaustion Low (buy), 8 Exhaustion High (sell) (цена стрелки или EMPTY_VALUE), 9 Pace (x typical), 10 Budget Used %, 11 Expected Day Range. Для значений закрытого бара используйте сдвиг 1.
double up = iCustom(NULL, 0, "Market\\Gnomon Diurnal Cone", 5, 1);
if(up != EMPTY_VALUE) Print("EXPANSION UP on the last closed bar"); Побочные эффекты
Графические объекты с префиксом GDC_ (карточка, заливка, прогноз, линии потолка и пола), все удаляются вместе с индикатором. Нет файлов, нет глобальных переменных терминала, нет DLL, нет торговли.
Входные параметры
- Day Start Hour (время сервера, 0-23), по умолчанию 0: час начала каждого дня.
- Lookback Days (5-100), по умолчанию 20: полные дни в статистике.
- Outer Cone Percentile (55-99), по умолчанию 80.
- Days to Display (1-200), по умолчанию 30: дни, отображаемые линиями и стрелками.
- Show Outer Cone, Show Day Open Line, Show Forward Projection, Show Range Ceiling and Floor, Show Signal Arrows: по умолчанию true. Скрытые построения сохраняют значения буферов.
- Shade Core for Last N Days (0 = выкл., максимум 10), по умолчанию 3.
- Signal Types: Expansion and exhaustion (по умолчанию), Expansion only, Exhaustion only.
- Expansion Min Budget (% ожидаемого дневного диапазона, 0-100), по умолчанию 30: отсекает шумные первые минуты дня.
- Exhaustion Threshold (% ожидаемого дневного диапазона, 10-500), по умолчанию 100.
- Rejection Close (% диапазона бара от экстремума, 0-100), по умолчанию 50; 0 принимает любое закрытие.
- ATR Period (отступ стрелок), по умолчанию 14.
- Core Cone Color, Outer Cone Color, Core Shading Color, Ceiling and Floor Color.
- Popup Alert on Signal, Sound Alert on Signal, Push Notification on Signal, Email on Signal: по умолчанию false.
- Show Telemetry Card, по умолчанию true. Card Corner: Top left (по умолчанию), Top right, Bottom right, Bottom left. Start Collapsed, по умолчанию false.
- Panel Scale (0.5-2.5), по умолчанию 1.0; разметка также учитывает DPI экрана.
Значения вне диапазона останавливают индикатор с сообщением в журнале Эксперты.
Типичные настройки
- Внутридневной форекс (EURUSD, GBPUSD) на M15: значения по умолчанию.
- Золото у брокеров, где сессия открывается в 01:00 по серверу: Day Start Hour 1, Outer Cone Percentile 85.
- Контртренд в исчерпанные дни: Signal Types Exhaustion only, Exhaustion Threshold 90, Rejection Close 60, Popup Alert on Signal true.
- Импульсные дни: Signal Types Expansion only, Expansion Min Budget 40, Outer Cone Percentile 85, Push Notification on Signal true.
- Контекст на H1: Lookback Days 60, Days to Display 60, Shade Core for Last N Days 5.
Примечания и ограничения
- Только от M1 до H1. Конусу нужно Lookback Days действительных дней истории; тестер стратегий подгружает около 1000 баров, поэтому на M15 конус по умолчанию появляется примерно через 10 торговых дней теста.
- Используется время сервера; при переходе на летнее время слоты на несколько дней смещаются на один час.
- Значения на закрытых барах никогда не перерисовываются; формирующийся бар, прогноз, потолок и пол обновляются с каждым тиком.
- Индикатор описывает типичные диапазоны по прошлым данным. Прошлые диапазоны не гарантируют будущих; он не предсказывает направление и не гарантирует прибыль. Торговля связана с риском убытков.
