Зміст статті

Докази та сфера застосування

В оригінальному джерелі публікується детектор FVG з додатковими умовами. У цій статті базова геометрія відокремлена від запропонованих фільтрів і не містить незалежної перевірки коефіцієнтів заповнення чи прибутковості торгівлі.

Дані та ринкиOHLC із відомим кроком ціни й узгодженими правилами сесій. Для реальних угод усередині зони або точного профілю обсягу потрібні записи окремих угод.
Таймфрейми дослідженняМожна досліджувати будь-який вибраний інтервал бару, але зони вищих таймфреймів стають придатними лише після завершення третьої свічки вищого таймфрейму.
Межі 100 і 101.20 утворюють FVG; пізніше повернення досягає 100.50, після чого показано умовну реакцію ціни.Відкрити ілюстрацію в повному розмірі
Синтетичний шлях подій з використанням екстремумів A/B/C, а не послідовності фактичних закриттів свічок. FVG охоплює 100–101.20; тестування на історичних даних не представлено.

Практична послідовність дій

Порядок дій: Fair Value Gap: три свічки, строк життя зони та вхід після ретесту
Повні кроки наведено нижче. На кожному етапі потрібно записати причину відхилення, якщо бракує даних або не виконано умови.
  1. Дочекайтеся завершення свічки CГеометрію трьох свічок необхідно знати.
  2. Опублікувати фіксовані межіЗбережіть початкову зону й час її допустимого використання.
  3. Відстежуйте прапорці взаємодіїРозрізняйте вхід у зону, дотик середини й проходження всієї зони.
  4. Застосуйте одну модель входуВиставлений лімітний ордер у середині або пізніше підтвердження закриттям.
  5. Вимірювання результатів за горизонтомЗберігайте скасування зон, невиконані ордери та зони з неповним спостереженням.

Етикетка не встановлює справедливої вартості

Для послідовних свічок A, B та C бичачий FVG існує, якщо мінімум C вищий за максимум A. Інтервал між ними утворює зону. Протягом свічки B торгівля могла пройти весь інтервал; OHLC не доводить відсутності угод у ньому. Щоб спостерігати ціни без угод, потрібні дані окремих угод.

Детектор LuxAlgo додає умову ціни закриття середньої свічки й поріг [1]. Мінімальна версія тут спочатку фіксує геометрію, а фільтри закриття середньої свічки, імпульсного зміщення та BOS розглядає окремо. Так можна визначити, чи корисний фільтр, чи просто малює менше прямокутників.

Трьосвічковий FVG також відрізняється від нічного розриву. Один описує зв'язок між барами, а інший - розрив між сесіями. Якщо вони перекриваються, збережіть прапорець gap_session, а не об'єднуйте їх статистику заповнення, ніби вони обов'язково мають один спільний механізм.

Опублікувати зону після третьої свічки

Для бичачої зони вимагайте L[t]>H[t−2] і зберігайте [H[t−2],L[t]]. Для ведмежої — H[t]<L[t−2], зберігайте [H[t],L[t−2]]. Використовуйте завершені бари. Пропонований фільтр розміру: width≥max(2 ticks,0.15ATR[t−1]); зберігайте raw_fvg та eligible_size окремо, щоб відхилені малі зони залишалися перевірюваними.

Створіть zone_id, created_at та eligible_from=t+1. Заморозьте обидві початкові межі навіть після того, як ціна ввійде в зону. Графік може відображати зменшуваний незаповнений залишок, але зберігайте residual_zone окремо, щоб він не міг перезаписати початковий вхід та стоп. Запишіть ширину в одиницях ATR, вік, напрямок та контекст тренду, відомий під час створення.

Для бичачої зони частковий дотик — вхід ціни в інтервал; midpoint_touch означає low≤midpoint, full_fill — low≤zone_low. Це прапорці взаємодії. Пропонована інвалідація: close<zone_low−b; тому проходження всієї зони тінню свічки не скасовує її автоматично. Інвалідація за тінню — інший експеримент.

Задайте пріоритет подій для вже виставленого ордера. Пізніший бар може торкнутися середини, перетнути стоп і закритися під зоною. Скасування за закриттям перед урахуванням внутрішньобарних виконань помилково видалить збиткову угоду. Відтворіть послідовність або застосуйте документоване консервативне правило.

