A volatilidade de ativos financeiros é a medida de risco mais usada no mercado: o desvio padrão dos retornos, que diz quanto o preço oscila em torno do que se espera dele. Ela tem uma particularidade que a diferencia do preço e do retorno: ninguém a observa. O que a bolsa registra são preços, e a volatilidade precisa ser estimada a partir deles.
Neste tutorial, usamos os pregões da VALE3 de janeiro de 2015 a agosto de 2026 para mostrar o que a volatilidade é, quais regularidades os retornos exibem em qualquer mercado (os chamados fatos estilizados) e como se constrói a medida mais comum na prática, o desvio padrão anualizado em janela móvel. O resultado é o gráfico abaixo.

Três coisas saltam do gráfico: a volatilidade vem em ondas, com picos em 2016, no início de 2019 e em março de 2020; depois de cada pico ela volta a um nível habitual; e o tamanho da janela muda a leitura, porque a janela curta reage rápido e a longa carrega o choque por um ano inteiro. O tutorial a seguir explica cada um desses pontos e mostra como se chega a esse gráfico.
Quer o código para medir a volatilidade de qualquer ação em Python?
Coletar os preços na B3, calcular os log-retornos, testar os fatos estilizados com a função de autocorrelação e o teste de Ljung-Box, e construir o desvio padrão anualizado rolante com os gráficos prontos. O notebook em Python vai para os assinantes do Boletim AM. Assine, é gratuito, e receba no seu e-mail.
O que é volatilidade e por que ela precisa ser estimada
Em finanças, risco é a incerteza sobre o retorno futuro de um ativo. A volatilidade quantifica essa incerteza pelo desvio padrão dos retornos: um valor alto indica uma distribuição larga, em que o preço pode subir e cair muito; um valor baixo indica uma distribuição estreita, em que o preço varia pouco. Duas ações com o mesmo retorno médio e volatilidades diferentes são investimentos diferentes, e é a volatilidade que distingue as duas.
Como a volatilidade não é observada, ela é estimada a partir do que o mercado registra. Conforme a fonte usada, fala-se em três tipos de volatilidade, que medem o mesmo fenômeno por caminhos diferentes e, por isso, costumam se mover juntas.

O VIX ilustra a forma que toda medida de volatilidade assume. Os picos de 2008 e de 2020 correspondem à crise financeira e à pandemia; fora das crises, o índice passa a maior parte do tempo em níveis baixos. Sobe de forma abrupta, desce aos poucos e volta ao nível habitual. Essa forma não é acaso: ela resulta das regularidades dos retornos que veremos a seguir.
Por que a volatilidade de ativos é calculada sobre retornos
A primeira decisão do método é trabalhar com retornos, e não com preços. O preço não tem média estável: ele sobe ou desce de forma persistente, e o desvio padrão de uma série assim depende inteiramente do período escolhido. O retorno oscila em torno de um valor próximo de zero, o que permite tratar média e desvio padrão como características do ativo.

Entre as formas de medir o retorno, o tutorial usa o log-retorno: a diferença entre o logaritmo do preço de hoje e o logaritmo do preço de ontem. Para variações diárias, que raramente passam de alguns por cento, ele é quase igual ao retorno simples. A vantagem está na agregação: o log-retorno de um mês é a soma dos log-retornos dos dias, e é essa propriedade que permite, mais adiante, converter a volatilidade diária em anual com uma multiplicação.
Os preços vêm do Yahoo Finance já ajustados por dividendos e desdobramentos. Sem esse ajuste, o pagamento de um dividendo apareceria como uma queda de preço e contaminaria o retorno daquele dia.

O gráfico dos retornos já adianta o assunto central. Os retornos oscilam em torno de zero, mas a amplitude muda ao longo do tempo: 2015-2016 e março de 2020 concentram movimentos de dois dígitos em um único pregão, enquanto outros períodos passam meses sem uma variação de 5%. A queda de 28% em 28 de janeiro de 2019, no pregão seguinte ao rompimento da barragem de Brumadinho, é o maior movimento da amostra e um choque isolado.
Os fatos estilizados dos retornos
Fatos estilizados são regularidades estatísticas que se repetem em ações, índices, moedas e commodities, em mercados e décadas diferentes. Rama Cont os catalogou em 2001, e eles servem de critério para os modelos: um modelo de volatilidade é julgado pela capacidade de reproduzi-los. Verificamos cinco deles nos dados da VALE3.
1. Os retornos não são autocorrelacionados, mas os retornos ao quadrado são
A função de autocorrelação (ACF) mede a correlação entre a série e ela mesma defasada em alguns dias. Se os retornos fossem previsíveis a partir do passado, a ACF mostraria barras fora da faixa de confiança. O tutorial compara a ACF dos retornos com a ACF dos retornos ao quadrado, porque o quadrado apaga o sinal e mantém a magnitude: a autocorrelação dos quadrados mede se a intensidade dos movimentos é persistente, mesmo que a direção não seja.

