﻿---
title: "Como escolher uma janela TWAP"
description: "Escolha o período retrospectivo do TWAP testando custo de manipulação, profundidade, atraso, observações disponíveis e valor em risco do protocolo, em vez de adotar uma duração universal."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Como escolher uma janela TWAP

> Somente para fins educacionais; não é recomendação de investimento nem de segurança. Um oráculo de preços mal projetado pode causar liquidações indevidas, empréstimos subcolateralizados e perdas do protocolo.

<a id="answer"></a>

## Resposta direta

Não existe uma janela TWAP universalmente segura. Escolha a **janela mais curta que ainda torne uma manipulação lucrativa impraticável para o pool e o protocolo específicos** e confirme que o atraso continua aceitável durante um movimento real de preço. Uma janela maior normalmente exige que o atacante influencie o mercado por mais tempo, mas também mantém preços antigos na média. Ela não compensa liquidez escassa ou fora da trajetória relevante, valor em risco excessivo ou integração defeituosa.

A seleção é um exercício de orçamento de risco, não uma escolha entre 5 minutos, 30 minutos ou 1 hora. Documente pool e método de média, erro e atraso máximos, valor extraível, custo do ataque, histórico disponível e comportamento de contingência. Refaça a análise quando mudarem liquidez, incentivos, produção de blocos, limites de garantia ou estrutura do mercado.

<a id="mechanism"></a>

## Como funciona

Um oráculo acumulador registra o preço ao longo do tempo. Para um acumulador aritmético, a média entre `t1` e `t2` é:

`TWAP(t1,t2) = (cumulativePrice(t2) - cumulativePrice(t1)) / (t2 - t1)`

O Uniswap v2 acumula o preço no início de cada bloco e o consumidor salva dois valores. O Uniswap v3 salva observações de ticks cumulativos; converter o tick médio produz uma média **geométrica** ponderada pelo tempo. Método, direção da cotação, capacidade, arredondamento e atualização integram a especificação. Nem todo TWAP é uma média aritmética de amostras spot.

Use este processo:

1. **Defina a função de perda.** Registre o efeito sobre empréstimo, liquidação, emissão, resgate ou liquidação contratual e estabeleça erro e atraso máximos nas altas e nas quedas.
2. **Meça a liquidez executável.** Modele reservas, taxas e liquidez ativa por toda a trajetória de preço do ataque. TVL e volume recente não provam resistência por si sós.
3. **Limite o ganho do atacante.** Inclua limites de garantia e empréstimo, bônus de liquidação, posições abertas, composição com outros protocolos e lucro antes da pausa. Compare o custo com todo o valor extraível.
4. **Modele ataques viáveis.** Teste distorções de um e vários blocos, capital flash, controle do proponente ou da ordem, arbitragem, back-running, congestionamento e desmontagem. Pesquisas mostram que a hipótese de custo linear com a janela pode falhar contra atacantes mais fortes.
5. **Varra as janelas candidatas.** Simule saltos históricos e trajetórias adversárias para cada duração. Descarte as que permitam manipulação lucrativa ou preços inaceitavelmente antigos.
6. **Adicione controles independentes.** Use limites de exposição, verificações contra uma referência independente, limites de obsolescência, garantias conservadoras e regras testadas de pausa ou contingência. Eles limitam perdas, mas não tornam segura uma fonte insegura.

O resultado é específico do pool, faixa de taxa, blockchain, implementação, par e estado do protocolo. Copiar 30 minutos não copia a liquidez nem os limites de perda de outro protocolo.

<a id="example"></a>

## Exemplo

Suponha um TWAP aritmético simplificado e um preço que muda instantaneamente de `100` para `70` e permanece em `70`. Após 15 minutos, a janela móvel de 30 minutos contém 15 minutos em cada preço:

`(15 x 100 + 15 x 70) / 30 = 85`

Após 30 minutos, as observações antigas de `100` saem e o TWAP chega a `70`. Uma janela de 5 minutos chega a `70` após 5 minutos, mas o atacante também precisa sustentar a distorção por menos tempo. Em empréstimos, avaliar garantias perto de `85` quando o mercado executável está perto de `70` pode atrasar a liquidação e gerar dívida incobrável; outro uso pode aceitar um valor mais lento.

