A estratégia de long & short

Long-short refere-se a uma estratégia em que se possui uma posição comprada e uma vendida, normalmente no mercado de ações. O objetivo desta estratégia é buscar uma posição em se tenha uma imunidade dos movimentos do mercado, ou seja, é considerada neutra em relação ao mercado. No post de hoje, realizamos um exercício de uma estratégia long & short utilizando o Beta de mercado para a construção e ordenação de portfolios. O exercício é criado a partir de ações brasileiras e utilizando o R para a sua construção.

O objetivo da estratégia, é encontrar os ativos ou portfolio que devem ser escolhidos como aqueles que vão estar em uma posição comprado ou vendida. Há inúmeras formas de realizar esse procedimento, e uma delas é através da separação de ações que possuem betas de mercado elevados e aqueles que possuem betas baixos. O objetivo geral então é realizar um sistema de classificação através de um fator de mercado ou estatística para ranquear os portfolios que estarão comprados ou vendidos.

No caso da estratégia com Betas de Mercados, Betas elevados tendem a serem mais voláteis que o movimento de mercado, enquanto beta baixos tendem a representar menos volatilidade. Neste exercício, trataremos de construir portfolios com betas elevados, de forma a ter uma posição comprada, e também betas pequenos, de forma a ter uma posição vendida. A diferença entre os retornos de ambos resultará no resultado da estratégia long & short.

Trataremos de utilizar 5 ações escolhidas sem nenhum critério. Utilizamos o período de 2011-01-01 até 2022-07-01, transformando preços das ações em retornos mensais. Os pesos dos ativos em cada portfolio foi baseado na Capitalização de Mercado da ação, e para deixar o exercício mais simples e com o foco na estratégia, foi utilizado o valor da Capitalização do dia de 2022-07-18 constante durante todo o período.

O primeiro passo será importar os pacotes necessários.

Como nosso objetivo é criar os betas de mercado mensais, trataremos de realizar a importação dos preços de fechamento das ações, bem como os dados da Ibovespa e do CDI, este com o propósito de calcular o excesso de retorno das ações e do mercado.

Os preços das ações e do Ibovespa foram retirados com a função tq_get do {tidyquant}, enquanto a série do CDI foi retirado com o pacote {rbcb} através do código 4391.

Após a importação, calculamos os retornos mensais utilizando a função tq_transmute do pacote {tidyquant} em conjunto com a função periodReturn do pacote {quantmod}. Abaixo, realizamos o tratamento dos dados e calculamos os excessos de retorno.

Com os excessos de retornos em mãos, podemos calcular os betas mensais através de uma função de janela móvel. Abaixo, vemos no gráfico o resultado dos betas em uma janela de 48 meses.

Em seguida, importamos os dados da Capitalização de Mercado através do site do Yahoo Finance e realizamos os seus devidos tratamentos.

Antes de classificar os portfolios, devemos defasar os valores do beta. Esse procedimento é necessário devido ao tempo da informação contida no Beta. O beta é calculado apenas em sua totalidade com os valores no fim do mês, portanto, não há a informação sobre o seu valor durante o período presente do retornos das ações, o valor conhecido é apenas aquele do período anterior.

Agora podemos classificar os portfolios baseados no valor da mediana dos Betas encontrados. Aqueles que estão abaixo da mediana, se encontram no portfolio com betas baixos (beta low), ao contrário, tem-se os betas altos (beta high). Por fim, calcula-se os retornos dos portfolios "high" e "low" com base nos pesos da Capitalização de Mercado de cada ação através da função weighted.mean().

Visualizamos o comportamento dos retornos mensais de ambos os portfolios no gráfico abaixo.

 

Abaixo, calculamos o resultado a estratégia long & short por meio da diferença entre os portfolios em posição comprada e vendida.

Com os resultados completos, visualizamos os retornos anuais dos portfolios.


Para averiguar a performance, também podemos calcular o retorno acumulados do portfolios.

 

__________________________________________________

Quer saber mais?

Veja nossos cursos da trilha de Finanças Quantitativas e veja o vídeo comentado com o código no Clube AM.

_________________________________________________

Referências

Tidy Finance with R by Christoph Scheuch, Stefan Voigt and Patrick Weiss.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

O que é e como funcionam Sistemas Multi-Agentes

Sistemas multi-agentes (MAS) representam uma nova forma de estruturar aplicações de inteligência artificial, especialmente úteis para lidar com problemas complexos e distribuídos. Em vez de depender de um único agente generalista, esses sistemas são compostos por múltiplos agentes especializados que colaboram, competem ou se coordenam para executar tarefas específicas. Neste post, explicamos o que são os MAS, seus principais componentes (como LLMs, ferramentas e processos) e as arquiteturas mais comuns.

O que é um Vector Database e como criar um com LangChain

Nesta postagem, mostramos como construir um pipeline simples de RAG (Retrieval-Augmented Generation) usando o LangChain, o modelo Gemini 2.0 Flash e o Vector Database Chroma. Utilizamos como exemplo o Relatório de Inflação de junho de 2025 do Banco Central do Brasil. O fluxo envolve o download e leitura do PDF, divisão do texto com RecursiveCharacterTextSplitter, geração de embeddings com Gemini, armazenamento vetorial com Chroma e busca semântica para responder perguntas com base no conteúdo do relatório. É uma aplicação prática e didática para economistas que desejam integrar IA ao seu fluxo de análise.

Automatizando a Construção de Códigos em Python com LangGraph

Neste post, mostramos como construir um agente de código em Python utilizando LangGraph, LangChain e Gemini. A proposta é construir um protótipo para automatizar o ciclo completo de geração, execução e correção de código com o uso de LLMs, organizando o processo em um grafo de estados.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.