Обсуждение статьи "Создание объектно-ориентированного расчетного модуля сессионного VWAP на MQL5"
Институциональные трейдеры, как правило, фиксируют свои VWAP на уровне последнего значимого максимума колебания при прогнозировании снижения и на уровне последнего значимого минимума колебания при прогнозировании роста. В этом случае полночь или любое конкретное время не имеют значения. Хотя выбор максимумов и минимумов, безусловно, субъективен, можно использовать индикатор ZigZag в сочетании с логикой, ожидающей их подтверждения. Было бы интересно посмотреть, как это повлияет на результаты ваших тестов.
Спасибо. У меня есть собственный индикатор AVWAP, основанный на времени. Вы действительно подсказываете мне некоторые идеи:
- Некоторое время назад я преобразовал индикатор MQL4 «ZigZag без перерисовки» в MQL5 — на самом деле он просто основан на LSMA. Задержка индикатора будет приемлемой, поскольку мы всё равно не можем определять основные максимумы и минимумы колебаний в режиме реального времени.
- Если предположить, что макроэкономическое событие немедленно приводит к появлению на рынке крупного колебательного максимума или минимума, то привязка к этому моменту времени имеет смысл. Конечно, то же самое событие, формирующее продолжение тренда, придётся игнорировать. Возможной альтернативой могло бы стать простое привязывание к крупному бару отклонения/разворота, появляющемуся на крупном максимуме или минимуме колебания — независимо от предполагаемого фундаментального фактора, лежащего в основе этого бара.
- И это буквально только что пришло мне в голову 💡... возможно, объединить варианты № 1 и № 2, чтобы советник мог легко определять моменты привязки к AVWAP.
Спасибо. У меня есть свой собственный индикатор AVWAP, основанный на времени. Вы действительно подсказываете мне некоторые идеи:
- Некоторое время назад я преобразовал индикатор MQL4 «ZigZag без перерисовки» в MQL5 — на самом деле он просто основан на LSMA. Задержка индикатора не будет проблемой, поскольку мы и так не можем определять основные максимумы и минимумы колебаний в режиме реального времени.
- Если предположить, что макрособытие немедленно формирует на рынке значимый максимум или минимум колебания, то привязка к этому моменту времени имеет смысл. Конечно, то же самое событие, формирующее продолжение тренда, придётся игнорировать. Возможной альтернативой могло бы быть простое привязывание к крупному бару отклонения/разворота, появляющемуся на крупном максимуме или минимуме колебания — независимо от предполагаемого фундаментального фактора, обусловливающего появление этого бара.
- И это буквально только что пришло мне в голову 💡... возможно, объединить варианты № 1 и № 2, чтобы советник мог легко определять моменты привязки к AVWAP.
Я согласен на 100%. Мой индикатор NRP ZigZag рисует стрелку на текущем баре при формировании отрезка, а также квадрат в истории на фактическом экстремуме. AVWAP будет перезакрепляться только на исторических квадратах NRP ZigZag. Таким образом , период ожидания, возможно, уже заложен в этом плане. Именно это я имел в виду, написав «Задержка индикатора будет допустимой...» в сообщении № 3. Мой индикатор AVWAP имеет лишь один входной параметр для ручной настройки времени закрепления — благодаря чему оба индикатора программно совместимы по принципу «подключи и работай». Конечно, подтвердить это может только тестирование.
Единственный элемент головоломки, над которым я все еще размышляю, — это анализ «квадратных баров», например, сырой объем, положительное отклонение от среднего объема, VSA, пиковые бары и/или оценка пин-баров.
Я согласен на 100%. Мой индикатор NRP ZigZag рисует стрелку на текущем баре при формировании отрезка, а также квадрат в истории на фактическом экстремуме. AVWAP будет переориентироваться только на исторические квадраты NRP ZigZag. Поэтому в этом плане, возможно, уже предусмотрен период охлаждения. Именно это я имел в виду, написав «Задержка индикатора будет приемлемой...» в сообщении № 3. Мой индикатор AVWAP имеет лишь один временной параметр для ручной настройки времени привязки, что делает эти два индикатора программно совместимыми по принципу «plug-and-play». Конечно, подтвердить это можно только тестированием.
Единственный элемент головоломки, над которым я все еще размышляю, — это анализ «квадратных баров», например, сырой объем, положительное отклонение от среднего объема, VSA, пиковые бары и/или оценка пин-баров.
Этот график выглядит очень наглядно, Райан. Фильтрация этих структурных квадратов с помощью индикатора VSA Climax Churn — это, безусловно, лучший подход в данном случае, само по себе сырое значение объёма даст ложные сигналы во время новостных всплесков на сессиях с низким объёмом торгов, но поиск массивного поглощения со стороны институциональных инвесторов на экстремумах позволяет сохранить надёжную базовую линию; можно легко добавить вторичный фильтр волатильности для перепроверки отклонения объёма — это гарантирует, что вы уловите только реальные институциональные блоки и пробьёте свой AVWAP прямо в самом центре настоящего разворота
На скриншоте это видно очень слабо, но к индикатору объема в дополнительном окне применена скользящая средняя с периодом 100.

Опубликована статья Создание объектно-ориентированного расчетного модуля сессионного VWAP на MQL5:
Разработку внутридневных торговых систем на MQL5 я обычно начинаю с добавления на график стандартной скользящей средней, которая помогает отфильтровать краткосрочный тренд. Такой подход выглядит приемлемым в периоды затишья на рынке или при торговле в узких диапазонах. Однако тестирование в реальных условиях на валютных парах с высокой ликвидностью выявляет серьезный структурный недостаток. Крупная свеча, сформировавшаяся на фоне макроэкономических новостей, может мгновенно сместить базовую линию рынка за счет объема торгов институциональных участников. Простая скользящая средняя учитывает эту свечу с большим объемом так же, как свечу с низким объемом из спокойной ночной сессии, поскольку принимает во внимание только цены закрытия. Это создает опасную ловушку для торгового робота. Советник открывает сделку на линии скользящей средней, принимая это за откат к справедливой стоимости, однако реальный ценовой ориентир, определяемый объемом торгов институциональных участников, остается далеко позади.
Причина ошибки заключается в том, что стандартные индикаторы при расчетах полностью игнорируют массивы тиковых объемов. Я хотел заменить этот традиционный подход гораздо более адаптивным решением, которое отслеживает, на каких ценовых уровнях фактически проходят сделки. Средневзвешенная по объему цена (VWAP) выполняет эту роль, взвешивая каждое колебание цены по абсолютному объему ликвидности, проторгованной на соответствующем уровне. В MQL5 нет встроенного индикатора VWAP с ежедневным сбросом и динамически пересчитываемыми полосами отклонения. Это затрудняет быструю интеграцию в автоматизированные стратегии. Мы перенесем накопительные расчеты в подключаемый файл. Затем мы нанесём базовую линию и полосы волатильности на график с помощью пользовательского индикатора для визуальной проверки. В заключение мы интегрируем этот модуль в советник для торговли на откатах.
Автор: Amanda Vitoria De Paula Pereira