Содержание статьи
- Доказательства и область применения
- Иллюстрация
- Процесс
- Для изменения полярности необходима полная история.
- От известного блока к новому кандидату для повторного тестирования
- Объём различает гипотезы о пробое и возврате
- Синтетические прибыльный и убыточный исходы у одной зоны
- Тип ордера и число попыток
- Сравните брейкер с обычными ретестами поддержки и сопротивления
- Частые ошибки
- Практический список проверки
- Частые вопросы
- Источники исследования
Доказательства и область применения
Первоначальная реализация описывает изменения полярности и явно идентифицирует исторические метки, нанесенные задним числом. Предложенные торговые правила не имеют независимо подтвержденной истории эффективности.
Практическая последовательность действий
- Начните с известного блока.Сохраните границы зоны блока и время его публикации.
- Обратите внимание на аннулированиеТребуется закрытие за дальней границей и буферной зоной.
- Создайте брейкерИспользуйте новый идентификатор, связанный с исходным родительским элементом.
- Оцените результаты первого повторного тестирования.Примените выбранное правило отскока и входа.
- Выход или отменаСоблюдайте заранее заданные стоп, цель и срок действия.
Для изменения полярности необходима полная история.
Медвежий ордер-блок ранее отслеживался как сопротивление. Явное закрытие выше него отменяет эту гипотезу. Бычий брейкер проверяет новое предположение: удержит ли зона цену сверху при первом последующем возврате? Нарушенный бычий блок создаёт зеркальную медвежью гипотезу ниже зоны.
LuxAlgo описывает смену роли брейкера и предупреждает, что метки Historical Polarity Changes наносятся на прошлые участки графика задним числом [1]. Красивая историческая метка не доказывает доступность сигнала в тот момент. Документация платформы о времени обработки помогает отличить место отрисовки от момента доступности информации [2].
Брейкер не доказывает, что прежние продавцы теперь обязаны покупать в этой зоне. Такое объяснение может мотивировать гипотезу, но OHLCV содержит цену, активность и время, а не личности участников. Новое состояние зоны не должно стирать убыток первоначальной сделки по ордер-блоку.
От известного блока к новому кандидату для повторного тестирования
Начните с ранее опубликованного медвежьего block[a,b]. Зафиксируйте A=ATR14 до пробоя и buffer=max(2 ticks,0.10A). Когда получена цена закрытия бара t и выполнено C[t]>b+buffer, пометьте исходный блок как INVALIDATED и создайте бычий брейкер с теми же границами и ссылкой parent_ob_id на исходный блок. Новый кандидат допускает вход начиная с t+1. Буфер и примерный TTL в 20 баров — исследовательские настройки.
До оценки возврата убедитесь, что после пробоя цена торговалась полностью выше зоны. Ретест пересекает зону при low≤b+buffer и high≥a, затем не позднее чем через три бара закрывается выше b+buffer. Вариант первого касания расходует возможность при первом подходе; нельзя назвать более красивый четвёртый возврат первым. Если до подтверждения закрытие опускается ниже a−buffer, отмените кандидата.
Один вариант требует сопутствующего BOS, MSS или импульса, другой — только нарушения ордер-блока. Регистрируйте их отдельно для оценки фильтра структуры. Если пробой и предполагаемый ретест происходят внутри свечи создания зоны, OHLC не показывает последовательность, необходимую для входа после публикации. Вариант с подтверждением закрытием не торгует внутри этой свечи.
Сохраните новый идентификатор события, не меняя при этом исходные границы блока и метку времени сбоя. Один изменяемый объект, направление которого меняется с медвежьего на бычье, в противном случае может привести к тому, что в отчетах будет отображаться только успешная окончательная интерпретация. Отслеживание происхождения событий является частью исследовательского подхода, а не просто бухгалтерским учетом.
EXPIRED, INVALIDATED и CONSUMED — конечные состояния этого брейкера. Отмены ордера недостаточно, если детектор может снова рассмотреть ту же зону на позднем баре: поздний возврат за уровень не оживляет неудавшегося кандидата. До перехода состояния на закрытии запишите все исполнения, произошедшие, пока ордер был активен.
on_close(t):
process_existing_order_events_until_close(t)
for br in active_bullish_breakers_eligible_before_bar(t):
if expired(br):
br.state = EXPIRED; cancel_future_orders(br); continue
if C[t] < br.low-br.buffer:
br.state = INVALIDATED; cancel_future_orders(br); continue
if first_retest_confirmed(br,t):
signal_for_next_quote_once(br); br.state = CONSUMED
A = ATR14[t-1]
if not finite_positive(A): return
buffer = max(2*tick,0.10*A)
for ob in active_bearish_OBs_published_before_bar(t):
if C[t] > ob.high+buffer:
invalidate_once(ob,at=t)
create_breaker_once(parent=ob.id,known_at=received_close_time(t),
eligible=t+1,buffer=buffer,expiry=t+20)
# Terminal breakers cannot revive; a failed parent creates at most one child.
Объём различает гипотезы о пробое и возврате
Измеряйте RVOL пробоя отдельно от объёма ретеста той же длительности. Пробой на высоком объёме и тихий возврат могут соответствовать снижению давления продаж, но также обычному полуденному спаду активности. Используйте сравнения для одинакового времени суток; полный дневной объём нельзя применять для утреннего решения.
OB, брейкер и BOS могут относиться к одной ценовой последовательности. Не выделяйте независимые бюджеты риска только из-за разных названий события. Связанные входы могут делить один фиксированный бюджет. CVD пригоден как дополнительная характеристика лишь при надёжной классификации сделок; цвет свечи не восстанавливает дельту.
Ретесты на большом объёме тоже должны оставаться в выборке. Сильный отклик после возможного поглощения может сопровождаться высокой активностью, что противоречит строгому условию снижения объёма. Проверяйте эти механизмы отдельными ветвями, не меняя объяснение после появления прибыльного примера.
Синтетические прибыльный и убыточный исходы у одной зоны
Медвежий block[100,102] уже известен. При опорном ATR=2 и tick=0.05 буфер равен 0.20. Закрытие по 102.50 создаёт бычий брейкер. Позже цена достигает 104, возвращается к минимуму 101.80 и закрывается по 102.40. Покупка по следующей доступной для исполнения котировке 102.45 со стопом 99.80 и целью 107.75 даёт риск 2.65 и потенциальную прибыль 5.30, или 2R до издержек.
Если следующая известная структурная цель — это только 104.50, такая широкая защита может привести к недостаточному вознаграждению. Отклонить согласно заранее выбранному правилу. Не перемещать стоп-лосс до 101.80 после того, как стало известно, что это был успешный минимум повторного тестирования, если только исходная модель входа явно не использовала этот уже наблюдаемый минимум.
В неудачном сценарии первый возврат закрывается по 99.70. Вариант с подтверждением не входит и отменяет кандидата. Уже выставленный лимитный ордер по 102 мог исполниться, а затем закрыться по 99.75 с убытком 2.25. Результат прежней короткой позиции по исходному медвежьему блоку сохраняется отдельно. Отчёт лишь о более поздней прибыльной сделке по брейкеру исказит полную последовательность.
Тип ордера и число попыток
Выберите подтверждение с входом по следующей котировке либо лимитный ордер на заранее заданной границе или середине зоны до касания. Благоприятное закрытие свечи после посещения зоны не позволяет приписать лучший лимитный вход и одновременно опустить неблагоприятные исполнения. Модель исполнения и защиты должна соответствовать торговой площадке [3].
Истечение срока действия, прорыв за крайний уровень или заранее объявленное условие противодействующей структуры могут отменить ожидающий кандидат. Для открытой позиции жесткий стоп-лосс и выход на основе закрытия — это разные действия. Ожидание закрытия не предотвращает исполнение уже активного защитного стоп-лосса.
Предлагаемый базовый уровень допускает одну попытку на каждый родительский блок и одну позицию на каждое семейство событий. Если разрешен повторный вход, рассматривайте его как новую сделку и сохраняйте накопленные затраты. Выберите цель как известное противоположное колебание или фиксированный множитель R до того, как будет проанализирована будущая траектория.
Тестирование более узкого локального стоп-лосса полезно, но оно меняет торгуемую гипотезу. Это может улучшить номинальное соотношение прибыли и риска, одновременно увеличивая частоту стоп-лоссов и долю риска, поглощаемую спредом. Сравнивайте фактические чистые результаты, а не только расстояние между точкой входа и целевой точкой на выигрышном графике.
Сравните брейкер с обычными ретестами поддержки и сопротивления
Полезный контроль — пробой с ретестом уровня без истории ордер-блока, сопоставимый по ширине и возрасту зоны, силе пробоя и расстоянию входа. Если после такого сопоставления брейкер не улучшает результаты, полезным элементом может быть сам ретест, а не происхождение блока.
Покажите всю исходную совокупность: первоначальные блоки, нарушения, последующие ретесты, подтверждения и исполнения. Сохраняйте зоны, исчезнувшие с итогового графика. Повторные прогоны по растущим префиксам данных должны подтвердить, что исторические метки смены роли не участвовали в решениях до момента, когда стали известны.
Разделяйте данные по времени; все производные события одного родительского блока должны оставаться в одной части валидации. Проверяйте соседние значения TTL и буфера, правила первого касания и допущения об издержках. Один удачный график после события не оценивает вероятность выигрыша всего автомата состояний, особенно если исходный блок сначала дал убыток.
Частые ошибки
Удаление первоначальной убыточной сделки
Позднейшая прибыль по брейкеру не отменяет предшествующий убыток по блоку.
Вход в исторической точке привязки
Зона, нарисованная на прошлых барах, не обязательно была доступна для торговли в тот момент.
Несколько имен умножают один риск
BOS, брейкер и ретест могут описывать одно исходное событие.
Список проверки перед использованием метода
Отмечайте пункты после проверки на своих данных. Прогресс сохраняется в этом браузере и не подтверждает прибыльность стратегии.
Частые вопросы
Нужно ли торговать каждый нарушенный блок как брейкер?
Нет. Нарушение создаёт кандидата; отсутствие ретеста, истечение срока или новое нарушение могут не допустить входа.
Обязателен ли предварительный сбор ликвидности?
В этом базовом варианте смены роли зоны не обязателен. Условие сбора ликвидности создаёт дополнительную версию, требующую отдельного теста.
Источники исследования
Каждый источник подтверждает указанное рядом определение или доказательство. Псевдокод, искусственные примеры и предлагаемые параметры требуют отдельной проверки.
- Order Blocks & Breaker BlocksLuxAlgo. Изучены оригинальное описание и предупреждение о метках, нанесённых на прошлое задним числом; подтверждённой истории доходности нет. Проверено: .
- RepaintingTradingView. Изучены время доступности информации и поведение отображения. Проверено: .
- Futures Order TypesCME Group. Изучена механика ордеров для различения подтверждения сигнала и исполнения. Проверено: .
Связанные методы
Примечание о рисках
Материал предназначен для обучения и планирования исследований, а не является финансовой рекомендацией. Backtest моделирует прошлые данные, не гарантирует будущую доходность и не совершает реальные сделки. Методы библиотеки не обязательно реализованы в приложении. См. методологию и учебный центр.
Проверьте правила, прежде чем рисковать реальным капиталом
Проверьте возможности приложения, данные и каждую смоделированную сделку; сложные детекторы могут потребовать отдельной реализации.
Скачать Backtest в App Store