O efeito de momento em ações

O efeito de momento é a tendência observada no mercado de as ações ganhadoras continuarem a ganhar, e das perdedoras continuarem a perder. Geralmente ela é definida em termos de um corte transversal no universo das ações disponíveis, de acordo com o retorno passado. Ou seja, as ações são ordenadas com base no retorno em um período passado (por exemplo, últimos 6 meses) e forma-se uma carteira long-short com posições compradas nos papéis com maior retorno, e posições vendidas nos papéis de menor retorno. Geralmente são considerados os 10% superiores e inferiores das ações para formar as carteiras. A figura abaixo, na qual cada barra representa o retorno de uma ação,  mostra este processo.

Momentum

O efeito de momento foi documentado por Jegadeesh e Titman (1993). Porém, está relacionado com a ideia de tendência nos preços, a qual existe há muito tempo. Em um artigo que publiquei em 2013, usei um modelo de mudanças de regime para investigar a persistência do prêmio de momento no mercado americano ao longo do período 1927-2010. A conclusão foi que o prêmio de momento havia desaparecido desde o início dos anos 2000, muito provavelmente devido à atividade cada vez maior de investidores sofisticados que tentam arbitrar este retorno.

Um artigo recente investiga o prêmio de momento até 2014, estudando a estratégia de momento no corte transversal (cross-section momentum), descrita acima, assim como uma versão chamada de momento de séries temporais (times series momentum), na qual as carteiras vencedora/perdedora são montadas considerando todas as ações com retorno positivo/negativo no período de formação. O artigo também investiga uma estratégia que combina as duas versões de momento (dual momentum).

O gráfico abaixo mostra o retorno acumulado destas estratégias. A estratégia de momento combinada (dual momentum) tem resultado melhor do que a de séries temporais, que por sua vez supera a estratégia de momento no corte transversal das ações. Porém, é interessante notar que o resultado de todas as estratégias, desde o final de 1999, é nulo ou até negativo, em linha com a conclusão a que eu tinha chegado com a amostra até 2010.

dual-momentum-on-stocks

Efeito de Momento no Brasil

A evidência do efeito de momento no Brasil é mista. Por exemplo, Bonomo e Dall’Agnol (2003) investigaram estratégias de investimento contrárias (basicamente o oposto das estratégias de momentum) e não encontraram evidência do efeito de momentum; de fato as estratégias contrárias nos horizontes curtos em que momentum funciona nos mercados desenvolvidos parece maior. Porém o estudo foi feito em períodos de grandes mudanças no mercado brasileiro e com uma amostra até 2000. Mussa et al (2007)  investigaram a estratégia de momento de Jegadeesh e Titman e encontraram evidência de retornos anormais apenas para algumas versões da estratégia. Estudos subsequentes (Mussa et al (2008) e Valle e Flister et al (2011)) mostraram resultados divergentes, sem diferença significativa entre o retorno das ações ganhadoras e perdedoras.

Em um post anterior, eu investiguei superficialmente o efeito de momento no mercado brasileiro, porém considerando apenas o lado comprado da estratégia, e encontrei alguma evidência de que é possível obter retornos bastante superiores ao do mercado, tanto utilizando uma carteira igualmente ponderada, como o índice Ibovespa. A estratégia pode ser melhorada quando combinada com alguma regra para evitar perdas em períodos de volatilidade acentuada no mercado. Uma ideia interessante seria testar no mercado brasileiro a estratégia de momento de séries temporais e a estratégia de momento combinada.

 

Anúncios

Os mercados são eficientes?

Já falei diversas vezes aqui no blog sobre o conceito do mercado eficiente. Resumidamente, a hipótese do mercado eficiente afirma que os preços dos ativos sempre refletem toda a informação disponível. Logo, oportunidades de arbitragem não deveriam existir – ou pelo menos deveriam ser corrigidas rapidamente.

Se os mercados forem eficientes, então só é possível obter retornos maiores assumindo riscos maiores. No entanto, diversas “anomalias” existentes no mercado colocam em questão esta visão de mundo. As aspas são necessárias porque, para definir que algo é uma anomalia, é preciso primeiro definir um modelo para apreçar (dar preço para) os ativos. Já falamos de diversas destas anomalias aqui no blog: efeito de volatilidade, de momentum, de valor, tamanho etc. Basicamente estas anomalias mostram evidência de que um certo modelo de apreçamento não consegue explicar os retornos de certas estratégias ou carteiras de ativos. Estas anomalias são também chamadas de fatores, devido ao seu uso nos modelos de apreçamento multifatoriais utilizados pelos investidores para previsão de retorno e gestão de risco. A literatura de finanças revelou centenas de “fatores” que explicam os retornos dos ativos*.

17367075.cms

Uma das discussões centrais em Finanças é, portanto, se estas anomalias ou fatores mostram que o mercado é ineficiente, devido por exemplo aos vieses cognitivos e comportamentais dos players do mercado, (o chamado mispricing) ou se elas são reflexo (e recompensa) de algum fator de risco que está faltando no modelo de apreçamento**. Os defensores da hipótese do mercado eficiente acreditam na segunda opção, enquanto a primeira alternativa é defendida pela escola de Finanças comportamentais***.

Um artigo recente, publicado no Journal of Finance, trouxe mais evidências de que os mercados não são tão eficientes. O artigo estuda 97 fatores que foram identificados na literatura acadêmica como previsores de retornos, comparando esta previsibilidade em três períodos diferentes: (1) no período originalmente utilizado no estudo, (2) no período subsequente, porém antes da publicação do artigo, e (3) no período após a publicação. O artigo mostra que o retorno médio dos fatores após a publicação do artigo é reduzido em 58%, enquanto no período após a descoberta do fator, mas antes da publicação, a redução é de 26%. Considerando que alguns investidores podem ficar sabendo da pesquisa antes da publicação, o valor de 26% é considerado como um limite superior para o efeito de viés estatístico. Assim, os autores cconcluem que pelo menos 32% do retorno médio dos fatores é reduzido através da publicação da pesquisa sobre o fator.

A implicação do artigo é forte: os investidores aprendem sobre mispricing através das publicações acadêmicas, e a maioria ou todos os fatores utilizados no estudo são o resultado de mispricing, e não recompensa por risco. O motivo é que, se os fatores representassem recompensa por risco, o retorno deveria persistir no futuro, já que os investidores racionais não alterariam suas estratégias e decisões de investimento.

Se os retornos dos fatores são o resultado de mispricing, não é esperado que eles desapareçam imediatamente, mas decaiam ao longo do tempo, devido aos limites à arbitragem e fricções no mercado como custos operacionais, dificuldades em manter posições vendidas etc.

——————————————————————————————————————————

* Em um dos meus artigos, explorei o uso de um modelo Bayesiano para tentar determinar qual grupo de fatores melhor explica os retornos de ações individuais.

** Uma terceira possibilidade é que a relação entre um fator e os retornos esperados seja espúria, um viés estatístico devido ao processo de mineração de dados utilizado nas pesquisas. Se este for o caso, o fator não terá previsibilidade fora da amostra utilizada para encontrá-lo. Quanto maior o número de pesquisadores e a massa de dados que eles vasculham, maior a probabilidade de que sejam encontradas variáveis que parecem explicar os retornos. Por isto é tão importante o teste de previsibilidade fora da amostra original. Um artigo recente explora este assunto e propõe ajustes nos testes estatísticos utilizados para determinar a significância de um fator.