O teste de Ljung-Box formaliza a leitura. A hipótese nula é que as primeiras autocorrelações são conjuntamente iguais a zero; um p-valor abaixo de 0,05 rejeita essa hipótese e indica dependência serial. A tabela compara o teste nas duas séries.
| Defasagens | Retornos: estatística Q | Retornos: p-valor | Retornos²: estatística Q | Retornos²: p-valor |
|---|---|---|---|---|
| 5 | 13,9 | 0,016 | 492,5 | 0,000 |
| 10 | 26,0 | 0,004 | 636,1 | 0,000 |
| 20 | 42,5 | 0,002 | 789,0 | 0,000 |
Teste de Ljung-Box nos log-retornos da VALE3 e nos retornos ao quadrado, 2015 a 2026. Fonte: B3 via Yahoo Finance.
Nos retornos, nenhuma autocorrelação passa de 0,06 em módulo. O teste rejeita a hipótese nula a 5%, mas por pouco, e a estatística Q é modesta: o que sobra de dependência linear é pequeno demais para sustentar uma estratégia depois dos custos de transação. Nos retornos ao quadrado, o quadro muda de escala. A primeira autocorrelação é de 0,22, todas permanecem positivas por 30 dias e a estatística Q é 35 vezes maior, com p-valor igual a zero.
Em termos estatísticos, a série de retornos é serialmente pouco correlacionada, mas dependente: o passado quase não informa a direção do próximo movimento, mas informa o seu tamanho. Essa é a característica que os modelos de volatilidade são construídos para capturar.
2. A volatilidade forma aglomerados
A autocorrelação dos quadrados tem uma tradução visual: os dias de grande oscilação aparecem agrupados no tempo, e os dias calmos também. A literatura chama esse padrão de volatility clustering. O gráfico mostra o retorno absoluto de cada dia, uma medida bruta da volatilidade diária, e a média móvel de 22 pregões dessa série, que acompanha o nível de cada período.

Em 2015 e 2016, quando o minério de ferro caiu abaixo de US$ 40 e a Samarco rompeu a barragem de Mariana, a média móvel do retorno absoluto ficou meses acima do nível habitual. Em janeiro de 2019 veio Brumadinho, e em março de 2020, a pandemia. Entre esses episódios, a média móvel passa longos períodos em nível baixo.
3. As caudas são pesadas
Se os retornos seguissem uma distribuição normal com a média e o desvio padrão observados, um movimento além de 3 desvios padrão ocorreria em 0,27% dos dias, cerca de 1 pregão a cada 370. Na VALE3, o limite de 3 desvios fica em ±7,9% ao dia. A normal previa 8 pregões além desse limite nos 11 anos da amostra; ocorreram 44, mais de cinco vezes a frequência prevista.

A curtose resume a diferença. Na normal, o excesso de curtose é zero; na VALE3 ele é de 9, o que indica massa de probabilidade concentrada no centro e nas caudas, com menos peso nas regiões intermediárias. Para a gestão de risco, a consequência é direta: uma medida que supõe normalidade, como o desvio padrão usado sozinho, subestima a frequência das perdas grandes.
4. Quedas e altas não têm o mesmo efeito
A volatilidade reage de forma diferente a uma alta forte e a uma queda forte de mesma magnitude, com a queda produzindo o maior impacto. A explicação clássica é o efeito alavancagem, proposto por Fischer Black em 1976: uma queda no preço reduz o valor de mercado da empresa, aumenta a razão entre dívida e patrimônio e torna a ação mais arriscada. Outra explicação é o comportamento dos investidores, que reagem a perdas com mais intensidade do que a ganhos.
O tutorial verifica o efeito de duas formas: pela correlação entre o retorno de hoje e o retorno ao quadrado dos dias seguintes, e pela comparação da volatilidade dos 22 pregões após uma queda maior que 2 desvios padrão com a volatilidade após uma alta do mesmo tamanho. Na VALE3, o efeito é fraco: 60% de volatilidade anualizada após as quedas fortes contra 56% após as altas fortes, com correlações próximas de zero. Isso é comum em ações de commodities, cujos choques vêm do preço do minério nas duas direções; em índices amplos, como o Ibovespa e o S&P 500, a assimetria costuma ser bem mais nítida.
5. A volatilidade varia num intervalo e reverte à média
Os gráficos do VIX e do retorno absoluto mostram os últimos fatos de uma vez. A volatilidade sobe de forma abrupta em uma crise, mas desce aos poucos, ao longo de meses, em vez de alternar níveis de um dia para o outro. Ela passa a maior parte do tempo numa faixa relativamente estreita, e os valores muito acima dela são episódios curtos. E depois de cada pico, retorna ao nível habitual, o que caracteriza uma série estacionária, com média de longo prazo bem definida.
A consequência prática é que uma volatilidade estimada hoje em nível muito alto tem mais chance de cair do que de subir nos meses seguintes. O desvio padrão rolante, construído a seguir, mostra esse movimento com clareza.
Como calcular o desvio padrão anualizado
O desvio padrão diário dos log-retornos da VALE3, na amostra inteira, é de 2,62%. É um número pequeno e pouco intuitivo para quem pensa em horizontes de meses ou anos. Por isso a volatilidade é expressa em termos anualizados, multiplicando o desvio padrão diário pela raiz quadrada de 252, a convenção de pregões em um ano.
A raiz quadrada vem dos fatos estilizados. Como os log-retornos se somam ao longo do tempo e são pouco autocorrelacionados, a variância de um ano é a soma das variâncias dos dias, e o desvio padrão cresce com a raiz quadrada do número de pregões. Na VALE3, 2,62% ao dia viram 41,5% ao ano. Se os retornos fossem normais, o retorno de um ano ficaria dentro de ±41,5 pontos percentuais em torno da média em cerca de dois terços dos anos.
Um valor único para 11 anos, porém, esconde a variação de um ano para outro. Calculado ano a ano, o desvio padrão anualizado mostra a dispersão.

