Por Hully Rolemberg
Futuro
Conjunto de fatos relacionados a um tempo que há de vir
Destino, sorte, acaso ou como você quiser definir
O futuro é incerto, mas não impossível de inferir
Não é mágica, como parece, e tenho que admitir
É quase tudo sobre autocorrelação, não se deixe iludir
Previsões só são difíceis se forem sobre o futuro que há de vir…
Se você acompanha os meus artigos, já sabe que modelos são aproximações da realidade válidas sob condições específicas e comumente usadas para obter relações contemporâneas (isto é, para um mesmo instante de tempo) entre diferentes variáveis. Por exemplo, Modelos de Fatores são usados para estimar a relação de uma variável em relação a diferentes fatores de risco. Alternativamente, nós podemos usar modelos para aproximar o comportamento de uma variável em relação ao seu próprio passado (e até mesmo em relação ao passado de outras variáveis), obter estimativas do grau de dependência dela e extrapolar o comportamento estimado para o futuro. Neste artigo, vou te apresentar uma forma simplificada de como fazer exatamente isso: prever o futuro.
Obter previsões em si não é uma tarefa muito complexa. Podemos sempre dizer que a previsão para o que vai acontecer amanhã é exatamente o que aconteceu hoje: a inflação do ano que vem será igual à inflação desse ano. Essa seria uma previsão ingênua, afinal é improvável que os preços permaneçam completamente parados de um ano para o outro. Mas não é improvável que a inflação do ano seguinte seja bem próxima da inflação corrente porque existe uma certa inércia nos preços, isto é, os preços tendem a se mover lentamente. Chamamos essa inércia de autocorrelação.
Correlação você provavelmente já sabe que é definida como a relação de dependência entre duas variáveis. Autocorrelação, por sua vez, é definida como a correlação de uma variável com ela mesma. Assim como a correlação, quanto mais próxima de 1 for a autocorrelação, mais dependente é a variável em relação a ela mesma. Note que para um determinado instante de tempo, a autocorrelação entre uma variável e ela mesma tem que ser exatamente 1. Por exemplo, a autocorrelação da inflação desse mês com a inflação desse mês é 1 porque os dois valores são exatamente iguais.
Mas, a graça da autocorrelação não é o caso em que ela é igual 1. A autocorrelação é uma ferramenta matemática que nos permite encontrar padrões de repetição a partir do cálculo do grau de dependência de uma variável com o seu passado. Pense no caso da inflação: se a autocorrelação entre a inflação do mês corrente e a do mês anterior é igual a 0.9, então , de forma simplificada, podemos dizer que o valor realizado da inflação no mês que vem é determinado por 90% da inflação do mês anterior mais um erro aleatório. Essa situação pode ser representada matematicamente da seguinte forma:
Se assumirmos que a equação acima é válida para todo instante de t tempo, ou seja, a autocorrelação entre dois períodos consecutivos é sempre 0.9, então a equação acima pode ser usada para calcular a inflação em qualquer instante de tempo a partir do valor realizado no período anterior. Classificamos esse tipo de modelo como autorregressivo de primeira ordem, pois só considera a relação de dependência da variável com ela mesma defasada um único período. Modelos autorregressivos simples como esse são muito utilizados como ponto de partida para obter previsões de variáveis financeiras e macroeconômicas, por exemplo. Mas, modelos são modelos e só são válidos sob certas hipóteses, nesse caso, sobre o termo de erro εt.
Uma pausa na matemática para uma breve reflexão poética. Economistas (como eu) amam modelos. Nós tentamos fazer aproximações da realidade o tempo todo. Sim, modelos são simplificações. Sim, modelos dependem de uma série de hipóteses. Sim, nós sabemos que algumas dessas hipóteses parecem heroicas. E ainda assim continuamos desenvolvendo modelos. Isso porque os mercados não são completamente imprevisíveis. Existem padrões que se repetem ao longo do tempo e mudam lentamente. Nós queremos prever esses padrões para um dado nível de confiança. Acredite em mim ou não, mas funciona. Mais importante do que a previsão em si é conseguir calcular o erro da previsão. É isso que diferencia uma previsão boa e uma previsão ruim. Agora, de volta à matemática.
No exemplo da inflação, para fins ilustrativos, nós assumimos que relação de dependência entre a inflação corrente e a inflação do período anterior é 0.9, não importa o período que estamos avaliando, mas e se quiséssemos estimar esse número para o índice de inflação qualquer? Um modelo autorregressivo, como o próprio nome sugere, é um modelo de regressão cujos parâmetros podem ser estimados assumindo que o erro segue um processo ruído branco1. Podemos escrever um modelo autorregressivo de primeira ordem genérico para a inflação, também chamado de AR(1), da seguinte forma:
Em que α é um termo constante no tempo e θ é o coeficiente autorregressivo. E se, por outro lado, nós acreditássemos que a inflação é, na verdade, determinada pela inflação do mês anterior e pela inflação do ano anterior? Nesse caso, basta incluir um termo defasado 11 meses para trás no modelo autorregressivo (isso porque nosso período de referência é t+1 e t+1-12=t-11). Veja equação abaixo:
Podemos seguir essa lógica indefinidamente e adicionar quantas defasagens nós acharmos que forem necessárias para descrever a dinâmica de πt. Usando um software estatístico, nós conseguimos estimar facilmente os parâmetros de um AR(p) qualquer, em que p determina a ordem o processo. Todavia, não quero você pense que isso é mágica, então segue uma explicação breve sobre como são estimados os parâmetros de um modelo autorregressivo.
Existem diferentes formas de estimar os coeficientes de um AR (incluindo o famoso método de Mínimos Quadrados Ordinários), mas a minha favorita é o método de momentos usando as equações de Yule e Walker2, pois essa abordagem nos permite encontrar a solução exata do sistema recursivamente. De maneira simplificada, pense no modelo autorregressivo de primeira ordem definido como:
em que γ é o coeficiente autorregressivo e ν é o termo de erro. Multiplique os dois lados do modelo por yt,
tome o valor esperado dos dois lados,
Como γ é uma constante (ou seja, uma variável determinística), o valor esperado dela é ela mesma e podemos deixar esse termo fora da operador de valor esperado. Observe que, como νt é por hipótese um ruído branco, o erro no período t é necessariamente não correlacionado com o passado do processo, representado por yt. Assim, o último termo da equação é zero e temos a seguinte expressão:
Simplificadamente, podemos assumir que a média do processo y é zero e definir E[ytyt+1] como a autocovariância de primeira ordem (c1) de y e E[yt2] como a autocovariância de ordem zero (c0), ou seja, a variância. Renomeando as variáveis temos
Dividindo os dois lados pela variância do processo, isto é c0, e trocando de lado os temos temos,
Ou seja, o valor de gamma é dado pela autocovariância de primeira ordem dividida pela variância. Essa é exatamente a definição da autocorrelação de primeira ordem. Em outras palavras, o coeficiente do modelo autorregressivo de primeira ordem é dado pela autocorrelação de primeira ordem do processo, mas isso não é nenhuma surpresa porque eu já tinha te dado um spoiler no exemplo da inflação. O fato é que nós conseguimos fazer esse processo recursivamente para autocorrelações de ordens mais alta e assim obter uma solução fechada para os p coeficientes de um AR(p).
Estimar as autocorrelações e, consequentemente, os coeficientes do modelo autorregressivo é o primeiro passo para chegar no nosso objetivo principal: prever o futuro. Supondo que os coeficientes que nós estimamos são estatisticamente significantes, isto é, próximos dos seus valores verdadeiros, nós sempre vamos conseguir saber o provável valor de y em um dado instante de tempo só usando os seus valores passados. Existem uma série de incertezas envolvidas nessa previsão, já que não conhecemos a distribuição verdadeira do processo e, portanto, nunca saberemos o valor verdadeiro dos parâmetros. Mas, ainda assim, conseguimos fazer boas aproximações para variáveis bem comportadas3.
Sendo assim, um AR(1) pode ser usado para prever uma variável “um passo à frente” a partir da seguinte lógica: nós usamos todo o passado disponível até hoje para estimar os parâmetros e inferimos o valor da variável amanhã usando o valor realizado dela hoje. Seguindo essa lógica, um AR(2) convencional pode ser usado para fazer uma previsão “dois passos à frente” usando todo o passado disponível até hoje para estimar os parâmetros, inferindo o valor da variável amanhã e utilizando essa informação para prever o valor da variável depois de amanhã. E assim sucessivamente o quanto quisermos. O céu é o limite.
Todavia, quanto mais distante for o futuro que estamos interessados em prever, mais defasadas serão as relações que nós teremos que estimar e mais previsões intermediárias nós talvez tenhamos que usar como insumos da previsão final. Por isso, previsões muito passos à frente são muito mais ruidosas – elas dependem de um passado super persistente ou sazonalidades bem definidas. Uma das formas de melhorar nossas previsões de modelos autorregressivos é usar o passado de outras séries também (modelos multivariados como VAR, por exemplo). Mas, a verdade é que modelos autorregressivos, apesar de simples, dão conta de boa parte do trabalho de prever o futuro, para um certo nível de erro.
Toda previsão tem um erro de previsão associado a ela, não temos como fugir disso, e nem queremos. Praticamente toda a teoria estatística gira em torno dele: o termo de erro. De fato, a primeira distribuição de probabilidade que se tem registro foi criada em 1820 por Laplace e é denominada justamente “distribuição do erro”. Pierre Simon Laplace foi um matemático francês com contribuições muito importantes para os campos de estatística, matemática, física e astronomia. Laplace descreveu pela primeira vez como computar a posição futura dos planetas baseado em algumas observações da Terra e percebeu que a observação dos planetas e cometas não se encaixava exatamente nas posições previstas em teoria. Para levar esse problema em consideração, ele criou a “função erro”.
Na época, acreditava-se que, conforme a ciência avançasse, as métricas se tornariam mais precisas e os erros diminuíram, mas o que aconteceu foi justamente o contrário: quanto mais precisas eram as ferramentas para medir os fenômenos (matemáticos, físicos, biológicos e astronômicos), mais erros se acumulavam. Gradualmente, a ciência começou a trabalhar com um novo paradigma, o modelo estatístico da realidade. Era o começo da revolução estatística, mas isso é assunto para uma outra conversa.
Medir o erro é crucial. Mas, como medir o erro de previsão? E mais importante que isso, como usar o erro para selecionar a melhor previsão? Como eu disse no verso que iniciou esse texto: previsões só são difíceis se forem sobre o futuro que há de vir. Então, o que nós (pessoas determinadas a prever o futuro) fazemos é não esperar o futuro chegar para avaliar como as nossas previsões vão se sair, mas sim selecionar um período de tempo na história para chamar de passado e outro pra chamar de futuro. É o que os cientistas de dados chamam de amostra de treino e amostra de teste.
A lógica é simples: a amostra de treino é usada para estimar os parâmetros e a amostra de teste para obter as previsões e comparar com o realizado. Podemos fazer isso com amostras fixas ou ir expandindo a janela de treino com o passar do tempo, assim como ocorre na realidade em que à medida que os dias vão passando a história vai crescendo. Existem diferentes métricas para calcular o erro observado entre a previsão e o realizado – Raiz do Erro Quadrático Médio (RMSE), Erro Absoluto Médio (MAE), Erro Percentual Médio Absoluto (MAPE), Erro Quadrático Médio (MSE), entre outras – cada uma com suas vantagens e desvantagens dependendo do contexto da aplicação.
A partir de uma métrica de erro podemos reavaliar os modelos usados para estimação/previsão e escolher aquele que se comporta melhor na amostra de teste. Eu chamo isso de “prever o futuro”. Difícil de acreditar? No meu primeiro artigo sobre volatilidade, eu te mostrei como um portfólio long-only em S&P500 escalado pela volatilidade tem performances distintas dependendo de como nós prevemos a volatilidade e a conclusão é que usando variações de modelos autorregressivos nós obtemos resultados superiores aos de um portfólio que usa a previsão ingênua (volatilidade amanhã é a volatilidade hoje) para escalar os retornos.
Previsões não são perfeitas, tenho que admitir, e “retornos passados não são garantia de performance futura”. Isso porque, mesmo que nós usemos as melhores ferramentas disponíveis e nossas previsões sejam super robustas do ponto de vista estatístico, elas ainda assim são corretas apenas na média e poderão estar erradas algumas vezes ao longo do tempo. Neste artigo, não falamos sobre quebras estruturais não controladas nas séries ou erros nos modelos, por exemplo, dois fatores que podem destruir uma previsão a princípio “correta”. O fato é que incertezas sempre vão existir, mas nós podemos medir o erro e fazê-lo, em média, diminuir. Assim, previsões só serão difíceis se forem sobre o futuro que há de vir.
Notas:
1: Uma série é definida como um ruído branco se possuir média zero, variância finita e suas observações não forem correlacionadas entre si.
2: As equações de Yule e Walker são a base dos modelos autorregressivos lineares, conectando os parâmetros do modelo à função de autocovariância do processo.
3: Chamamos de “bem comportada” uma série de tempo estacionária.
Leia também o texto: “Derivativos são divertidos”.