*** Eu pessoalmente não acredito na hipótese do mercado eficiente, no seu sentido completo. Creio que arbitragens reais (ou seja, a possibilidade de ter ganho certo depois de custos) são muito raras, porém mispricings que representam arbitragens estatística (nas quais o lucro esperado é positivo, porém é possível perder dinheiro) podem persistir por longos períodos. Existe bastante evidência de que: (1)  os participantes do mercado não agem sempre de maneira racional, conforme assumido por alguns modelos de equilíbrio, (2) os incentivos dos gestores de recursos muitas vezes são conflitantes, gerando limites para sua capacidade de atuarem como arbitradores, (3) há muita assimetria de informação e empecilhos operacionais para permitir arbitragem completa das ineficiências. Além disto, não vejo nenhum motivo para existirem os míticos fatores de risco permeantes, imutáveis, que explicam os preços de todos os ativos. Esta construção teórica me parece muito ideológica, a “mão invisível” do mercado financeiro.

Long-Short através de Cointegração – Parte 3

Este post é parte de uma série sobre como fazer operações de arbitragem estatística (long-short) através da técnica de cointegração. No primeiro post da série, introduzi intuitivamente o conceito de cointegração, que permite encontrar pares (ou outras combinações) de ativos que “andam juntos”. No segundo post, expliquei conceitualmente um teste simples de estacionariedade, conhecido como teste de Dickey-Fuller (DF), apresentei sua versão “aumentada”, e introduzi o Método de Engle-Granger, que permite testar se duas séries não-estacionárias são cointegradas.

Neste post, darei um exemplo prático da aplicação deste teste utilizando o Excel. É necessário ter o pacote de Análise de Dados instalado.

Relembrando, o processo para testar se duas séries são cointegradas consiste em primeiro testar se elas são não-estacionárias. Caso ambas sejam, é feita uma regressão entre as séries de preços, e utiliza-se o teste DF (ou o teste DF Aumentado) para testar a estacionariedade dos resíduos. Se os resíduos forem estacionários, a série é cointegrada.

Escolhi as ações QUAL3 (QualiCorp SA, uma empresa do ramo de seguro-saúde) e RENT3 (Localiza Rent a Car SA, uma locadora de automóveis) para o exercício. Os dados compreendem o período entre outubro de 2012 e outubro de 2014. Estas duas ações são cointegradas ao nível de 1% de significância neste período, o que é um tanto contra-intuitivo, considerando que são de setores totalmente diferentes. Todos os cálculos mencionados estão demonstrados e explicados na planilha que acompanha o post, disponível no link abaixo:

Download-Button_1700x1000_zpsce011000

 

 

Ressalto que esta escolha foi arbitrária e ilustrativa, e não quer dizer que seja possível operar este par de maneira lucrativa.

Comecemos por analisar as séries de preços das duas ações. Conforme podemos ver no gráfico abaixo, os preços das duas ações parecem se comportar, à primeira vista, de maneira similar:

Precos QUAL3 RENT3

 

Passo 1 – Testar se cada série é não-estacionária

Vamos começar. O primeiro passo é testar se cada uma das séries é não-estacionária, aplicando o teste DF em cada série de preços. A hipótese nula do teste DF é que a série é não-estacionária, portanto neste primeiro teste queremos que a hipótese nula não seja rejeitada.

Para aplicar o teste DF, precisamos primeiro calcular os valores defasados (lags) de cada série e o delta (diferença entre o preço do dia e o preço do dia anterior), e após isto fazer regressão do delta no lag. Por exemplo, para QUAL3 esta regressão seria:

\Delta P_t^{QUAL3}= a + b P_{t-1}^{QUAL3} + e_t^{QUAL3}

onde P_t^{QUAL3} representa o preço de QUAL3 no dia t e \Delta P_t^{QUAL3} = P_t^{QUAL3} - P_{t-1}^{QUAL3} é o delta do preço de QUAL3.

Ao estimar esta regressão (aba “Teste Estac. QUAL3”), obtemos a seguinte equação:

\Delta P_t^{QUAL3}= 21.37 -0.45 \times P_{t-1}^{QUAL3}

e o valor da estatística t para o coeficiente b é -1.29. O valor crítico do teste DF (ver tabela no segundo post da série) é de -2.87. Portanto concluímos com base no teste DF que a série é não-estacionária (não rejeitamos a hipótese nula pois a estatística do teste é menor do que o valor crítico).

O teste para RENT3 chega à mesma conclusão (ver aba “Teste Estac. RENT3”). Podemos então seguir para o próximo passo.

Passo 2 – Aplicar Metodologia de Engle-Granger

No segundo passo temos duas etapas: primeiro estimaremos uma regressão dos preços de QUAL3 em RENT3 e salvaremos os resíduos desta regressão. A seguir, aplicaremos o teste DF nestes resíduos. Neste teste queremos que a hipótese nula de não-estacionariedade seja rejeitada, o que implicará que uma combinação linear dos preços das ações é estacionária e portanto elas são cointegradas.

Estes passos estão detalhados na aba “Regressão Engle-Granger”. Primeiramente é feita a regressão dos preços de QUAL3 em RENT3:

P_t^{QUAL3}=\alpha P_t^{RENT3}+u_t

Os resíduos \hat{u}_t (também chamados de spread do par) são salvos para a segunda etapa, que consiste em estimar a regressão:

\Delta u_t=a +b u_{t-1}+v_t

A estimação desta segunda regressão resulta em uma estatística t de -4.60 para o coeficiente b. Como o valor crítico é -2.87 a 5% de significância, e -3.44 a 1% de significância, podemos rejeitar a hipótese nula de não-estacionariedade ao nível de 1% de significância, concluindo portanto que as duas séries são cointegradas.

O teste de cointegração em si está concluído, porém isto não implica que o par possa ser operado com sucesso. Para isto é necessário avaliar se o comportamento do spread é adequado e realizar algum tipo de simulação (backtest). Idealmente queremos que o spread apresente o seguinte comportamento:

  • Relação de cointegração estável ao longo do tempo
  • Reversão frequente do spread à média
  • Variabilidade razoavelmente grande nas divergências

Com relação ao primeiro ponto, podemos nos questionar se a relação de cointegração entre duas ações de setores tão diferentes será estável ao longo do tempo; pode ser que seja um resultado espúrio, afinal estamos falando de um teste estatístico que possui uma probabilidade de erro. É importante ressaltar que relações de cointegração podem “quebrar” a qualquer momento. Um resultado positivo em um teste de cointegração é um indício de que o par pode ser operável, mas não garante resultado futuro. É preciso reavaliar periodicamente a relação de cointegração para detectar possíveis mudanças no comportamento das séries.

O gráfico abaixo apresenta a evolução do spread ao longo do tempo, com duas bandas representando -2 e 2 vezes o desvio padrão dos resíduos. Vemos que, apesar de os resíduos apresentarem certa persistência, comportam-se de maneira aparentemente desejável: flutuam razoavelmente ao redor da média, visitando-a com certa frequência. Uma regra possível de operação consistiria em vender o par quando o resíduo estiver acima da banda, e comprar o par quando estiver abaixo da banda. O trade pode ser encerrado quando o par voltar a média ou a um percentual qualquer da média. A simulação do resultado deste tipo de estratégia pode ser feita de maneira muito similar à que introduzi neste post.

spread

 

Automatização

Conforme o leitor deve ter percebido, o processo de teste de cointegração de 1 par utilizando o Excel é complicado e possui vários passos. Na prática, um modelo para operar pares precisa avaliar milhares de combinações possíveis e torna-se inviável ou pouco prático fazer isto no Excel. O número de pares possíveis com N ações é N(N-1)/2, ou seja, com 100 ações (uma estimativa razoável do número de ações líquidas no mercado brasileiro) temos 4950 pares possíveis. Neste caso é recomendável utilizar alguma plataforma matemática como o R ou o Matlab. No R pode-se utilizar por exemplo o pacote tseries, que possui a função adf.test para fazer o teste DF. No Matlab há o toolbox de Econometria, que possui a função similar adftest.