| Ano | Volatilidade anualizada | Contexto |
|---|---|---|
| 2015 | 57,3% | Minério abaixo de US$ 40; rompimento em Mariana |
| 2016 | 67,4% | Ano mais volátil da amostra |
| 2017 | 38,1% | |
| 2018 | 33,0% | |
| 2019 | 41,7% | Brumadinho em janeiro |
| 2020 | 54,7% | Pandemia |
| 2021 | 35,4% | |
| 2022 | 38,6% | |
| 2023 | 26,5% | |
| 2024 | 22,9% | |
| 2025 | 21,9% | Ano mais calmo da amostra |
| 2026 (até ago.) | 29,8% | Ano parcial |
Desvio padrão anualizado da VALE3 por ano civil. Amostra inteira: 41,5%. Fonte: B3 via Yahoo Finance.
A volatilidade de 2016 é o triplo da de 2025. Um investidor que dimensionasse a posição em VALE3 com a volatilidade média de 11 anos estaria subdimensionando o risco nos anos de crise e superdimensionando nos anos calmos. A medida da próxima seção resolve esse problema.
O desvio padrão rolante transforma a volatilidade em série temporal
O desvio padrão rolante (ou móvel) repete o cálculo a cada dia, usando apenas os pregões mais recentes. A janela avança um dia por vez: o dia mais antigo sai, o dia novo entra, e o resultado é uma série de volatilidade, com um valor para cada pregão. A janela mais usada é a de 22 pregões, o equivalente a um mês; o tutorial calcula também as de 63 (um trimestre) e 252 pregões (um ano), para comparar o efeito do tamanho da janela, como no gráfico que abre o post.
As três curvas contam a mesma história em resoluções diferentes. A janela de 22 dias reage em poucos pregões a um choque, mas oscila bastante e, como cada dia pesa 1/22, a saída de um único retorno extremo da janela produz quedas bruscas artificiais. A janela de 252 dias é suave, mas carrega o choque por um ano inteiro: a volatilidade de março de 2020 permanece na curva de 12 meses até março de 2021, quando o mercado já estava calmo havia meses. A janela de 63 dias fica entre as duas e é uma escolha comum para acompanhamento de risco.
| Pico da janela de 22 dias | Volatilidade anualizada | Episódio |
|---|---|---|
| 18/05/2015 | 91,1% | Queda do minério de ferro |
| 08/03/2016 | 112,0% | Recuperação abrupta após a mínima do minério |
| 10/05/2016 | 97,9% | Continuação do ciclo do minério |
| 22/02/2019 | 108,4% | Brumadinho |
| 26/03/2020 | 147,0% | Pandemia |
Os cinco maiores picos da volatilidade de 1 mês da VALE3, separados por pelo menos 60 dias. Mediana da série: 31,9%. Fonte: B3 via Yahoo Finance.
A mediana da volatilidade de 1 mês é de 31,9%, e os pregões acima de 60% são menos de 10% da amostra, concentrados nos episódios de crise. O pico de março de 2020, de 147%, é quase cinco vezes a mediana; o vale, de 6,3% em setembro de 2025, é um quinto dela. Essa distribuição traduz em números os fatos estilizados: a volatilidade passa a maior parte do tempo perto do nível habitual, sobe em episódios curtos e volta.
Os limites do desvio padrão
O desvio padrão rolante é simples, transparente e já reproduz os aglomerados e a reversão à média. Ele tem três limitações que os fatos estilizados deixam visíveis.
A primeira são os pesos iguais dentro da janela. O pregão de ontem e o pregão de 22 dias atrás contribuem com o mesmo peso, e um choque sai da janela de uma vez, em vez de se dissipar aos poucos. A média móvel exponencialmente ponderada, a EWMA popularizada pelo RiskMetrics, corrige esse ponto dando peso decrescente aos dias mais antigos.
A segunda é a simetria. O cálculo trata +5% e −5% como o mesmo desvio em relação à média e, por isso, não captura o efeito alavancagem. Os modelos EGARCH e GJR-GARCH foram criados para incorporá-lo.
A terceira é a ausência de um modelo para a dinâmica. O desvio padrão descreve a volatilidade passada, mas não diz como ela evolui de um dia para o outro nem produz uma previsão para amanhã. Os retornos apresentam heterocedasticidade condicional, isto é, a variância de hoje depende da informação disponível ontem. Os modelos ARCH, de Robert Engle (1982), e GARCH, de Tim Bollerslev (1986), escrevem essa dependência como uma equação, em que a variância condicional de hoje é função dos choques e das variâncias dos dias anteriores. Eles são o passo seguinte natural a este tutorial.
As ferramentas por trás

