Conteúdo do artigo

Evidências e escopo

A fonte original publica um detector FVG com condições adicionais. Este artigo separa a geometria básica dos filtros propostos e não verificou de forma independente as taxas de preenchimento ou a rentabilidade das negociações.

Dados e mercadosOHLC com incrementos mínimos de preço e tratamento consistente das sessões. Registros de negócios são necessários para medir transações efetivas dentro da zona ou construir um perfil de volume preciso.
Períodos gráficos da pesquisaQualquer intervalo de barras escolhido pode ser pesquisado, mas zonas de um período gráfico maior só se tornam elegíveis após o fechamento da terceira vela desse período.
Os limites em 100 e 101.20 formam um FVG; um retorno posterior atinge 100.50 antes de uma resposta ilustrativa.Abrir ilustração em tamanho completo
Trajetória de evento sintética usando extremos A/B/C, não uma sequência de fechamentos de velas reais. O termo FVG abrange o intervalo 100–101.20; nenhum backtest está representado.

Fluxo de trabalho prático

Fluxo de trabalho de Fair value gap: geometria, ciclo da zona e entradas no reteste
As etapas completas aparecem abaixo. Em cada etapa, dados ausentes ou condições não atendidas exigem o registro de um motivo de rejeição.
  1. Espere a vela C se completarA geometria de três velas deve ser conhecida.
  2. Publicar limites fixosArmazene a zona original e quando ela se torna elegível.
  3. Acompanhe os indicadores de interaçãoDistinga o toque parcial, no ponto médio e na borda oposta.
  4. Aplicar um modelo de entradaOrdem limitada aguardando no ponto médio ou confirmação posterior pelo fechamento.
  5. Medir resultados por horizonteMantenha zonas invalidadas, casos sem execução e observações censuradas.

O rótulo não estabelece um valor justo.

Para velas consecutivas A, B e C, uma zona de alta FVG existe quando a mínima de C está acima da máxima de A. O intervalo entre esses preços forma a zona. A vela B pode ter sido negociada durante todo o intervalo, portanto, afirmar que nenhuma transação ocorreu ali não se justifica pela OHLC. Observações reais de preços vazios requerem dados em nível de negociação.

O detector publicado pela LuxAlgo adiciona uma condição sobre o fechamento da vela intermediária e um limiar [1]. A versão mínima registra primeiro a geometria; depois, trata o fechamento intermediário, o deslocamento e BOS como versões separadas. Isso permite avaliar se um filtro acrescenta valor ou apenas desenha menos retângulos.

Um padrão de três velas FVG também difere de um gap overnight. Um descreve uma relação entre as barras, enquanto o outro descreve uma descontinuidade entre as sessões. Se houver sobreposição, mantenha o indicador gap_session em vez de combinar suas estatísticas de preenchimento como se necessariamente compartilhassem o mesmo mecanismo.

Publique a zona após a terceira vela.

Para uma zona de alta, exija L[t]>H[t−2] e armazene [H[t−2],L[t]]. Para geometria de baixa, exija H[t]<L[t−2] e armazene [H[t],L[t−2]]. Use barras completas. Um filtro de tamanho proposto é width≥max(2 ticks,0.15ATR[t−1]); preserve raw_fvg e eligible_size separadamente para que zonas pequenas rejeitadas permaneçam auditáveis.

Crie zone_id, created_at e eligible_from=t+1. Congele ambos os limites originais mesmo depois que o preço entrar na zona. Um gráfico pode exibir um restante não preenchido diminuindo, mas armazene residual_zone separadamente para que não possa sobrescrever a entrada e o stop originais. Registre a largura em unidades ATR, a idade, a direção e o contexto de tendência conhecido no momento da criação.

Para uma zona de alta, um toque parcial significa que o preço entra no intervalo; midpoint_touch significa low≤midpoint e full_fill significa low≤zone_low. Esses são indicadores de interação. A invalidação proposta é close<zone_low−b, portanto, o preenchimento completo da sombra não invalida automaticamente o intervalo. Uma política de invalidação por sombra é um experimento diferente.