У показаній версії зафіксуйте b=max(2 ticks,0.05×pre-creation ATR) для інвалідації та захисту; reclaim_margin=one tick задає відступ підтверджувального закриття вище zone_high. Різні відступи — дослідницький вибір. За тика 0.05 та ATR 2 маємо b=0.10 і reclaim_margin=0.05. Код обробляє виконання вже виставлених ордерів перед скасуванням за закриттям і всюди використовує індекс поточного бару.

Лише зони ACTIVE можуть давати нові входи. EXPIRED та INVALIDATED — кінцеві стани: пізніше відновлення ціни закриття не оживляє скасовану зону. Перевірка входу виконує наперед задане правило першого дотику чи скінченного числа спроб; сигнал витрачає спробу. Скасування за закриттям не стирає вже здійсненого виконання.

on_completed_bar(t):
  process_resting_order_events_up_to_close(t,respect_order_expiry=True)
  for zone in active_zones_published_before_bar(t):
    if t > zone.created_at+20:
      zone.state = EXPIRED; cancel_future_orders(zone); continue
    record_partial_mid_full_touches(zone.original_bounds,t)
    if C[t] < zone.low-zone.b:
      zone.state = INVALIDATED; cancel_future_orders(zone); continue
    evaluate_registered_entry_version_after_received_close(zone,t)
    # The registered attempt policy consumes or keeps an otherwise active zone.
  A = ATR14[t-1]
  if not finite_positive(A) or not valid_three_bar_history(t): return
  if L[t] > H[t-2] and L[t]-H[t-2] >= max(2*tick,0.15*A):
    create(zone=[H[t-2],L[t]],known_at=received_close_time(t),
           eligible_from=t+1,b=max(2*tick,0.05*A),reclaim_margin=tick)
# Fills of existing orders precede close-based cancellation.
# The creation candle is never its own post-publication retest.

Вимірюйте імпульс і повернення окремо

Геометрія FVG не потребує обсягу. Одна пропонована ознака порівнює обсяг середньої свічки з медіаною для того самого часу сесії; інша — обсяг повернення з обсягом імпульсу за рівні тривалості. Зони новинного шоку можуть відрізнятися від звичайних; зберігайте контекст події.

Профіль обсягу, який використовується на вході, повинен містити лише угоди, доступні на той момент. Великий обсяг середньої свічки повністю відповідає визначенню FVG; інтервал може мати значну історичну торгівлю. FVG, вузол з низьким обсягом та дисбаланс стакану ордерів, таким чином, є різними характеристиками.

Частка подальшого заповнення належить таблиці результатів, не ознакам на момент створення. Оцінювати нову зону за всією майбутньою історією — витік даних. Те саме стосується відбору лише зон, що лишилися на графіку після видалення скасованих.

Синтетичні приклади середини, повного заповнення та збитку

Нехай максимум A=100, мінімум C=101.20. Зона [100,101.20], середина 100.60. За ATR=2 та tick=0.05 ширина 1.20 перевищує пропонований мінімум 0.30. Зона існує лише після закриття C. Подальше повернення з мінімумом 100.50 і закриттям 101.30 досягає середини, не проходячи весь інтервал.

Версія з підтвердженням вимагає закриття вище zone_high+0.05. Подальша виконувана купівля за 101.35, стоп 99.90 і ціль 104.25 дають ризик 1.45 та потенційний прибуток 2.90, або 2R до витрат. Шлях виграшний, лише якщо ціль можна виконати раніше спрацювання захисту.

Інше повернення з мінімумом 99.60 і закриттям 99.70 і заповнює всю зону, і скасовує її. Стратегія підтвердження за закриттям не має входити з цього бару. Проте вже виставлений buy-limit у середині на 100.60 міг виконатися, а потім закритися за стопом нижче 99.90. Виконання не можна видалити після перегляду остаточного закриття. Якщо ціна не повернулася до TTL, запишіть невиконання, не вигадуючи прибутку чи збитку.

Ліміти середньої точки та підтвердження закриття – це різні угоди

Версія з лімітом середньої точки розміщує свій ордер лише після публікації зони. Їй потрібна модель спреду, черги та дотику проти заповнення. Версія з підтвердженням очікує входу в зону, а потім бичачого закриття вище її верхньої межі. Її вхід зазвичай вищий, але реакція ціни вже спостерігається. Не поєднуйте сприятливу ціну ліміту з ретроспективною вибірковістю версії з підтвердженням.

