Introdução:
Se você já passou algumas horas olhando gráficos de velas, percebeu que o mercado nunca se move em linha reta. Ele sobe caindo e cai subindo. Parece caos — mas e se esse caos seguir um padrão psicológico repetitivo? É exatamente o que propõe a Teoria das Ondas de Elliott. Neste guia, você vai aprender a teoria do zero, dominar suas três regras invioláveis e receber um indicador gratuito em Pine Script para identificar pivôs no TradingView.
O Que É a Teoria das Ondas de Elliott?
Criada por Ralph Nelson Elliott na década de 1930, a teoria afirma que os mercados financeiros se movem em ciclos guiados pela psicologia de massa. Quando os investidores estão otimistas, os preços sobem em ondas; quando o medo domina, os preços corrigem.
O grande insight de Elliott foi perceber que esses movimentos formam padrões fractais — estruturas que se repetem dentro de si mesmas em diferentes tempos gráficos. A mesma forma que você vê no gráfico semanal aparece no de 15 minutos, só que menor.
A Estrutura Clássica 5-3
No modelo básico, uma tendência completa é formada por 8 ondas divididas em duas fases:
- Fase impulsiva (a favor da tendência principal): 5 ondas, numeradas 1, 2, 3, 4 e 5.
- Fase corretiva (contra a tendência principal): 3 ondas, rotuladas A, B e C.

Diagrama educativo do ciclo 5-3, ondas de impulso e correção. Imagem gerada por IA.
Conhecendo as Ondas
- Onda 1: O movimento inicial. Geralmente um rali tímido enquanto o mercado ainda acredita que o preço caiu demais.
- Onda 2: Realização de lucros. O preço recua — mas nunca abaixo do início da Onda 1.
- Onda 3: A queridinha dos traders. A onda mais forte e longa. Todo mundo percebe a tendência e entra comprando.
- Onda 4: Uma correção lateral ou rasa. Parte do lucro é realizada, mas o otimismo continua.
- Onda 5: O topo final. Movido pela euforia — e muitas vezes por notícias que chegam atrasadas. O público geral compra o topo por puro FOMO.
- Ondas A, B e C: A ressaca do mercado. O preço começa a derreter (A), tenta uma última subida sem força (B) e desaba na correção final (C).
Três Regras de Ouro (Invioláveis)
Para contar as ondas como um profissional, memorize estas três regras. Se qualquer uma delas quebrar, sua contagem está errada:
- A Onda 2 nunca corrige mais que 100% da Onda 1. Ela não pode fazer fundo abaixo do início do ciclo.
- A Onda 3 nunca é a mais curta das três ondas de impulso (1, 3 e 5). Normalmente, é a maior.
- A Onda 4 nunca entra no território de preço da Onda 1. O fundo da Onda 4 não pode se sobrepor ao topo da Onda 1.

Painel apresentando as três regras de ouro, sobreposto a um gráfico. Imagem gerada por IA.
O Casamento Perfeito: Ondas de Elliott + Fibonacci
Se as Ondas de Elliott são o mapa que mostra onde você está, as ferramentas de Fibonacci são a bússola que calcula até onde o mercado vai andar. Na prática, usamos duas ferramentas: a retração (para medir correções) e a projeção (para medir impulsos).
Medindo as correções (Retração de Fibonacci):
- Onda 2: costuma ser profunda, corrigindo entre 50% e 61,8% da Onda 1. Se o preço segurar nessa região com força compradora, você achou uma mina de ouro.
- Onda 4: é mais rasa e lateral, respeitando tipicamente o nível de 38,2% da Onda 3 (raramente chegando aos 50%).
Projetando os alvos de lucro (Projeção de Fibonacci):
- Alvo da Onda 3: a projeção clássica é de 161,8% do tamanho da Onda 1. Em mercados eufóricos (como o cripto), esticar até 261,8% não é raro.
- Alvo da Onda 5: projete o tamanho da Onda 1 a partir do fundo da Onda 4. O topo final comum fica em 61,8% ou 100% dessa medida.