Defina a prioridade do evento para uma ordem em espera existente. Uma barra posterior pode tocar o ponto médio, cruzar um stop e fechar abaixo da zona. Processar a invalidação baseada no fechamento antes da execução intrabarra removeria incorretamente a operação perdedora. Repita a sequência quando possível ou aplique uma convenção conservadora documentada.

Na linha de base ilustrada, fixe b=max(2 ticks,0.05×pre-creation ATR) para invalidação e proteção; use reclaim_margin=one tick na confirmação pelo fechamento acima de zone_high. Essas margens distintas são escolhas de pesquisa. Com tick 0.05 e ATR 2 no exemplo, b=0.10 e reclaim_margin=0.05. O pseudocódigo processa as execuções de ordens existentes antes do cancelamento baseado no fechamento e usa o índice da barra atual em todo o processo.

Somente zonas ACTIVE podem gerar novas entradas. EXPIRED e INVALIDATED são estados terminais; um fechamento posterior de recuperação não reativa uma zona que falhou. O avaliador de entrada deve seguir a política previamente registrada de primeiro toque ou número limitado de tentativas, consumindo uma tentativa ao emitir o sinal. O cancelamento baseado no fechamento não pode apagar uma execução anterior.

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.

Meça o impulso e o retorno separadamente.

A detecção geométrica de FVG não exige volume. Uma variável proposta compara o volume da vela intermediária com a mediana do mesmo horário; outra compara o volume do retorno à zona com o volume do impulso em durações iguais. Zonas criadas durante um choque de notícias podem se comportar de forma diferente das criadas na negociação comum, portanto preserve o contexto.

Um perfil de volume usado na entrada deve conter apenas negociações disponíveis naquele momento. Um grande volume no meio da vela é totalmente consistente com a definição de FVG; o intervalo pode ter um histórico de negociações substancial. FVG, um nó de baixo volume e um desequilíbrio no livro de ordens são, portanto, características diferentes.

A porcentagem de preenchimento final pertence a uma tabela de resultados, não à tabela de características de criação. Usar todo o histórico futuro de uma zona para decidir se ela era atrativa desde o início é um vazamento de informação. A mesma restrição se aplica à seleção apenas das zonas que permanecem visíveis em um mapa após a remoção das zonas invalidadas.

Exemplos de ponto médio sintético, preenchimento completo e perda

Sejam A=100 o máximo e C=101.20 o mínimo. A zona é [100,101.20], com ponto médio em 100.60. Com ATR=2 e tick=0.05, a largura 1.20 excede o mínimo proposto 0.30. A zona existe somente após o fechamento de C. Um retorno posterior com mínimo 100.50 e fechamento 101.30 atinge o ponto médio sem preencher completamente o intervalo.

Suponha que uma versão de confirmação exija um fechamento acima de zone_high+0.05. Uma compra executável subsequente em 101.35, stop em 99.90 e alvo em 104.25 tem risco de 1.45 e recompensa de 2.90 ou 2R antes dos custos. Este é um caminho potencialmente vencedor somente se o alvo se tornar executável antes que a proteção seja acionada.

Outro retorno do preço, com mínima de 99.60 e fechamento de 99.70, preenche totalmente a zona e a invalida. Uma estratégia de confirmação pelo fechamento não deve entrar a partir dessa barra. Porém, uma ordem limitada de compra no ponto médio de 100.60, já pendente, pode ter sido executada e depois encerrada por stop abaixo de 99.90. Não se pode apagar essa execução após examinar o fechamento final. Se o preço não voltar antes do TTL, registre ausência de execução, sem inventar ganho ou perda.

Ordens no ponto médio e confirmação pelo fechamento são operações distintas

A versão com ordem limitada no ponto médio envia a ordem somente após a publicação da zona. Ela precisa de modelos de spread, fila e toque versus execução. A versão por confirmação espera o preço entrar na zona e depois um fechamento de alta acima do limite superior. Sua entrada costuma ocorrer a um preço maior, mas a reação do preço já foi observada. Não combine o preço favorável da ordem limitada com a seleção retrospectiva da versão por confirmação.

