Session VWAP
- Индикаторы
- Версия: 1.31
- Активации: 20
Общая характеристика
Session_VWAP — кастомный индикатор для MetaTrader 5, который рассчитывает объёмно-взвешенную среднюю цену (VWAP) внутри торговой сессии и строит вокруг неё полосы отклонений ±1σ и ±2σ (стандартные отклонения). Дополнительно рисует заливку между полосами, показывает панель статистики и выдаёт алерты на пересечения линий. В главном окне графика, рассчитан на внутридневные таймфреймы M1–H12.
Принцип работы
1. Расчёт VWAP (кумулятивно по барам сессии)
typical = (High + Low + Close) / 3 // типовая цена бара VWAP = Σ(typical × объём) / Σ(объём) // накопленная сумма по сессии σ = sqrt(E[x²] − E[x]²) // ст. отклонение одним проходом Band1 = VWAP ± n1·σ // полосы 1-го уровня (по умолчанию ±1σ) Band2 = VWAP ± n2·σ // полосы 2-го уровня (по умолчанию ±2σ)
- Объём — тиковый (по умолчанию) или реальный (опция InpUseRealVolume ).
- Расчёт идёт одним проходом по сессии: накапливаются суммы V , P·V , P²·V — второй проход не нужен.
2. Определение сессии
- Старт настраивается: час:минута ( InpSessionStartHour , InpSessionStartMin ).
- Сессия длится 24 часа от точки старта.
- Новая сессия начинается при: смене «ключа сессии» (календарная дата старта) или разрыве во времени больше 24 часов (выходные, праздники) — это гарантирует корректный перезапуск расчёта.
- Опция «только текущая сессия» скрывает предыдущие сессии с графика ( EMPTY_VALUE + разрыв линии).
3. Линии и заливка
6 плотов / 7 буферов:
- Plot 0 — заливка ±1σ (буферы не используются — см. ниже);
- VWAP — синяя сплошная линия;
- Upper/Lower Band 1 — красная/зелёная пунктирные (±1σ);
- Upper/Lower Band 2 — тёмно-красная/тёмно-зелёная штриховые (±2σ).
Особенность заливки: стандартный DRAW_FILLING в главном окне всегда рисуется поверх свечей и перекрашивает их, поэтому заливка выполнена фоновыми объектами OBJ_RECTANGLE ( SVWAP_Fill_* , BACK=true ) позади ценового графика:
- прямоугольники перекрываются на полбара — без видимых швов;
- «прозрачность» эмулируется смешиванием цвета с фоном графика (альфа-канал чарт-объектами игнорируется);
- окно заливки ограничено 800 барами и синхронизируется с видимой историей (старые объекты удаляются).
4. Панель статистики (7 строк)
- Session VWAP (заголовок);
- текущее значение VWAP;
- B1 — верхняя/нижняя граница ±1σ;
- B2 — верхняя/нижняя граница ±2σ;
- 1σ и накопленный объём сессии;
- Price vs VWAP — отклонение цены от VWAP в % (строка зелёная/красная);
- Session ends in — время до конца сессии.
Панель: любой из 4 углов графика, отступы, размер шрифта, цвета настраиваются; ширина подложки автоматически подстраивается под самый длинный текст; в тестере панель не создаётся.
5. Сигналы-алерты (на закрытом баре)
Проверяется бар rates_total − 2 (уже закрытый — без перерисовки), максимум 1 алерт за бар:
- Пересечение VWAP вверх — бычий сдвиг моментума;
- Пересечение VWAP вниз — медвежий сдвиг моментума;
- Пробой верхней полосы ±1σ/±2σ — сильный импульс вверх;
- Возврат под верхнюю полосу — напор ослаб (Bearish);
- Пробой нижней полосы ±1σ/±2σ — сильный импульс вниз;
- Возврат над нижней полосу — отскок от полосы (Bullish).
Уведомления: всплывающий Alert , Push на телефон, звук — включаются отдельно; алерты по ±1σ и ±2σ — раздельными флагами.
6. Инкрементальный пересчёт
- prev_calculated используется корректно: при каждом тике пересчитывается только последний бар;
- VWAP — кумулятивный, поэтому перед пересчётом выполняется откат к началу сессии (восстановление сумм), а при смене сессии суммы сбрасываются и линия разрывается.
7. Настройки (итог)
Времени/объёма, полос отклонений (множители, заливка, цвет, прозрачность), уведомлений и панели статистики. Параметры валидируются в OnInit (отрицательные множители и некорректное время старта → INIT_PARAMETERS_INCORRECT ).
Пре advantages (Преимущества)
- Институциональная метрика: VWAP — стандарт крупных участников для оценки «справедливой» цены сессии; индикатор делает её доступной на любом внутридневном графике.
- Контекст относительной стоимости: полосы ±1σ/±2σ показывают, насколько цена отклонилась от средневзвешенной цены — удобно для поиска перекупленности/перепроданности внутри сессии.
- Заливка без артефактов: полосы подсвечиваются позади свечей, не перекрашивая их; «прозрачность» эмулируется смешиванием с фоном — выглядит естественно на любой теме графика.
- Нет перерисовки сигналов: алерты только по закрытым барам, не более одного за бар — сигналы стабильны и пригодны для проверки на истории.
- Настраиваемое начало сессии: можно привязать к любой торговой сессии (азиатской, лондонской, нью-йоркской или своему режиму дня).
- Устойчивость к разрывам: выходные и праздники корректно завершают сессию и начинают новую.
- Гибкость объёма: тиковый или реальный объём — под данные брокера.
- Информативная панель: VWAP, полосы, σ, объём, отклонение цены в % и время до конца сессии — всё на одном экране, размер панели подстраивается под содержимое.
- Эффективность: один проход расчёта (E[x²]−E[x]²), инкрементальное обновление, окно заливки ограничено 800 барами.
- Аккуратность к ресурсам и чужим объектам: в тестере чарт-объекты не создаются; при удалении очищаются только объекты индикатора (префиксы SVWAP_* ).
- Безопасная подача сигналов: это информационный инструмент, а не торговый робот — алерты носят справочный характер.
Примечания и рекомендации (из комментариев автора)
- На D1/W1 каждый бар является своей сессией: σ = 0 и полосы вырождаются — индикатор рассчитан на M1–H12.
- Пробои ±2σ часто сопровождаются откатом — входить на пробое нужно осторожно.
- Рекомендуется: пересечения VWAP — как ориентир направления; подтверждение входа на старшем ТФ; обязательный стоп-лосс; проверка сигналов на истории/демо.
- Алерты не гарантируют прибыль — это инструмент анализа, а не готовое торговое решение.