No próximo post, falarei em linhas gerais sobre como montar um modelo geral para operar pares cointegrados, e potencialmente dar alguns exemplos em Matlab.

Long-Short através de Cointegração – Parte 2

No primeiro post desta série, introduzi de maneira intuitiva o conceito de cointegração, que permite encontrar pares de ativos que “andam juntos”. Estes pares são bons candidatos para se construir um modelo de operação com pares.

Neste post, explicarei como realizar um teste simples, mas amplamente utilizado, de cointegração*. Aviso: usarei alguns conceitos de Estatística como regressão linear e teste de hipótese. No próximo post, o teste será demonstrado com exemplos reais no Excel e também comentarei como realizá-lo em programas como R e Matlab.

Teste de Estacionariedade (teste de Dickey-Fuller)

Como podemos testar a estacionariedade de uma série? Podemos começar considerando  um modelo simples de séries temporais, o modelo autoregressivo de ordem 1, ou AR(1). Este modelo tem a seguinte forma:

y_t = a + b y_{t-1} + e_t

onde y_t é o valor da série temporal no instante t, e e_t é um choque aleatório. A equação acima mostra que no modelo AR(1), o valor presente da série depende do valor anterior, multiplicado por uma constante b, mais um choque aleatório.

O modelo AR(1) é importante porque ele pode ser estacionário ou não, dependendo do valor de b. Se b<1, o modelo é estacionário, enquanto se b=1 o modelo é não-estacionário (dizemos que possui uma raiz unitária). Se subtrairmos y_{t-1} dos dois lados da equação acima, temos:

y_t -t_{t-1}= a + (b-1) y_{t-1} + e_t

\Delta y_t = a + b^* y_{t-1} + e_t

onde \Delta y_t = y_t -y_{t-1} e b^*=b-1. Agora podemos realizar um teste de estacionariedade com as seguintes hipóteses:

H_0: b^*=0\quad\textrm{(a s\'erie \'e n\~ao-estacion\'aria) VS}\quad H_1: b^*<0\quad\textrm{(a s\'erie \'e estacion\'aria)}

Caso o leitor ainda esteja acordado, este teste pode ser feito de maneira muito simples, fazendo uma regressão linear de \Delta y_t em y_{t-1}. Este teste é conhecido como teste de Dickey-Fuller**. A estatística do teste é simplesmente a estatística-t para o coeficiente b^* acima, porém os valores críticos não são os mesmos de um teste t normal (ver tabela no final do post).

Como este teste nos ajudará a encontrar pares de ações cointegradas? Simples. Em primeiro lugar, para que o par seja cointegrado, ambas as séries de preços precisam ser não-estacionárias, pois lembre-se que a cointegração é uma relação entre duas séries integradas. Após utilizarmos o teste acima para verificar que os preços das duas ações são não-estacionários, aplicaremos um segundo teste para verificar se o spread entre as duas séries é estacionário. Este segundo passo é conhecido como metodologia de Engle-Granger.

Teste de Cointegração (metodologia de Engle-Granger)

No post anterior, definimos cointegração da seguinte maneira: dizemos que duas séries temporais (não-estacionárias) X e Y são cointegradas se existe um número \alpha tal que a série Z=X-\alpha Y  é estacionária. Ou seja, dadas duas séries não-estacionárias, se uma combinação linear delas for estacionária, elas são cointegradas.

A metodologia de Engle-Granger consiste em dois passos: primeiro fazemos uma regressão linear de uma série temporal contra a outra. Em seguida, aplicamos um teste de estacionariedade (como por exemplo o teste de Dickey-Fuller) nos resíduos desta regressão. Se os resíduos forem estacionários, isto significa que encontramos a combinação linear tal que as duas séries são cointegradas

O processo completo para fazer um teste de cointegração entre duas séries de preços (vamos chamá-las de X_t e Y_t) segue portanto os seguintes passos:

1. Usar um teste de estacionariedade para verificar se X_t e Y_t são não-estacionárias. Para haver cointegração, ambas devem ser não-estacionárias.

2. Usando dados das duas séries temporais, rodar uma regressão com a forma abaixo:

Y_t=\alpha X_t+u_t

e calcular os resíduos \hat{u} = Y_t - \hat{\alpha} X_t

3. Testar a estacionariedade dos resíduos \hat{u_t} desta regressão. Caso eles sejam estacionários, as séries são cointegradas.

No próximo post veremos alguns exemplos de aplicação destes testes a pares de ações brasileiras. É importante ressaltar que esta é apenas uma das metodologias de cointegração existentes. Existem outros tipos de testes, como por exemplo a metodologia de Johansen.

———————————————————————————-

Tabela de valores críticos do teste Dickey-Fuller:

Níve de significância
Tamanho amostral 1% 5% 10%
25 -3,75 -3,00 -2,62
50 -3,58 -2,93 -2,60
100 -3,51 -2,89 -2,58
250 -3,46 -2,88 -2,57
500 -3,44 -2,87 -2,57
∞∞ -3,43 -2,86 -2,57
Fonte: Market Risk Analysis, Vol II, Carol Alexander.

* O objetivo deste post é introduzir o leitor aos conceitos básicos de cointegração.Há inúmeros detalhes técnicos que devem ser considerados para aplicar os testes corretamente. Algumas referências técnicas com mais detalhes: o segundo volume da série Market Risk Analysis daCarol Alexander ou o livro Analysis of Financial Time Series deTsay.

** Uma versão mais sofisticada do teste possui o infeliz nome de Teste de Dickey-Fuller Aumentado. A diferença entre este teste e o teste de Dickey-Fuller normal é que ele inclui mais lags da série temporal na regressão.

Long-Short através de Cointegração – Parte 1

Em alguns posts anteriores, falei em linhas gerais sobre arbitragem estatística (aqui e aqui) e descrevi um modelo genérico para operar pares de ações, com uma aplicação usando o modelo de bandas de Bollinger. Nesta sequência de posts, explicarei um modelo mais sofisticado de arbitragem estatística, através do conceito de cointegração.

Estratégias de arbitragem estatística são baseadas em encontrar uma série temporal que possua a característica de estacionariedade ou reversão à média. Isto significa que é possível identificar situações em que a série divergiu de seu comportamento histórico, e prever com alguma segurança que a série convergirá ou reverterá para um comportamento “médio”. O conceito de cointegração formaliza matematicamente este comportamento e permite a realização de testes estatísticos para detectar séries com este comportamento. No contexto de operações com pares de ativos (pairs trading), a existência de uma relação de cointegração entre as séries de preços de dois ativos significa que pode ser possível realizar operações lucrativas de arbitragem. Por outro lado, se o par não for cointegrado, será impossível encontrar uma relação consistente para operar o par.

A Metáfora do Bêbado e seu Cachorro

Antes de definirmos matematicamente a cointegração, convém explicarmos com uma metáfora. Imagine que um bêbado está passeando pelo parque, andando a esmo. Sua direção é imprevisível: às vezes ele vira para a direita, às vezes ele vira para a esquerda. A trajetória do bêbado é chamada, na Estatística, de passeio aleatório: é um processo imprevisível*. Supondo que o bêbado continuará andando indefinidamente, é impossível prever onde ele estará após um certo tempo, e a melhor previsão da sua posição é o último lugar em que ele foi visto.

Se representarmos graficamente a posição do bêbado ao longo do tempo (distância entre o bêbado e um ponto qualquer de referência), o resultado será algo parecido com isto:

Este gráfico mostra a posição de um bêbado andando aleatoriamente (passeio aleatório Gaussiano)

Este gráfico mostra a posição de um bêbado andando aleatoriamente (passeio aleatório Gaussiano)

Agora imaginemos que o bêbado possui um cachorro, que o acompanha onde quer que ele vá. O cachorro não possui coleira e tende a se afastar do dono, atraído pelos diferentes cheiros e estímulos que sente ao andar pelo parque. Porém o bêbado, sempre que percebe que o cachorro não está por perto, o chama, e o cachorro retorna. O gráfico com a posição do bêbado e do cachorro será algo assim:

Este gráfico mostra as posições de um bêbado e seu cachorro (passeio aleatório Gaussiano e processo cointegrado)

Este gráfico mostra as posições de um bêbado e seu cachorro (passeio aleatório Gaussiano e processo cointegrado)

Podemos ver que, apesar de a posição do bêbado no parque ser imprevisível, a posição do cachorro em relação ao bêbado é relativamente previsível: o cachorro nunca está muito longe do dono. Podemos ir um passo adiante e quantificar isto, medindo a distância entre os dois, ou seja, a diferença entre as duas séries temporais do gráfico acima. O gráfico abaixo apresenta esta diferença e duas “bandas”, que representam pontos extremos na distribuição desta distância.

Distância entre o bêbado e o cachorro e bandas de confiança

Distância entre o bêbado e o cachorro e bandas de confiança

Podemos ver que, na média, o cachorro está sempre próximo do bêbado. Além disto, quando a distância se aproxima de +1 ou -1, há uma probabilidade muito grande de que no próximo instante a distância reverterá para sua média próxima de zero. Isto sugere que é possível apostar, com alta chance de ganhar, que o cachorro estará junto ao dono logo após se distanciar acima das bandas  mostradas. As bandas podem ser estimadas, por exemplo, através de uma medida de dispersão como o desvio padrão. No gráfico acima, as bandas representam um intervalo de +2 ou -2 desvios-padrão da média da distância. Este conceito é o mesmo utilizado no modelo de bandas de Bollinger.

Voltando ao mundo financeiro…

Talvez você esteja se perguntando porque estou falando de bêbados e cachorros em um blog sobre mercado financeiro. Transferindo a analogia acima para o mercado de ações, suponha que seja possível encontrar um par de ações que possui um comportamento similar, ou seja, que “andam juntas”. Se as séries de preços das ações forem cointegradas, ou seja, se uma das empresas for o bêbado e a outra, o cachorro, então será possível quantificar quanto a distância entre os preços das ações, que chamamos de spread, varia ao longo do tempo, e explorar situações nas quais esta distância divergiu de seu comportamento histórico.

É importante lembrar que o número de pares possíveis de ações aumenta rapidamente com o tamanho do mercado. Por exemplo, com um universo de 50 ações, existem 1125 pares possíveis. Com 100 ações, o número de pares sobre para 4950. Podemos ver como simular estratégias de operação com todos os pares possíveis pode se tornar um processo oneroso ou mesmo inviável. Sabemos também que, se um par não for cointegrado, é inútil tentar encontrar uma estratégia de reversão a média. Portanto é necessário termos um teste para identificar quais pares de ações são cointegrados. Mesmo dentro do universos dos pares que são cointegrados, não há garantia de sucesso. É preciso que o par possua algumas características específicas para que uma estratégia de arbitragem seja consistentemente lucrativa:

  • Relação de cointegração estável ao longo do tempo
  • Reversão frequente do spread à média
  • Variabilidade razoavelmente grande nas divergências

Definindo Cointegração

Para definir cointegração, definiremos primeiro alguns conceitos básicos:

Série temporal: uma série temporal é uma coleção de valores ordenados no tempo. Por exemplo, os preços diários de uma ação constituem uma série temporal. Se denotarmos por P^A_{t} o preço da ação A no instante t, então a coleção de valores {P^A_{1}, P^A_{2}, P^A_{3},... } etc é uma série temporal.

Estacionariedade: uma série temporal é estacionária** se (i) a sua média é constante, (ii) a sua variância é constante e (iii) a covariância entre dois instantes da série temporal t e s depende apenas da diferença entre t e s.

Uma série estacionária é chamada em Estatística de I(0) ou “integrada de ordem zero”. Uma série não-estacionária, mas cuja primeira diferença é estacionária, é chamada de integrada de ordem 1, ou I(1).

Por exemplo, a série temporal da distância entre o bêbado e o cachorro, mostrada acima, é estacionária: sua média é constante (de fato é igual a zero), sua variância é constante, e é possível mostrar que a covariância entre dois pontos quaisquer da série depende apenas da distância entre estes pontos. Já a posição do bêbado ou do cachorro são exemplos de séries não estacionárias. Não existe uma posição média na qual espera-se encontrá-los.

Em geral, séries de preços de ativos são não-estacionárias, ou seja, não é possível, definir um preço médio em torno do qual uma ação oscila consistentemente. O preço da ação pode subir indefinidamente ou pode chegar a zero, caso a empresa vá à falência.

Podemos agora definir cointegração para o caso de duas séries temporais não-estacionárias X e Y.  Dizemos que X e Y são cointegradas se existe um número \alpha tal que a série Z=X-\alpha Y  é estacionária. Ou seja, dadas duas séries não-estacionárias, se uma combinação linear delas for estacionária, elas são cointegradas.

Cointegração vs Correlação

Muitas vezes o conceito de correlação é utilizado para construir estratégias com pares de ações. Isto não é indicado, pois o fato de duas séries terem alta correlação não garante que o seu spread seja estacionário. Cointegração e correlação são conceitos relacionados, porém diferentes. Em particular, alta correlação não implica em cointegração, nem tampouco um alto nível de cointegração implica em correlação alta. Por exemplo, o gráfico abaixo mostra duas séries temporais cointegradas, mas cuja correlação é apenas 0.30. As séries estarão, no longo prazo, andando juntas, porém, no curto prazo, seus movimentos tem pouca relação entre si. Note que a diferença entre as duas séries é estacionária.

Séries cointegradas mas com baixa correlação

Séries cointegradas mas com baixa correlação

O oposto também é possível. O gráfico abaixo mostra duas séries altamente correlacionadas (correlação = 0.78) mas que não são cointegradas. Note que as séries estão se distanciando uma da outra e a sua diferença não é estacionária.

Séries altamente correlacionadas, mas não cointegradas.

Séries altamente correlacionadas, mas não cointegradas.

No próximo post, explicarei como fazer um teste de cointegração.

Uma boa referência para estes conceitos é o segundo volume da série Market Risk Analysis daCarol Alexander.

 

* Porém é possível demonstrar matematicamente que o bêbado sempre encontra o caminho para casa!

** Esta é a definição de estacionariedade fraca. Ver as referências para maior formalismo.

 

Pares com TBLE3

Um leitor perguntou sobre possíveis pares com a ação TBLE3 (TRACTEBEL ON). Com o intuito de auxiliá-lo, fiz algumas simulações para tentar identificar pares que possam ser rentáveis.

Detalhes das simulações:

  • Utilizei o modelo de Bandas de Bollinger, o modelo mais simples para operar pares de ações (veja aqui os detalhes básicos deste modelo e aqui detalhes sobre uma planilha que implementa o modelo).
  • Os parâmetros do modelo são:
    • Cálculo da média e desvio padrão com janela móvel de 20 dias
    • Abrir o trade quando a razão do par estiver acima de 2 desvios-padrão da média
    • Fechar o trade quando a razão convergir para a média
    • Fechar o trade se a razão não convergir em até 20 dias
    • Cada trade tem um valor nocional de R$10.000 em cada ponta
  • Utilizei dados diários de fechamento entre jan/2010 e fev/14. 
  • Inclui custos simulados de bid-ask, aluguel e corretagem.

Sempre bom lembrar do velho e bom Disclaimer. As informações apresentadas aqui são de caráter meramente informativo e educacional.

Fiz dois conjuntos de testes: um considerando apenas pares dentro do mesmo setor (Utilidades Públicas), e um possibilitando pares com ações de outros setores.

Apenas Pares Intrasetoriais

Foram testados 18 pares intrasetoriais com TBLE3. Destes, 14 apresentaram resultados positivos, baseado no critério de uma razão de informação¹positiva. Entretanto, os valores da razão de informação são relativamente baixos, indicando variabilidade no P&L.

Simulação de pares intrasetoriais com TBLE3

Simulação de pares intrasetoriais com TBLE3

O melhor par do backtest é o par de EQTL3 (Equatorial ON) com TBLE3. O gráfico abaixo mostra a evolução da razão do par, com as bandas de Bollinger.

Razão do par EQTL3_TBLE3 com bandas de Bollinger

Razão do par EQTL3_TBLE3 com bandas de Bollinger

Notamos que o par oscila entre períodos de comportamento mais estável com diversos momentos de tendência forte, os quais são ruins para um trade de convergência como o de pares. Em particular, o período mais recente em 2014 apresenta uma tendência forte de alta do par. Isto impactou negativamente o P&L do par nos trades mais recentes, conforme o gráfico de P&L acumulado por trade abaixo (a performance no passado, no entanto, foi muito forte, o que o que sugere investigar se há motivos fundamentalistas para entender a mudança no comportamento do par).

P&L por trade e acumulado da estratégia de bandas de Bollinger do par EQTL3_TBLE3

P&L por trade e acumulado da estratégia de bandas de Bollinger do par EQTL3_TBLE3

O segundo melhor par, com SBSP3 (SABESP ON), combina uma ação do mesmo setor, porém de uma indústria diferente. O gráfico de P&L acumulado mostra que o par tende a funcionar, porém possui alguns períodos de drawdowns severos.

P&L por trade e acumulado da estratégia de bandas de Bollinger do par SBSP3_TBLE3

P&L por trade e acumulado da estratégia de bandas de Bollinger do par SBSP3_TBLE3

O par GETI4_TBLE3 parece ser um pouco mais estável, com poucos trades negativos. Um destes trades, porém, é bastante severo.

P&L por trade e acumulado da estratégia de bandas de Bollinger do par GETI4_TBLE3

P&L por trade e acumulado da estratégia de bandas de Bollinger do par GETI4_TBLE3

 

Pares Sem Restrição de Setor

Em geral, é muito mais difícil encontrar pares intersetoriais estáveis. Neste caso, é preciso analisar as empresas com muito cuidado, pois a chance de se ter uma relação espúria é maior. Do ponto de vista matemático, é esperado que sejam encontrados pares intersetoriais com desempenho (dentro da amostra) melhor do que o dos pares intrasetoriais, visto que os pares intrasetoriais representam uma restrição dentro do conjunto de todos os pares. Na simulação sem restrição de setor, foram considerados todos os pares (inter e intrasetoriais). O total de pares testado foi de 144. Destes, 102 apresentaram razão de informação positiva, porém apenas 20 apresentaram valores relativamente bons (acima de 0.4).

O melhor par da lista for o par com CCRO4 (CCR SA ON, uma empresa do setor de Construção e Transporte). O gráfico abaixo mostra que os preços das duas empresas tendem a andar juntos, o que é uma indicação de que o par pode ser operável.

Histórico dos preços de CCRO3 e TBLE3

Histórico dos preços de CCRO3 e TBLE3

A razão deste par apresenta um comportamento relativamente estável; mesmo nos períodos de tendência, há correções frequentes que levam a crer que a convergência dos trades é possível:

Razão do par EQTL3_TBLE3 com bandas de Bollinger

Razão do par EQTL3_TBLE3 com bandas de Bollinger

O P&L acumulado possui um comportamento muito bom, com apenas 3 trades negativos entre os 33 trades do período:

P&L por trade e acumulado da estratégia de bandas de Bollinger do par CCRO3_TBLE3

P&L por trade e acumulado da estratégia de bandas de Bollinger do par CCRO3_TBLE3

Um outro par interessante é com UGPA3 (Ultrapar Participacoes S.A. PN, uma empresa que atua em diversos setores):

P&L por trade e acumulado da estratégia de bandas de Bollinger do par TBLE3_UGPA3

P&L por trade e acumulado da estratégia de bandas de Bollinger do par TBLE3_UGPA3

Conclusão

Apresentei algumas possibilidade de operações com pares com a ação TBLE3. Os pares de TBLE3 dentro do setor de Utilidades Públicas não pareceram muito consistentes. Pares de TBLE3 com empresas de outros setores parecem promissores, porém é importante ressaltar novamente que pares intersetoriais são muito mais arriscados, pois corre-se o risco de se detectar relações espúrias.

Ressalto também que os resultados acima são baseados em um modelo com parâmetros fixos, em um período de tempo escolhido de maneira arbitrária. Para obter resultados mais robustos, é recomendável a variação dos parâmetros e a realização de testes fora da amostra, que permitem avaliar a consistência dos pares com dados que não foram utilizados na construção do modelo.

Finalmente, é necessário comentar que o modelo de Bandas de Bollinger é um modelo bastante simplista, sem embasamento teórico. Há outros modelos mais robustos, utilizando por exemplo o conceito de cointegração.

¹ A razão de informação é definida como o P&L médio de todos os trades, dividido pelo desvio padrão dos P&Ls.

Ranking: 100 melhores pares long-short

Segue um ranking com os 100 melhores pares intrasetoriais para operações long-short, de acordo com o modelo de Bandas de Bollinger com janela de 20 dias. Os pares foram ordenados de acordo com o critério de razão de informação (P&L médio dividido pelo desvio-padrão do P&L), utilizando um backtest com um período de 2 anos (de 22/07/2011 a 22/07/2013).

100BestBollinger

Modelo básico para operar pares de ações

Escrevi anteriormente sobre arbitragem estatística e a importância da estacionariedade no sucesso de uma estratégia para operar pares de ativos. Em um outro post, comentei sobre alguns artigos descrevendo estratégias de pares. Finalmente, disponibilizei uma planilha para acompanhar pares de ações e fazer backtest de uma estratégia utilizando bandas de Bollinger para operar pares.

Pairs trading ou operação com pares é uma forma de operação na qual o trader acompanha a relação entre dois ativos, geralmente com comportamentos históricos parecidos, e abre um trade (comprando um dos ativos e simultaneamente vendendo o outro) quando esta relação foge dos padrões observados no passado. Em geral, o trader aposta na convergência da relação entre os ativos para a “normalidade” observada no passado, ou seja, é um trade que aposta na reversão à média.

Da descrição acima, podemos dividir o problema de operações com pares em 3 etapas: a seleção de pares de ativos, a definição de um modelo relacional entre os preços dos ativos, e a definição de um critério para detectar desvios com relação ao comportamento histórico dos pares. Podemos pensar nas duas última etapas como o modelo de operação (trading model), o qual define os sinais de entrada e saída de cada operação, enquanto as três etapas conjuntamente definem a estratégia de operação como um todo ou o modelo de operação com pares.

As três etapas acima podem ou não estar relacionados. Por exemplo, no modelo de pairs trading  utilizando o conceito de cointegração, as primeiras duas etapas estão geralmente relacionadas, pois a técnica econométrica utilizada para testar a cointegração sugere um modelo relacional linear entre os preços dos ativos.  Este tipo de modelo para pairs trading é mais complexo e será explicado em um futuro post. O objetivo deste post é dar uma visão geral do que está envolvido na construção de uma estratégia de pares, e exemplificar através de um dos modelos mais simples, que utiliza o conceito de bandas de Bollinger para definir os pontos de entrada e saída dos trades.

Seleção de Pares

As principais características que um par de ativos deve apresentar para que seja possível operá-lo com sucesso são:

  • Os dois ativos devem ter um comportamento similar e a relação entre os preços dos ativos deve ser relativamente estável ao longo do tempo – geralmente (mas nem sempre) isto ocorre com ativos que estão expostos aos mesmos fatores de riscos, o que tende a acontecer com ações de empresas que operam no mesmo setor, por exemplo;
  • A variação existente entre os preços dos dois ativos deve ser grande o suficiente para que os trades sejam lucrativos
  • A relação entre os ativos deve flutuar de um extremo ao outro com frequência, gerando um número grande de oportunidades de trade.

Pensando especificamente em pares de ações, existem várias abordagens possíveis para realizar a seleção dos pares:

  1. Pares Intrasetoriais: selecionar pares de ações de empresas que operam na mesma indústria – esta abordagem é intuitiva, uma vez que as empresas tenderão a estar expostas aos mesmos fatores de risco, fazendo com que os preços das ações possuam comportamentos similares;
  2. Pares estatisticamente similares: Selecionar pares de ações baseado em alguma medida estatística do comportamento dos preços das ações. Algumas possibilidades que foram sugeridas na literatura ou utilizadas no mercado são a correlação entre os retornos das ações (escolher os pares com maior correlação) ou alguma medida de distância entre os preços (escolher os pares com a menor distância, como por exemplo neste artigo).
  3. Pares cointegrados: Selecionar pares de ações que apresentam uma relação de cointegração. Esta é uma das abordagens mais robustas do ponto de vista estatístico, pois se os pares são cointegrados, espera-se um comportamento estacionário – portanto até certo ponto previsível – para o spread entre os preços das ações. Este conceito foi utilizado para testar estratégias com pares no mercado brasileiro aqui e aqui.

Uma possibilidade comumente utilizada envolve um feedback entre o modelo de operação, que determina os sinais de entrada e saída de cada tradee o processo de seleção de pares. Isto envolve a simulação ou backtest de vários pares em um período histórico, e alguma regra para escolher os pares com melhor desempenho no período testado. A figura abaixo esquematiza o processo.

Criação de uma estratégia de operação com pares

Criação de uma estratégia de operação com pares

Modelo Relacional Entre os Ativos

A próxima etapa, após a seleção dos pares, é a definição do modelo relacional entre cada par de ativos. Este modelo consiste em uma relação entre os preços dos dois ativos. Uma medida comumente utilizada consiste na razão entre os dois preços. Por exemplo, consideremos dois ativos A e B. Vamos denotar por P_{A,t} o preço do ativo A no instante t, e por P_{B,t} o preço do ativo B no instante t. Então a razão entre os preços dos dois ativos é dada por

R_{AB,t} = \frac{P_{A,t}}{P_{B,t}}.

Outra possibilidade é utilizar a diferença entre os preços (o chamado spread do par), definido por:

S_{AB,t} = P_{A,t}-\alpha P_{B,t},

onde \alpha é uma constante obtida, por exemplo, através de uma regressão linear. 

Uma vez definido o modelo relacional, pode-se construir o histórico da relação entre os dois ativos ao longo do tempo, com o qual é possível analisar o comportamento do par. O modelo de bandas de Bollinger, em geral, é baseado na razão entre os preços dos dois ativos.

Critérios de Divergência e Convergência

A última etapa para completar a estratégia é definir os critérios de divergência e convergência, os quais definirão os sinais de entrada e saída das operações. Um dos modelos mais simples comumente utilizado no mercado é o modelo de bandas de Bollinger. Este modelo utiliza a média e o desvio padrão da razão entre os preços dos ativos para determinar divergências e convergências. Geralmente essas quantidades são calculadas através de uma janela móvel, onde os últimos n pontos são utilizados. O modelo possui duas bandas, uma inferior e uma superior, que são calculadas subtraindo ou adicionando um múltiplo do desvio padrão à média da razão do par. Uma escolha comum consiste em utilizar 2 vezes o desvio padrão. Neste caso, as bandas de Bollinger em um instante t são dadas por:

Banda Superior_t = \mu_t + 2 \times \sigma_t

Banda Inferior_t = \mu_t - 2 \times \sigma_t,

onde \mu_t e \sigma_t são, respectivamente, a razão média e o desvio padrão da razão do par no instante t.

Quando a razão do par está acima da banda superior, isto denota um sinal de venda, e quando a razão encontra-se abaixo da banda inferior, isto denota um sinal de compra do par (explicaremos o que significa comprar ou vender o par em breve). O fechamento da operação ocorre quando a razão retorna para seu valor médio, por exemplo. Ou seja, as regras de entrada e saída dos trades podem ser as seguintes:

Vender o par (vender ação A e comprar ação B) quando R_{AB,t}>Banda Superior_t.

    • Fechar a venda (comprar ação A e vender ação B) quando a razão convergir para a média de cima para baixo, ou seja, R_{AB,t}<\mu_t

Comprar o par (comprar a a ação A e vender a ação B) quando R_{AB,t}<Banda Inferior_t

  • Fechar a compra (vender ação A e comprar ação B) quando a razão convergir para a média de baixo para cima, ou seja,  R_{AB,t}>\mu_t

Para ficar mais claro, vamos exemplificar. Suponha que após analisarmos as ações de empresas do setor financeiro, optamos por escolher o par de ações BBDC4 (Bradesco PN) e ITSA4 (Itausa PN).  A figura abaixo apresenta os preços das duas ações desde 2012:

Preços de BBDC4 e ITSA4

Preços de BBDC4 e ITSA4

Utilizando estes preços, calculamos a razão entre os preços de BBDC4 e ITSA4 para este período, ou seja,  para cada dia, calculamos:

R_{BBDC4/ITSA4,t} = \frac{P_{BBDC4,t}}{P_{ITSA4,t}}.

Suponha que vamos usar uma janela móvel com n=20 dias. Para calcular as Bandas de Bollinger é necessário calcular, para cada dia, a média e o desvio-padrão dos últimos 20 valores da razão do par. A banda superior é calculada como a razão média, adicionada de 2 vezes o desvio-padrão, e a banda inferior é dada pela razão média, subtraída de 2 vezes o desvio padrão. O cálculo para este par resulta no seguinte gráfico:

Bandas de Bollinger - BBDC4 vs ITASA4

Bandas de Bollinger – BBDC4 vs ITASA4

No gráfico acima, as linhas rosas indicam as bandas de Bollinger, a linha verde indica a razão média, e a linha azul indica a evolução da razão do par BBDC4_ITSA4. As setas de cima para baixo indicam sinais de venda do par, e as setas de baixo para cima indicam sinais de compra do par.

Dinâmica de Compra e Venda do Par

Quando passamos a trabalhar com a razão de um par, podemos pensar nela como o “preço” de um novo ativo, que é o par de ações. O trade de pares é um trade de reversão, onde iremos apostar na queda do “preço” ou razão do par, quando ele encontra-se alto em relação ao comportamento histórico, ou no aumento da razão, quando esta encontra-se baixa em relação ao seu padrão histórico. Mas o que significa comprar ou vender um par de ações?

Na definição da razão, definimos uma das ações com o numerador e a outra como denominador. No nosso exemplo, BBDC4 era o numerador e ITSA4 o denominador. Ou seja, quando o valor da razão aumenta, a interpretação é de que BBDC4 está ficando cara com relação a ITSA4 (ou, conversamente, ITSA4 está ficando barata com relação a BBDC4). Um aumento da razão do par pode ser devido à algumas situações diferentes (analogamente, invertendo as situações abaixo teríamos uma queda da razão do par):

  • os preços das duas ações aumentaram, mas o preço de BBDC4 aumentou mais do que o de ITSA4
  • os preços das duas ações caíram, mas o preço de BBDC4 caiu menos do que o preço de ITSA4
  • o preço de BBDC4 aumentou e o de ITSA4 diminuiu, ou
  • o preço de uma delas ficou parado e o da outra movimentou-se.

Outra maneira de pensar na razão é como um indicador do preço relativo de BBDC4 em relação a ITSA4, ou seja, se a razão for igual a 3, significa que é preciso 3 ações da ITSA4 para comprar uma BBDC4.

Quando a razão indica que BBDC4 está muito cara em relação a ITSA4 (ou seja, acima da banda superior), o modelo indica uma venda do par, apostando que a situação irá se reverter em breve. A operação de venda do par BBDC4_ITSA4 é uma operação de venda de BBDC4 e compra simultânea de ITSA4. Esta operação é caixa-neutra: o valor arrecadado com a venda de BBDC4 é utilizado para a compra de ITSA4. Este tipo de operação é chamado de long-short. O operador fica short (vendido) em uma ação e long (comprado) em outra.

É importante notar que, para realizar a venda de uma ação que o operador não possui, ele precisa primeiro realizar o empréstimo da ação, pelo qual paga uma taxa ao doador do papel. Como a operação está em pontas opostas de papéis com características similares, o risco de mercado é reduzido em comparação a uma situação de compra ou venda seca de um dos papéis. Se a operação der certo, a razão convergirá para sua média, momento no qual o operador desfaz o trade (comprando BBDC4 e vendendo as ITSA4 compradas). No caso de divergência na banda inferior, a dinâmica é invertida: o operador compraria BBDC4 e venderia ITSA4.

Como calculamos o lucro ou prejuízo (P&L) de uma operação com pares? Vamos analisar o último trade mostrado no gráfico acima. No dia 5/7/2013, o modelo indicou uma compra do par. Os preços de BBDC4 e ITSA4 neste dia eram, respectivamente, R$26,13 e R$7,75. Supondo um financeiro de aproximadamente R$10.000,00 para o trade e arredondando as quantidades, iríamos comprar 400 ações de BBDC4 e simultaneamente vender 1300 ações de ITSA4 . No dia 11/7/2013,   a razão convergiu para a média e os preços eram, respectivamente, R$27,36 e R$7,92. Notamos que as duas ações subiram, porém em termos percentuais, BBDC4 subiu mais do que ITSA4. Como compramos 400 ações de BDDC4, obtivemos lucro de R$492. A venda de ITSA4 gerou um prejuízo de R$221, pois o preço aumentou. No geral, a operação deu portanto um lucro bruto de R$271. O quadro abaixo resume os cálculos.

Exemplo de cálculo de P&L de uma operação com pares

Exemplo de cálculo de P&L de uma operação com pares

É importante ressaltar que o exemplo acima não considerou os custos de corretagem e do aluguel de  ITSA4.

Riscos de Operações com Pares

Apesar de estratégias com pares serem comumente  chamadas de “neutras” ao risco de mercado, esta afirmação é incorreta. Apesar de ser verdade que a exposição vendida mitiga grande parte da volatilidade, em comparação com  uma posição comprada seca, ainda existe risco nas operações com pares. Ao abrir o trade, o operador está apostando que a razão irá se movimentar em uma certa direção; caso a razão não se comporte da maneira esperada, o operador pode ter perdas significativas. A razão do par pode não apresentar uma convergência rápida o suficiente, ou mesmo divergir mais ainda, o que acarreta alguns agravantes. O primeiro é que, quanto maior a duração da operação, maior será o custo com o aluguel da ponta vendida. Segundo, quanto mais a razão divergir após a abertura do trade, maior será a correção necessária para recuperar o valor já perdido. Além disso, vale lembrar que os custos operacionais de um operação com par são altos, pois a operação completa envolve a execução de 4 ordens, além do custo de aluguel da ponta vendida pelo período da operação.

É possível tornar a estratégia um pouco mais elaborada, definindo por exemplo um stop-loss para evitar ficar em uma operação que não está convergindo, ou tentando acertar com mais eficácia o ponto em que ocorrerá a reversão. É importante lembrar também que as relações históricas às vezes se alteram devido à mudanças nas estruturas ou operações das empresas. Por este motivo, é importante ficar atento ao que está acontecendo com as duas empresas, para evitar apostar em uma convergência que não ocorrerá.

Fico por aqui e da próxima vez escreverei sobre modelos que utilizam o conceito de cointegração.

Arbitragem estatística – alguns artigos

Continuando a séries de posts sobre arbitragem estatística, estou postando links para alguns artigos sobre o assunto. Há muitos livros sobre o assunto, mas para ser sincero a maioria é superficial demais, ou gasta tempo demais explicando casos idealizados que nunca serão encontrados na prática. Os artigos acadêmicos ainda são, na minha opinião, uma das melhores fontes.

O primeiro da lista chama-se Pairs Trading: Performance of a Relative Value Arbitrage Rule, de Gatev et al. Os autores analisam uma regra simples de trade de pares, baseada na distância normalizada entre os preços, no mercado norte-americano. Marcelo Perlin replica a estratégia no mercado de ações brasileiro em seu artigo Evaluation of Pairs Trading Strategy at the Brazilian Financial Market. Aliás, o site onde estes artigos se encontram, http://www.ssrn.com, é um ótimo repositório de papers de finanças.

Avellaneda et al estudam a arbitragem estatística com uma abordagem um pouco mais complexa no artigo Statistical Arbitrage in the U.S. Equities Market. Eles usam dois métodos para determinar se uma ação está sobre/sob-valorizada. O primeiro consiste em fazer a regressão dos retornos das ações nos retornos de ETFs setorias. O segundo consiste em fazer a regressão dos retornos das ações em fatores extraídos usando análise de componentes principais (PCA) na matriz de covariância dos retornos. Após isso o modelo vende as ações que estão sobrevalorizadas e compra as que estão subvalorizadas.

Finalmente, Alexander et al estudam a ideia de replicar um índice de ações e construir estratégias de arbitragem estatística através de cointegração no artigo The Cointegration Alpha: Enhanced Index Tracking and Long-Short Equity Market Neutral Strategies.

Essa é uma lista curta, mas os artigos contém muitas outras referências interessantes.

Backtest de uma estratégia quantitativa

No post anterior, eu introduzi um tipo simples de estratégia quant, o trade de pares, e dei um exemplo da estratégia para o par PETR3-PETR4. Mostrei os pontos de entrada e saída de dois trades de acordo com o critério de divergência adotado no exemplo, de acompanhar o spread entre as duas ações, padronizados pela média e desvio-padrão locais. Mas apenas dois trades positivos não são suficientes para decidir se o  par é realmente explorável. Além disso, escolhemos apenas um par entre muitos pares possíveis. Algumas perguntas que poderíamos fazer:

  • Que outros pares seriam bons para esta estratégia?
  • Qual o retorno esperado dos trades por par?
  • Qual(is) o(s) risco(s) das posições?
  • A estratégia dá retorno positivo consistentemente? Se não, é possível identificar em que períodos ela não funciona?
  • Como muda o desempenho da estratégia com mudanças nos parâmetros?

Essa perguntas podem ser respondidas fazendo-se o backtest¹ da estratégia. O backtest é simplesmente uma simulação histórica dos trades que uma estratégia teria feito ao longo do tempo, usando em cada ponto do tempo apenas os dados disponíveis até lá. No nosso exemplo de PETR3-PETR4, significaria percorrer a série temporal do spread entre as ações ao longo de um período pré-determinado, para um conjunto fixo de parâmetros, e anotar o desempenho de todos os trades gerados pelo modelo. As estatísticas desses trades nos ajudarão a responder as perguntas acima. Um bom backtest é um passo fundamental no desenvolvimento de uma estratégia de investimento bem sucedida, e muitos erros e problemas podem ser detectados neste estágio, antes de o trader colocar dinheiro em risco. O backtest depende, basicamente, de três fatores:

  • Dados
  • Plataforma
  • Modelo de trading\parâmetros
  • Custos

Vamos falar brevemente de cada um deles a seguir.

Dados

Uma estratégia de investimento quant é um algoritmo que toma como valores de entrada dados (por exemplo, preços de ações) e retorna como saída uma ação (comprar, vender, zerar) a ser executada. Para que a saída do algoritmo seja confiável, é preciso que os dados sejam confiáveis. Isso se chama de “Princípio GIGO” (Garbage-In, Garbage-Out). Se os dados tiverem problemas, a saída do algoritmo provavelmente também terá, e as conclusões do backtest perdem o sentido. Há muitos lugares onde é possível obter dados de ações, mas sempre cabe ao usuário checá-los. Em geral, usamos nos backtests os preços corrigidos das ações, que incorporam proventos como dividendos, splits etc. Sendo possível, é sempre melhor obter dados em alta frequência e o book de ofertas. Isso permite um grau de sofisticação maior no backtest, pois é possível chegar mais próximo do que se observaria na prática. Na realidade, tudo vai depender do tipo de estratégia que está sendo considerada. Para uma estratégia de trading em alta frequência, onde segundos podem fazer a diferença, é essencial ter dados no maior nível possível, de preferência os preços e livro de ofertas a cada negócio (tick-by-tick). Já para uma estratégia de mais longo prazo, onde o horizonte é de vários dias ou mesmo meses, podemos até usar os preços de fechamento. Um cuidado que se deve ter quando se testa uma estratégia com muitas ações é incluir um conjunto de ações o mais próximo possível do que teria sido realmente utilizado no período estudado, inclusive usando ações que podem ter “morrido” (a empresa deixou de existir). Um exemplo menos drástico: a ação NETC4, por volta de 1999, parecia valer muito e, alguns anos depois, seu preço foi quase a zero. Se o backtest contempla o período em questão, a decisão de excluir a ação da base de dados pode introduzir um viés na análise.

Plataforma

A plataforma é o motor no qual os testes serão rodados. Na prática, a plataforma é uma aplicação, um programa de computador que vai realizar a simulação. Quanto mais sofisticada a plataforma e o nível de conhecimento de programação do trader,  maior o nível de detalhe e realismo será possível alcançar no backtest. Além disso, será possível fazer a simulação de estratégias mais complexas, com maior número de ativos, e em menor tempo. Algumas plataformas possíveis:

  • Excel – uma das mais viáveis e baratas. Se o trader souber programar em VBA, ganhará bastante versatilidade. Além disso, algumas corretoras têm um link DDE que permite a visualização de preços, livro de ofertas etc diretamente na planilha, tornando o Excel uma possibilidade também como plataforma de execução.
  • Matlab – um dos preferidos no mundo quant, por sua versatilidade, facilidade de uso, interface gráfica e pelo grande número de ferramentas analíticas pré-instaladas. O grande senão é o preço: uma licença custa na casa de milhares de dólares. Mesmo assim, muitas universidades mantém licenças, e existe uma versão para estudante com preço reduzido. Existem alguns clones grátis ou mais baratos, como SciLab, Octave etc.
  • R – o R é um software livre com muitos pacotes estatísticos criados por usuários. É uma ótima opção, e de graça.
  • Plataformas dedicadas – de corretoras ou empresas especializadas. Eu já usei o Metastock, que tem uma grande quantidade de indicadores técnicos, mas como plataforma de backtest acho meio limitado.
  • C, C++, C# – para quem sabe programar nestas linguagens, é possível criar backtests muito eficientes e complexos.

Qualquer que seja a plataforma de execução, o importante é tomar muito cuidado na hora do backtest para não deixar passar erros. A maior parte do tempo, quando uma estratégia parece boa demais para ser verdade, há um erro de programação ou na base de dados.

Modelo de Trading e Parâmetros

Uma vez que temos os dados e escolhemos uma plataforma para realizar o backtest, é hora de traduzir a ideia de trading em regras analíticas, quantitativas e sem ambiguidade. No nosso exemplo anterior, decidimos visualmente (e de maneira um tanto subjetiva) onde entrar nos trades. Na realidade, o processo de construção de uma estratégia desse tipo passaria por uma etapa em que os cálculos a serem feitos serão especificados, assim como os parâmetros do modelo. No exemplo anterior, teríamos pelo menos três parâmetros: o tamanho da janela para calcular a média e desvio padrão do spread, o valor para entrar nos trades, e o valor para sair. Uma das vantagens do backtest é que podemos estudar como a estratégia se comporta quando estes parâmetros são alterados. Claro que sempre gostaríamos de escolher o “melhor” conjunto de parâmetros (ou seja, o que dá maior retorno por unidade de risco), mas é preciso muito cuidado, pois às vezes, alguns pontos no espaço paramétrico de um modelo parecem bons demais devido a apenas um pequeno número de trades, ou ao período escolhido. O ideal é que a estratégia funcione bem para várias escolhas diferentes dos parâmetros. A introdução de mais critérios e parâmetros, em geral, melhora o desempenho de um modelo, mas é preciso atenção para não deixar o modelo complexo demais, a ponto de ele começar a capturar idiossincrasias do período estudado. Quando isso acontece, o modelo pode se sair muito bem no período usado no backtest, mas performar mal no futuro (ou seja, quando o dinheiro estiver no jogo). Isso se chama overfitting. É sempre bom definir parâmetros, regras etc usando um pedaço da amostra, reservando uma parte mais recente para fazer um teste “fora da amostra”.

Custos

Existem vários custos envolvidos em qualquer estratégia de investimento. Os de operação incluem não só corretagem, emolumentos, aluguel de ações, como também a diferença entre o preço observado e o que será realizado no trade (o chamado slippage). Dependendo da estratégia, os custos de operação são extremamente significantes ou até insignificantes. Para uma estratégia de alta frequência, onde o ganho por trade é baixo e o número de trades é alto, o custo tem alto impacto e pode fazer a diferença entre uma estratégia lucrativa e outra perdedora. De maneira geral, quanto maior o horizonte do trade, menor o impacto dos custos transacionais. Um bom backtest inclui o custo de operação nas contas.

Resultados

Uma vez que as regras de trading (isto é, o modelo) foi definido (e programado em alguma plataforma), o backtest será rodado, e o resultado será uma lista com os trades, e os respectivos P&Ls (profit and loss), ou seja, quanto dinheiro cada trade ganhou ou perdeu. A análise da estratégia é feita em cima desses números. Existem inúmeras medidas de performance que podem ser usadas. Algumas delas:

  • retorno (ou P&L – profit and loss) médio por trade – quanto de retorno a estratégia dá?
  • drawdown – mede o pior período em termos de perda. Deve ser o mais baixo possível.
  • razão de informação – retorno médio dividido pelo desvio padrão; mede o retorno por unidade de risco.
  • razão de Sharpe – se a estratégia usa caixa, este poderia estar investido em títulos do governo, isso é, rendendo CDI. A razão de Sharpe mede a diferença entre o retorno médio da estratégia e o retorno de um ativo sem risco, divido pelo desvio padrão.
  • razão de Sortino – similar a de Sharpe, mas com risco definido pelo desvio padrão apenas dos retornos negativos. Não penaliza variância devido a ganhos.
  • % de trades positivos

Bom, espero que o post seja útil. No futuro pretendo postar algum exemplo de backtest em Excel. ¹ Eu prefiro sempre que possível usar termos em português, mas desconheço um termo adequado para backtest. Estou tentado a usar “simulação”. Se alguém tiver alguma outra ideia, favor avisar.