A linha de base proposta usa TTL=20 barras e somente o primeiro reteste elegível. Um toque durante a vela de criação não é um reteste negociável após a publicação. Um FVG de período gráfico maior precisa aguardar o fechamento desse período conforme o momento de disponibilização do feed [2].

Um stop além da borda oposta é um modelo de risco; um stop no swing estrutural é outro. Simule o tipo real de ordem [3]. Alvo fixo de 2R, máxima anterior já conhecida e saída por tempo devem ter estatísticas separadas. Um FVG oposto que ainda não existe não pode ser escolhido como alvo futuro pretendido.

Zonas sobrepostas exigem uma escolha determinística: a zona elegível mais recente, o limite mais próximo ou um intervalo explicitamente combinado. Armazene a decisão. Escolher o ponto médio que posteriormente ofereceu a melhor entrada cria uma seleção oculta, mesmo que cada zona individual tenha sido calculada causalmente.

Probabilidade de preenchimento não é rentabilidade

Ao informar a probabilidade de preenchimento, especifique períodos de 10,20 ou 50 barras, por exemplo. Uma zona criada perto do fim dos dados não teve o mesmo período de observação de uma zona antiga. Marque os períodos incompletos como censurados, em vez de assumir que a zona nunca foi preenchida. Informe separadamente o tempo até o toque parcial, no ponto médio e completo.

Compare os FVGs com zonas sintéticas correspondentes em largura, distância do preço e tendência. Muitos preços são revisitados, portanto, uma alta taxa de toque pode não ser exclusiva dessa geometria. Meça a resposta após o primeiro toque e o retorno após uma entrada executável.

Teste limiares próximos, TTLs e políticas de primeiro versus segundo toque, incluindo custos realistas e casos sem execução. Inclua retornos sobre o capital total e dias inativos para estratégias que esperam retrações raras. Uma alta proporção de zonas preenchidas pode coexistir com resultados ruins se o retorno do preço atingir o stop antes de seguir para o alvo.

Erros comuns

Supondo que nenhuma negociação tenha ocorrido.

Durante a vela intermediária, podem ter ocorrido negócios em todo o intervalo de preços.

Combinando vantagens de entrada incompatíveis

A ordem limitada no ponto médio e a confirmação pelo fechamento não têm as mesmas informações nem o mesmo percurso de execução.

Tratar alta taxa de preenchimento como vantagem lucrativa

A probabilidade de toque, por si só, não diz nada sobre os retornos líquidos após a entrada.

Lista de verificação antes de usar este método

Marque cada item após verificá-lo nos seus dados. O progresso fica salvo neste navegador; isso não certifica que a estratégia seja lucrativa.

0/7 itens

Perguntas frequentes

Todas as lacunas de valor justo devem ser preenchidas?

A definição não garante isso. Uma probabilidade medida requer um horizonte fixo, uma amostra completa e um significado declarado para o preenchimento.

Um pavio que atravessa a extremidade oposta invalida a zona?

Não pela regra deste artigo, que se baseia no fechamento. Invalidar pelo pavio é outra versão e exige avaliação independente.

Fontes de pesquisa

Cada fonte sustenta a definição ou evidência descrita ao lado. O pseudocódigo, os exemplos sintéticos e os parâmetros propostos exigem validação separada.

  1. Fair Value GapLuxAlgo on TradingView. Leia as condições de detecção publicadas; sua taxa de preenchimento não foi testada de forma independente. Verificado em: .
  2. RepaintingTradingView. Leia a documentação referente aos dados não confirmados. Verificado em: .
  3. Futures Order TypesCME Group. Leia a mecânica de ordens da bolsa para distinguir sinais de execuções. Verificado em: .

Métodos relacionados

Nota de risco

Este conteúdo apoia a educação e o planejamento de pesquisas, não constitui aconselhamento financeiro. O Backtest é uma simulação histórica, não garante desempenho futuro e não executa operações reais. Os métodos desta biblioteca não são necessariamente recursos disponíveis no aplicativo. Consulte a metodologia e a central de aprendizado.

Valide as regras antes de arriscar capital real

Verifique o suporte do aplicativo, os dados e cada operação simulada; detectores avançados podem exigir uma implementação própria.

Baixe o Backtest na App Store