O exemplo isola apenas o atraso, não estima o custo de manipulação, e `85` não se aplica a uma média geométrica. Uma revisão real deve reproduzir a fórmula exata com observações, liquidez ativa, taxas, sequência de blocos e posições.

<a id="risks"></a>

## Riscos e controles

- **Janela curta demais:** poucos blocos distorcidos podem tornar o ataque lucrativo. Fortaleça fonte ou mercado, reduza a exposição ou diversifique a referência.
- **Janela longa demais:** o oráculo atrasa um salto real, posterga liquidações na queda ou subestima garantias na alta. Meça o pior atraso e use parâmetros conservadores.
- **Liquidez mal medida:** o TVL pode estar inativo, concentrado, unilateral ou fora da trajetória. Use profundidade executável nos ticks e preços relevantes.
- **Falha de observação:** pouco histórico, dados antigos, capacidade não inicializada, horário, pool ou direção errados invalidam o cálculo. Reverta ou entre em estado seguro documentado; não substitua silenciosamente.
- **Modelo incompleto do atacante:** liquidez flash, proponente de vários blocos, ordenação e lucros entre protocolos reduzem o custo líquido. Faça testes de estresse; “taxa vezes minutos” não é prova.
- **Mudança de governança e mercado:** migração, taxas, novas garantias, limites maiores, upgrades ou troca de blockchain podem invalidar o teste. Monitore entradas e defina revisão obrigatória.
- **Falha da contingência:** uma fonte independente pode ter cobertura, decimais, atraso e falhas diferentes. Defina quando pausar, rejeitar, limitar ou trocar e teste o caminho on-chain.

Antes da implantação, publique unidade, direção, método, janela, histórico mínimo, critérios do pool, limites e comportamento de falha. Depois, monitore o desvio da referência e os dados econômicos do modelo de ataque.

<a id="misconceptions"></a>

## Erros comuns

- **“Uma janela maior é sempre mais segura.”** Pode alongar o ataque, mas aumenta o atraso e não corrige liquidez fraca nem um modelo incompleto.
- **“Um TWAP de 30 minutos é uma garantia do setor.”** A duração é apenas um parâmetro entre profundidade, liquidez ativa, taxas, blocos, fórmula e valor em risco.
- **“Flash loans não afetam o TWAP.”** Eles removem restrições de capital na transação. O resultado depende da amostragem, da parte influenciável e da lógica ao redor.
- **“TVL alto significa custo de manipulação alto.”** Só a liquidez executável na trajetória relevante resiste diretamente à operação modelada.
- **“TWAP é o preço atual do mercado.”** É a média de estados on-chain históricos de um mercado específico, portanto tem atraso intencional e pode não representar o mercado amplo.

<a id="related"></a>

## Tópicos relacionados

- [Pool de liquidez](/crypto/liquidity-pool/)
- [Liquidação](/crypto/liquidation/)
- [Ataques a oráculos](/crypto/oracle-attack/)
- [Preços de oráculo desatualizados](/crypto/oracle-price-staleness/)
- [Oráculo TWAP](/crypto/oracle-twap/)

<a id="sources"></a>

## Fontes

- [Uniswap v2 Core](https://docs.uniswap.org/whitepaper.pdf) - Uniswap (acesso: 2026-08-21)
- [Uniswap v3 Core](https://app.uniswap.org/whitepaper-v3.pdf) - Uniswap (acesso: 2026-08-21)
- [Uniswap v3 TWAP Oracles in Proof of Stake](https://blog.uniswap.org/uniswap-v3-oracles) - Uniswap Labs (acesso: 2026-08-21)
- [TWAP Oracle Attacks: Easier Done than Said?](https://doi.org/10.1109/ICBC54727.2022.9805499) - IEEE (acesso: 2026-08-21)

Source: https://wiki.fcontext.com/pt-br/crypto/twap-window-selection/index.mdx
