Razão de hedge com filtro de Kalman: regressão dinâmica para pairs trading
Entenda como uma regressão em espaço de estados atualiza uma razão de hedge variável, como o ruído de processo controla a reatividade e por que spreads filtrados ainda precisam de validação fora da amostra.
Neste guiaUma razão de hedge dinâmica modela uma relação variável
Resumo breve
Um filtro de Kalman pode atualizar o intercepto e o coeficiente de hedge de uma regressão a cada nova observação. A estimativa variável modela como a relação evolui; ela não comprova cointegração, um spread com reversão à média nem um sinal lucrativo.
Uma razão de hedge dinâmica modela uma relação variável
Uma razão de hedge fixa ajusta um coeficiente a uma amostra de formação e o mantém constante. Já um modelo dinâmico trata o intercepto e a inclinação como quantidades latentes que podem evoluir ao longo do tempo. O filtro de Kalman as estima recursivamente, combinando a estimativa anterior com as informações de uma nova observação.
Para dois ativos candidatos, use \(y_t\) para o logaritmo do preço de um e \(x_t\) para o logaritmo do preço do outro. Uma regressão de longo prazo variável pode ser expressa como \(y_t=\alpha_t+\beta_t x_t+\epsilon_t\). O coeficiente \(\beta_t\) descreve a relação ajustada no instante \(t\); ele não equivale automaticamente a uma quantidade de ações, a uma posição neutra em dólares ou a uma lei econômica estável.
Esta aplicação usa a recursão geral de previsão e atualização de um modelo linear em espaço de estados. Kalman introduziu a estrutura de filtragem recursiva, e trabalhos econométricos posteriores a aplicaram a coeficientes de regressão que variam no tempo. Usar um spread estocástico em pairs trading é uma aplicação possível, mas as premissas de negociação devem ser avaliadas separadamente do algoritmo de filtragem.