O que o resultado revela
- A direção do retorno não é previsível, mas o tamanho é. A autocorrelação dos retornos fica perto de zero; a dos retornos ao quadrado começa em 0,22 e persiste por um mês. É essa dependência que torna a volatilidade modelável.
- O desvio padrão da amostra inteira engana. Os 41,5% da VALE3 em 11 anos escondem anos de 67% e anos de 22%. Só uma medida em janela móvel acompanha o nível de risco de cada período.
- A janela é uma escolha, e tem trade-off. Curta reage rápido e oscila; longa é suave e atrasa. Não existe janela certa, existe a janela adequada ao horizonte de quem decide.
- A normal subestima o risco. Pregões além de 3 desvios ocorreram 5,6 vezes mais do que a normal prevê. Qualquer medida que suponha normalidade precisa de ajuste nas caudas.
Considerações finais
Com dados públicos e um notebook em Python, você reproduziu a análise de volatilidade que abre qualquer curso de gestão de risco e qualquer mesa de operações: os fatos estilizados dos retornos, verificados com testes formais, e a volatilidade anualizada em janela móvel, a medida que alimenta limites de posição, modelos de VaR e precificação de opções.
O Python reúne num só ambiente a coleta dos preços, o cálculo dos retornos, os testes estatísticos e os gráficos. Trocar a VALE3 por outra ação, por um índice ou por uma moeda custa alterar o ticker; mudar a janela ou o período custa alterar um número. A mesma rotina roda todo dia, com o dado mais recente, sem retrabalho.
O caminho percorrido aqui, de coletar, transformar em retornos, testar as propriedades e medir o risco, se repete em quase todo problema de finanças quantitativas. O que muda é a aplicação:
- Gestor de fundos. Dimensionar posições pela volatilidade corrente de cada ativo e reduzir a exposição quando a janela curta dispara.
- Profissional de risco. Calcular o VaR e os limites de perda com uma volatilidade que acompanha o regime do mercado, em vez de uma média histórica.
- Trader e operador de opções. Comparar a volatilidade histórica com a implícita nos prêmios e identificar opções caras ou baratas.
- Analista de investimentos. Medir o risco de uma recomendação com o mesmo critério para ações de setores diferentes.
- Economista. Aplicar o mesmo ferramental ao câmbio, aos juros futuros e aos índices, para medir a incerteza em torno de um evento ou de uma decisão de política.
Aprenda a medir e modelar risco com Python
Na Formação Python e Automação para o Mercado Financeiro você aprende a coletar dados de mercado, calcular retornos e volatilidade, estimar risco, montar carteiras e automatizar a rotina de análise, sem precisar de conhecimento prévio.
Conhecer a formação →Ver o AM Black →
O AM Black é a assinatura anual que dá acesso a todos os cursos e formações da Análise Macro.
Referências
BLACK, F. Studies of stock price volatility changes. Proceedings of the Business and Economics Section of the American Statistical Association, p. 177-181, 1976.
BOLLERSLEV, T. Generalized autoregressive conditional heteroskedasticity. Journal of Econometrics, v. 31, n. 3, p. 307-327, 1986.
CONT, R. Empirical properties of asset returns: stylized facts and statistical issues. Quantitative Finance, v. 1, n. 2, p. 223-236, 2001.
ENGLE, R. F. Autoregressive conditional heteroscedasticity with estimates of the variance of United Kingdom inflation. Econometrica, v. 50, n. 4, p. 987-1007, 1982.
TSAY, R. S. An Introduction to Analysis of Financial Data with R. Hoboken: Wiley, 2013.