Базова версія: TTL=20 барів і лише перший допустимий ретест. Дотик на свічці створення не є доступним для торгівлі ретестом після публікації. FVG старшого таймфрейму чекає його закриття з урахуванням доставки даних [2].

Стоп-ордер за межами дальньої межі – це одна модель ризику; структурний коливальний стоп – інша. Змоделюйте фактичний тип ордера [3]. Фіксований 2R, попередній відомий максимум та вихід за часом повинні мати окрему статистику. Протилежний FVG, якого ще не існує, не можна вибрати як цільовий орієнтир у майбутньому.

Для зон, що перекриваються, потрібен однозначний вибір: найновіша придатна зона, найближча межа чи явно об’єднаний інтервал. Збережіть рішення. Вибір середини, що пізніше дала найкращий вхід, створює прихований відбір навіть за причинного розрахунку кожної зони.

Ймовірність заповнення зони не дорівнює прибутковості

Для ймовірності заповнення задайте горизонт, наприклад 10,20 або 50 барів. Зона біля кінця даних має менше часу спостереження, ніж стара. Неповні горизонти позначайте як цензуровані, не як ніколи не заповнені. Окремо звітуйте про час до часткового дотику, середини й повного заповнення.

Порівнюйте FVG із синтетичними зонами, зіставними за шириною, відстанню від ціни та трендом. Ціна часто повертається до попередніх рівнів, тому висока частота дотиків може бути не унікальною для цієї геометрії. Вимірюйте реакцію після першого дотику та дохідність після входу, який реально можна виконати.

Перевіряйте сусідні порогові значення, TTL і правила першого та другого дотику з реалістичними витратами й випадками невиконання заявки. Для стратегії, що чекає рідкісних корекцій, враховуйте дохідність усього капіталу та дні без угод. Висока частка заповнених зон може поєднуватися з поганими торговими результатами, якщо під час повернення в зону ціна зазвичай досягає стопа раніше, ніж рухається до цілі.

Поширені помилки

Припускати відсутність угод у зоні

Середня свічка, можливо, торгувалася протягом усього інтервалу.

Поєднання несумісних переваг входу

Ліміт середньої точки та підтверджене закриття не мають однакової інформації чи шляху заповнення.

Вважати високу частоту заповнення торговою перевагою

Ймовірність торкання сама по собі нічого не говорить про чистий прибуток після входу.

Список перевірки перед застосуванням методу

Позначайте кожен пункт після перевірки на власних даних. Прогрес зберігається в цьому браузері й не засвідчує прибутковість стратегії.

0/7 пунктів

Поширені запитання

Чи обов’язково ціна заповнить кожний FVG?

З визначення не випливає такої гарантії. Виміряна ймовірність потребує фіксованого горизонту, повної вибірки та встановленого значення заповнення.

Чи скасовує зону тінь за дальньою межею?

Ні, за правилом статті скасування визначає закриття свічки. Інвалідація за тінню — окрема версія для незалежного тесту.

Джерела дослідження

Кожне джерело підтверджує визначення або докази, описані поруч. Псевдокод, штучні приклади та запропоновані параметри потребують окремої перевірки.

  1. Fair Value GapLuxAlgo on TradingView. Прочитайте опубліковані умови детектора; частота заповнення його зон не перевірялася незалежно. Перевірено: .
  2. RepaintingTradingView. Ознайомтеся з документацією щодо непідтверджених даних. Перевірено: .
  3. Futures Order TypesCME Group. Читайте механіку біржових ордерів, щоб відрізняти сигнали від виконання. Перевірено: .

Пов’язані методи

Примітка про ризики

Матеріал призначений для навчання й планування досліджень, а не є фінансовою порадою. Backtest моделює минулі дані, не гарантує майбутніх результатів і не здійснює реальних угод. Методи бібліотеки не обов’язково реалізовані в застосунку. Дивіться методологію і навчальний центр.

Перевірте правила, перш ніж ризикувати реальним капіталом

Перевірте можливості застосунку, дані й кожну змодельовану угоду; складні детектори можуть потребувати окремої реалізації.

Завантажити Backtest в App Store