Coloque os coeficientes de regressão no estado oculto
Defina o vetor de estado e a linha de observação como
\[ \theta_t=\begin{bmatrix}\alpha_t\\\beta_t\end{bmatrix}, \qquad H_t=\begin{bmatrix}1&x_t\end{bmatrix}. \]
A equação de observação é \(y_t=H_t\theta_t+\epsilon_t\). Ela diz que o logaritmo do preço observado se relaciona ao intercepto latente e ao coeficiente de hedge, além do ruído de observação. Um ponto de partida comum supõe que ambos os coeficientes seguem passeios aleatórios:
\[ \theta_t=\theta_{t-1}+\eta_t,\qquad \eta_t\sim N(0,Q),\qquad \epsilon_t\sim N(0,R). \]
Aqui, \(Q\) é a covariância das mudanças nos coeficientes e \(R\) é a variância do ruído de observação. Definir \(Q=0\) mantém os coeficientes fixos neste modelo; um \(Q\) positivo permite que eles derivem. Outras transições de estado são possíveis, mas cada uma expressa uma hipótese diferente sobre o comportamento da relação.
Usar uma matriz \(Q\) diagonal acrescenta a hipótese de que choques no intercepto e na inclinação não são correlacionados. Termos fora da diagonal permitem que variem juntos, mas a amostra precisa conter informações suficientes para estimar essa covariância. Toda matriz de covariância válida deve ser simétrica e semidefinida positiva.
Esta especificação simples supõe que os distúrbios do processo e da observação têm média zero, não apresentam correlação serial e são mutuamente independentes. Essas são hipóteses do modelo; as observações de preços não as satisfazem automaticamente.
Preveja o estado e sua incerteza antes de observar o novo preço
Ao final de \(t-1\), o filtro tem uma estimativa \(\hat\theta_{t-1|t-1}\) e uma covariância \(P_{t-1|t-1}\). A equação de estado com passeio aleatório prevê
\[ \hat\theta_{t|t-1}=\hat\theta_{t-1|t-1}, \qquad P_{t|t-1}=P_{t-1|t-1}+Q. \]
A estimativa é carregada adiante, enquanto a incerteza aumenta pela covariância permitida das mudanças nos coeficientes. \(P\) descreve a incerteza sobre o estado latente da regressão sob o modelo especificado. Não é uma previsão da perda de trading do par nem uma medida completa do risco da carteira.
A previsão de uma etapa para a observação é \(H_t\hat\theta_{t|t-1}\). O estado anterior importa porque foi calculado sem o novo \(y_t\). Se o resíduo for calculado apenas depois que os coeficientes forem atualizados com essa mesma observação, a atualização já o terá aproximado de zero.
Como \(H_t\) contém \(x_t\), o preço explicativo atual afeta tanto \(S_t\) quanto o ganho. Quando a incerteza da inclinação é relevante, observações com diferentes valores de \(x_t\) podem trazer informações distintas sobre \(\beta_t\), embora a covariância entre intercepto e inclinação também importe. Centralizar ou reescalar \(x_t\) altera o intercepto e as unidades do coeficiente; portanto, os elementos correspondentes de \(Q\) e do \(P\) inicial devem ser transformados ou reestimados, em vez de copiados sem alteração.
A inovação determina como o filtro atualiza a estimativa de hedge
Quando a nova observação chega, seu erro de previsão de uma etapa, ou inovação, é
\[ v_t=y_t-H_t\hat\theta_{t|t-1}, \qquad S_t=H_tP_{t|t-1}H_t^{\mathsf T}+R. \]
A variância da inovação \(S_t\) combina a incerteza prevista do estado e o ruído de observação. O ganho de Kalman e a atualização do estado são
\[ K_t=P_{t|t-1}H_t^{\mathsf T}S_t^{-1}, \qquad \hat\theta_{t|t}=\hat\theta_{t|t-1}+K_tv_t. \]
O ganho distribui a nova surpresa entre alterar a relação estimada e tratar a observação como ruído. Um ganho maior significa que o filtro se ajusta mais a essa observação; não significa que a relação seja mais confiável.
Suponha que um filtro hipotético preveja \(\hat\alpha=2.0\) e \(\hat\beta=1.20\) quando \(x_t=50\), resultando em \(\hat y=62.0\). Se o \(y_t=62.8\) observado, a inovação é 0.8. Com o ganho do modelo \([0.08,0.006]^{\mathsf T}\), o intercepto atualizado é 2.064 e a inclinação é 1.2048. Esses valores inventados servem apenas para ilustrar a conta; não são uma razão de hedge empírica nem evidência de que o desvio vai se reverter.
O ruído de processo e o ruído de medição definem flexibilidades diferentes
A matriz de ruído de processo \(Q\) determina quanto os coeficientes de regressão podem mudar de uma observação para a seguinte. Um \(Q\) maior geralmente aumenta o ganho e torna a estimativa mais responsiva. Isso pode acompanhar mais cedo uma mudança real, mas também pode perseguir ruído temporário e gerar pesos de hedge que mudam rapidamente. Um \(Q\) muito pequeno produz uma estimativa mais suave, mas que pode demorar a acompanhar uma quebra real.
A variância do ruído de observação \(R\) descreve a variação em \(y_t\) que a relação não explica. Mantidos os outros valores, um \(R\) maior faz o filtro confiar menos em cada nova observação. Nem \(Q\) nem \(R\) é uma constante universal de ajuste. A escala depende de o modelo usar preços, logaritmos de preços ou séries normalizadas, além do intervalo de amostragem escolhido.
O analista pode estimar os parâmetros de ruído por máxima verossimilhança ou defini-los previamente a partir de uma janela de treinamento. Ajustá-los com base no período de negociação final vaza informações sobre o resultado. O estado inicial \(\hat\theta_{0|0}\) e sua covariância \(P_{0|0}\) também importam: uma inicialização incerta pode causar um período de ajuste rápido no início. Informe a inicialização, a amostra usada para estimar parâmetros e a sensibilidade a alternativas razoáveis.
Filtragem e suavização usam conjuntos de informação diferentes
Uma estimativa filtrada \(\hat\theta_{t|t}\) usa observações até o instante \(t\). Uma estimativa suavizada em \(t\) pode usar observações que chegaram depois. A suavização ajuda a descrever estados latentes históricos, mas não estava disponível para quem tomava a decisão de trading naquele momento.
O mesmo problema de timing afeta a estimação de \(Q\), \(R\), a seleção de pares e os limites do sinal. Se forem ajustados uma vez usando toda a amostra, as estimativas iniciais se beneficiam de observações posteriores, mesmo que a recursão dos coeficientes em si siga apenas para a frente. Em uma simulação em tempo real, estime hiperparâmetros usando apenas um período de formação, mantenha-os fixos ou atualize-os em um cronograma walk-forward declarado, e tome cada decisão de posição com as informações disponíveis antes da execução.
O horário da observação não é o horário da execução. Se o preço de fechamento em \(t\) for necessário para calcular \(v_t\), um backtest não pode presumir execução nesse mesmo fechamento, a menos que o processo de execução torne isso viável. Use a primeira cotação executável seguinte ou um modelo de execução defensável e inclua spread, impacto, taxas, aluguel e financiamento.
Um coeficiente de hedge ainda não é um peso de carteira nem um sinal de spread
Em um estudo de pares, a inovação \(v_t\) antes da atualização é a surpresa em relação à relação ajustada anteriormente. Dividi-la por \(\sqrt{S_t}\) produz uma inovação padronizada sob o modelo. Isso ajuda a comparar surpresas entre períodos com diferentes níveis estimados de incerteza, mas não diz quanto comprar ou vender de cada ativo nem se uma grande surpresa vai se reverter.
O resíduo após a atualização, \(y_t-H_t\hat\theta_{t|t}\), é diferente porque usa a observação atual para revisar os coeficientes. Misturá-lo a um limite definido antes da atualização muda o significado do sinal. Defina explicitamente o spread, o timing e o limite, e informe se o coeficiente é previsto, filtrado ou suavizado.
Mesmo quando \(\beta_t\) é estimado com logaritmos de preços, convertê-lo em ordens exige uma regra de posição separada. Pesos sobre logaritmos de preços não especificam diretamente quantidades de ações ou contratos. Preços, multiplicadores de contrato, moedas e limites da conta determinam a exposição em dólares; o intercepto não é um ativo negociável. Custos de rebalanceamento e mudanças na exposição entre atualizações também importam.
Um coeficiente variável pode esconder uma falha do modelo
Um coeficiente que deriva lentamente pode representar uma mudança gradual, mas também pode absorver uma relação que deixou de funcionar. Um modelo com estados flexíveis pode manter o resíduo ajustado visualmente pequeno mesmo sem um equilíbrio estável de longo prazo. O filtro não testa cointegração nem garante que seu resíduo seja estacionário.
A escolha do par também importa. Examinar muitos ativos e manter o par com o resíduo in-sample mais suave significa selecionar com os mesmos dados usados para alegar estabilidade. Eventos corporativos, preços defasados, fechamentos assíncronos, restrições a vendas a descoberto, mudanças de liquidez e mudanças de regime podem alterar os estados estimados ou tornar difícil executar um hedge teórico.
Além da linha ajustada, examine o comportamento dos resíduos, a incerteza do estado, o giro da carteira e as trajetórias dos coeficientes. Use períodos de teste em ordem cronológica e compare com uma referência de razão fixa. Uma estimativa mais adaptável precisa justificar o giro e o risco de estimação adicionais após custos realistas; suavidade visual, por si só, não é resultado de desempenho.
Informe o modelo e as escolhas de validação necessárias para reproduzir a análise
Especifique quais séries de preços ou retornos são modeladas, como foram transformadas, a frequência das observações, as datas da amostra e qual ativo fica em cada lado da regressão. Apresente as equações de observação e de estado, a matriz de transição, \(Q\), \(R\), a inicialização, o método de estimação e se os estados reportados são filtrados ou suavizados.
Para um resultado de trading, defina a inovação ou o spread usado no sinal, sua normalização, o horário da decisão, o atraso da ordem, o tamanho da posição, a regra de rebalanceamento e todos os custos de execução. Descreva a seleção dos pares, as janelas de treinamento e teste, como os parâmetros de ruído são reajustados e como a estratégia se comporta após uma quebra ou uma observação ausente. Compare coeficientes fixos e dinâmicos nas mesmas divisões cronológicas.
O artigo de Kalman sobre filtragem linear desenvolve a estrutura recursiva. Hatanaka estuda regressões com alguns coeficientes variáveis no tempo. Elliott, van der Hoek e Malcolm apresentam um modelo estocástico para pairs trading. Veja também os guias sobre [previsão e atualização de Kalman](/pt-BR/learn/kalman-filter-prediction-update-finance-explained), [cointegração versus correlação em pairs trading](/pt-BR/learn/cointegration-vs-correlation-pairs-trading-explained), [teste de posto de Johansen](/pt-BR/learn/johansen-cointegration-rank-trace-max-eigenvalue-explained) e [testes de razão de variância](/pt-BR/learn/variance-ratio-test-random-walk-horizon-scaling-explained).
Perguntas frequentes
Q1Um filtro de Kalman comprova que um par é cointegrado?
Não. Ele estima estados latentes sob suas hipóteses de transição e observação. Uma razão de hedge flexível pode acompanhar dados variáveis sem estabelecer uma combinação estacionária estável.
Q2Uma razão de hedge dinâmica é sempre melhor do que uma fixa?
Não. Ela pode responder a mudanças reais, mas também perseguir ruído, aumentar o giro da carteira e adicionar risco de parâmetros. Compare as duas nos mesmos períodos cronológicos fora da amostra e com custos realistas.
Q3Posso usar o resíduo atualizado como se fosse o mesmo sinal que a inovação?
Não. A inovação usa o estado anterior, antes de a observação atual atualizar os coeficientes. O resíduo após a atualização usa essa observação para revisar os coeficientes, portanto é uma quantidade diferente.
Fontes e leituras adicionais
Relatar um problema
Vamos preparar um e-mail com o link deste artigo. Mark só receberá o relato depois que você enviar
Verificação rápida
Terminou o guia? Confira o que aprendeu com 3 perguntas
Pergunta 01
Na regressão em espaço de estados, o que a covariância do ruído de processo Q controla?
Escolha uma resposta para ver a explicação
Glossário de opções
A recursion predicting and updating state means and error covariances in a linear Gaussian state-space model.
Ler o guia completoCointegrationThe existence of a stationary linear combination among nonstationary series, implying a shared long-run equilibrium restriction under a specified model.
Ler o guia completo