Níveis de Fibonacci no gráfico, com alvos para cada onda. Imagem gerada por IA.
💡 Dica de trader: plote a retração na Onda 1; se o preço segurar cravado em 61,8%, seu gatilho de entrada dispara no rompimento do topo da Onda 1. Seu alvo final: a projeção de 161,8%. Simples, matemático e altamente visual.
Indicador Gratuito para o TradingView: Rastreador de Pivôs ZigZag
Identificar essas ondas a olho nu é difícil no começo. Este indicador em Pine Script conecta os topos e fundos significativos do mercado, elimina o ruído e numera as ondas automaticamente — facilitando enxergar a estrutura de Elliott. Abra o Pine Editor na parte inferior do TradingView, cole o código e clique em “Adicionar ao gráfico”:
//@version=5
indicator("Elliott Blog - ZigZag Wave Counter", overlay=true)
// ── User settings ─────────────────────────────────────────────
depthInput = input.int(10, minval=1, title="Depth (Lookback Candles)")
deviationInput = input.float(5.0, minval=0.1, title="Minimum Deviation (%)")
// ── Confirmed pivots ──────────────────────────────────────────
ph = ta.pivothigh(high, depthInput, depthInput)
pl = ta.pivotlow(low, depthInput, depthInput)
newPivotPrice = na(ph) ? pl : ph
newPivotIsHigh = not na(ph)
pivotBar = bar_index - depthInput
// ── ZigZag + wave counting state ─────────────────────────────
var float lastPrice = na
var int lastBar = na
var bool lastIsHigh = na
var int seqIdx = 0
var line lastLine = na
var label lastLabel = na
var string[] waveLabels = array.from("1", "2", "3", "4", "5", "A", "B", "C")
farEnough = na(lastPrice) or math.abs(newPivotPrice - lastPrice) / lastPrice * 100 >= deviationInput
sameType = not na(lastIsHigh) and newPivotIsHigh == lastIsHigh
if not na(newPivotPrice) and farEnough
if sameType
// Same direction as last pivot: extend it instead of stacking labels
line.set_xy2(lastLine, pivotBar, newPivotPrice)
label.set_xy(lastLabel, pivotBar, newPivotPrice)
lastPrice := newPivotPrice
lastBar := pivotBar
else
string waveTxt = na
if na(lastIsHigh)
// First pivot: a low opens the cycle, a high already counts as Wave 1
waveTxt := newPivotIsHigh ? array.get(waveLabels, 0) : "0"
seqIdx := newPivotIsHigh ? 1 : 0
else
waveTxt := array.get(waveLabels, seqIdx % 8)
seqIdx += 1
bool isCorrection = waveTxt == "A" or waveTxt == "B" or waveTxt == "C"
if not na(lastBar)
lastLine := line.new(lastBar, lastPrice, pivotBar, newPivotPrice, color=color.red, width=2)
lastLabel := label.new(pivotBar, newPivotPrice, waveTxt, style=newPivotIsHigh ? label.style_label_down : label.style_label_up, color=isCorrection ? color.new(color.orange, 20) : color.new(color.red, 20), textcolor=color.white, size=size.normal)
lastPrice := newPivotPrice
lastBar := pivotBar
lastIsHigh := newPivotIsHigh
Nota técnica: o indicador rotula cada pivô confirmado automaticamente, seguindo a sequência de Elliott 1-2-3-4-5 para as ondas de impulso e A-B-C para as correções (rótulos de impulso em vermelho, rótulos de correção em laranja). O “Desvio Mínimo” é a variação percentual necessária para desenhar um novo traço, enquanto a “Profundidade” define quantas velas o script olha para trás para confirmar um pivô. A contagem é estrutural — segue a alternância de topos e fundos — portanto confirme sempre as três regras de ouro antes de operar uma contagem de ondas.

TradingView com o indicador ZigZag plotado sobre os candles. Imagem gerada por IA.
Como Aplicar no Seu Trading
- Opere a Onda 3: espere a Onda 1 se formar e a Onda 2 corrigir. Quando o preço romper o topo da Onda 1, o gatilho da Onda 3 foi acionado — sua melhor oportunidade de compra.
- Deixe o Fibonacci ser seu melhor amigo: a Onda 2 costuma corrigir 50–61,8% da Onda 1; a Onda 3 costuma projetar 161,8%.
- Gerencie o risco: se você comprar o rompimento da Onda 3, seu stop loss fica logo abaixo do fundo da Onda 2. Lembre-se da regra número um!
Considerações Finais
Dominar a Teoria das Ondas de Elliott exige tempo de tela e paciência — mas ler o mercado por essa ótica coloca você quilômetros à frente da maioria dos traders iniciantes. Use o indicador acima para treinar o olhar nos gráficos históricos, conte as ondas e observe como a psicologia de massa se repete.
Qual ativo você vai analisar primeiro com as Ondas de Elliott? Comente aqui embaixo!