Estimador de spread bid-ask de Roll: fórmula, exemplo e limites
Entenda como o estimador de Roll infere o spread bid-ask efetivo a partir da autocovariância negativa dos retornos, veja um cálculo hipotético e conheça os limites das hipóteses
Neste guiaO que o estimador de Roll foi criado para medir
Resumo breve
O estimador de Roll infere um spread bid-ask efetivo implícito pelo modelo a partir da covariância negativa entre retornos consecutivos de preços de transação. Ele precisa de preços de transação, e não de um histórico de cotações, mas o resultado depende de hipóteses sobre o preço eficiente, a direção das negociações, a amostragem e a estabilidade do spread.
O que o estimador de Roll foi criado para medir
O spread cotado é o preço de venda menos o preço de compra em determinado instante. Já o spread efetivo resume o custo enfrentado pelas negociações realmente executadas em relação ao preço médio simultâneo. O estimador de Roll é uma aproximação de baixa frequência desse spread efetivo: ele usa a covariância serial das variações observadas nos preços de transação para inferir a diferença de preço que pode ter causado reversões de curto prazo.
A vantagem é exigir poucos dados. Se houver preços de transação confiáveis, mas não cotações históricas de compra e venda nem indicadores da direção da negociação, ainda é possível calcular o estimador. Isso pode ser útil para comparações históricas e mercados com arquivos incompletos de cotações. Porém, ele não reconstrói o livro de ofertas, não identifica o lado de cada negociação nem informa ao operador o spread disponível agora. O artigo original de Roll deriva essa medida para um mercado eficiente e observa que a grandeza estimada é um spread efetivo, não necessariamente o spread cotado exibido (Roll, 1984).
A estimativa também não é uma medida completa dos custos de transação. Ela não inclui comissões, impacto no mercado de uma ordem específica, custo de espera, quantidade não executada ou movimento de preço após a observação. Trate-a como um resumo, baseado em um modelo, do comportamento histórico dos preços de transação, e não como uma cotação executável ou um modelo completo de custos para backtest.
O bid-ask bounce gera covariância negativa
Seja \(x_t\) o logaritmo do preço de transação, \(m_t\) o logaritmo do valor não observado em torno do qual ficam os preços de compra e venda, e \(s\) o spread efetivo completo em unidades de log-preço. No modelo simétrico simples,
\[ x_t=m_t+\frac{s}{2}q_t, \]
em que \(q_t=+1\) representa uma negociação iniciada pelo comprador ao preço de venda, e \(q_t=-1\), uma negociação iniciada pelo vendedor ao preço de compra. Portanto, o retorno observado é
\[ r_t=\Delta x_t=\Delta m_t+\frac{s}{2}(q_t-q_{t-1}). \]
Suponha que os sinais das negociações sejam independentes e que \(+1\) e \(-1\) tenham a mesma probabilidade, que as inovações do valor eficiente não apresentem covariância serial e que o spread permaneça constante durante a amostra. Quando uma negociação passa de um lado do mercado para o outro, o preço de transação atravessa o spread, mesmo que o valor subjacente quase não mude. Uma compra ao preço de venda seguida de uma venda ao preço de compra gera um retorno negativo seguido de uma reversão positiva, ou a sequência inversa. Se duas negociações consecutivas ocorrerem do mesmo lado, o componente do spread entre essas observações pode ser zero.
Sob essas hipóteses, o componente do spread faz com que retornos consecutivos se movam, em média, em direções opostas:
\[ \operatorname{Cov}(r_t,r_{t-1})=-\frac{s^2}{4}. \]
Isolando \(s\), obtemos a fórmula de Roll. Esse padrão de covariância decorre do modelo quando as hipóteses são válidas; não prova que toda reversão de preço observada seja causada pelo spread bid-ask.
<!-- Illustration placement: after section 3; text-free conceptual comparison of a smooth underlying value path with transaction prices alternating above and below it. No labels, axes, or values. -->
Use a covariância de primeira ordem, não a autocorrelação
Escreva a covariância de primeira ordem como \(C_1=\operatorname{Cov}(r_t,r_{t-1})\). Para uma amostra com \(T\) retornos, uma convenção amostral comum é
\[ \widehat C_1=\frac{1}{T-1}\sum_{t=2}^{T}(r_t-\bar r)(r_{t-1}-\bar r), \]
em que \(\bar r\) é a média da amostra. Se \(\widehat C_1<0\), a estimativa plug-in é
\[ \widehat s_{\text{Roll}}=2\sqrt{-\widehat C_1}. \]
O resultado tem as mesmas unidades dos retornos usados na covariância. Se \(r_t\) for um retorno logarítmico, \(\widehat s\) será um spread proporcional ou em unidades de log-preço. Se a entrada for uma variação de preço em dólares, e não um retorno, a estimativa será expressa em unidades de preço. Informe a transformação, o intervalo de amostragem e a convenção da covariância antes de comparar estimativas entre ativos ou períodos.
Roll enfatiza a covariância, e não a correlação. A correlação divide pela variância incondicional do retorno, que inclui variações decorrentes de novas informações sobre o valor eficiente. Essa variância impulsionada por notícias pode mudar mesmo que o mecanismo do spread permaneça igual. No modelo, a covariância não normalizada tem relação direta com o spread ao quadrado; substituí-la por uma autocorrelação muda o estimador e sua interpretação. Se um estudo usar logaritmos de preços, retornos reescalados ou outro denominador, deve declarar essa convenção explicitamente.

Um cálculo hipotético transforma −1.44 bp² em uma estimativa de 2.4 bp
Suponha que uma amostra hipotética de retornos logarítmicos dos preços de transação esteja expressa em pontos-base e que sua covariância amostral de primeira ordem, após a remoção da média, seja \(-1.44\,\text{bp}^2\). A estimativa é
\[ \widehat s_{\text{Roll}}=2\sqrt{-(-1.44)}=2\sqrt{1.44}=2(1.20)=2.40\,\text{bp}. \]
Sob o modelo, essa é uma estimativa do spread proporcional completo de \(2.40\) pontos-base, ou \(0.024\%\). Com um preço médio hipotético de \(\$100\), a conversão aproximada para dólares, supondo um spread pequeno, é
\[ \$100\times 0.00024=\$0.024 \]
por ação para o spread completo. Metade desse valor, cerca de \(\$0.012\) por ação, é a distância entre o preço médio e um dos lados. Se as cotações permanecessem inalteradas e um operador comprasse 1.000 ações ao preço de venda e depois as vendesse ao preço de compra, a diferença de preço pelo spread completo seria de aproximadamente \(\$24\), antes de comissões, outras tarifas, variação de preço ou impacto no mercado. São conversões ilustrativas, não cotações observadas nem custos de execução garantidos.
O cálculo não mostra se \(\$100\) era um preço médio executável, qual quantidade estava disponível ou por qual preço uma ordem teria sido executada. Uma estimativa de Roll pode resumir uma amostra histórica em uma única estatística e ocultar variações por horário, tamanho da ordem ou estado do mercado. Não compare a estimativa ao spread exibido atualmente, a menos que o ativo, o intervalo e a definição do spread sejam compatíveis.
Mudanças no spread e nas janelas de amostragem alteram a grandeza estimada
Supor que \(s\) seja constante é uma simplificação. Roll também considera um spread que varia ao longo do tempo e deriva, no modelo, uma relação com a média dos spreads ao quadrado. Nesse caso, aplicar a fórmula da raiz quadrada geralmente corresponde ao spread raiz da média dos quadrados (RMS), e não necessariamente ao spread médio aritmético. Algumas observações com spreads amplos podem, portanto, influenciar a estimativa de forma desproporcional, pois o spread entra ao quadrado.
O artigo original também apresenta um resultado que pode parecer mais amplo do que é: sob suas hipóteses, a covariância esperada causada pelo spread não depende da duração de um intervalo de observação sem sobreposição. Isso não garante que estimativas empíricas diárias, semanais e intradiárias sejam iguais. Os sinais reais das negociações podem persistir entre observações, alguns intervalos não contêm negociações e as condições do spread variam. Mudar o intervalo também altera qual negociação se torna o preço amostral e quanto ruído informacional entra em cada retorno.
Escolha a regra de amostragem antes de ver o resultado. Por exemplo, compare preços de transação amostrados de forma consistente em vez de misturar negociações oficiais de fechamento, marcações de preço médio e últimos preços desatualizados. Indique se os retornos abrangem o tempo de calendário ou as sessões de negociação, como feriados e períodos sem negociação são tratados e se houve ajustes para eventos corporativos ou rolagens de contrato. Um intervalo de amostragem diferente representa um desenho empírico diferente, mesmo quando a fórmula é a mesma.
Uma covariância positiva deixa a estimativa básica indefinida
A raiz quadrada só é real quando a covariância amostral é negativa. Se \(\widehat C_1=0\), o cálculo plug-in resulta em zero; se \(\widehat C_1>0\), a fórmula básica é indefinida. Uma covariância amostral nula ou positiva não prova que o spread verdadeiro seja zero. Ela pode refletir ruído amostral, persistência na direção das negociações, discretização de preços, dependência serial dos retornos do valor eficiente ou um spread pequeno demais para ser distinguido do ruído em uma amostra curta.
Algumas implementações empíricas substituem uma covariância positiva por zero antes de calcular a raiz quadrada. Outras usam o valor absoluto ou informam apenas janelas com covariância negativa. Essas escolhas podem produzir um número, mas são regras adicionais, não consequências da equação de Roll. Informe quantas estimativas ficaram indefinidas, com que frequência a estimativa foi definida como zero e se as exclusões alteraram a amostra. Usar o valor absoluto sem explicação pode transformar uma covariância incompatível com o modelo em uma estimativa positiva do spread.
Amostras pequenas trazem outro problema. A própria covariância é estimada com erro e depois transformada por uma raiz quadrada. Harris analisa as propriedades em amostras finitas sob o modelo de Roll e mostra que o ruído pode gerar covariâncias amostrais positivas e que a transformação não linear pode causar viés relevante (Harris, 1990). Informe o tamanho da amostra junto à estimativa pontual e mostre sua sensibilidade a mudanças razoáveis de janela; não apresente mais precisão do que os dados de preços permitem.
A persistência dos sinais de negociação ou das mudanças no preço eficiente pode invalidar o modelo
A derivação simples exige mais do que uma covariância negativa. Ela supõe que negociações iniciadas por compradores e vendedores são independentes e igualmente prováveis; que o spread é simétrico em torno de um valor eficiente; que as inovações desse valor não têm covariância serial; e que o processo de amostragem representa o mecanismo dos preços de transação. A divisão de ordens a mercado e a gestão de estoque podem tornar persistentes os sinais das negociações. Se as ordens de compra chegarem em sequência, os retornos das transações podem manter um componente positivo do spread, e a covariância negativa pode ser mais fraca do que o modelo prevê.
A trajetória do preço médio também pode apresentar dependência serial. Momentum, reversão, preços desatualizados, observações assíncronas ou ajustes de preço programados podem criar covariância positiva ou negativa dos retornos sem uma mudança correspondente no spread efetivo. A discretização dos preços e os efeitos do tamanho do tick também podem gerar reversões próprias. Esses efeitos não precisam dominar a amostra para serem relevantes: o estimador infere o spread a partir de um único momento, então qualquer outro processo que afete esse momento pode confundir o resultado.
A variação ao longo do tempo também distingue a média amostral de uma característica estável do mercado. O spread pode aumentar perto de notícias, na abertura e no fechamento, em períodos de baixa liquidez ou sob estresse de mercado. Uma estimativa de todo o período pode ocultar esses episódios; janelas curtas, por sua vez, podem ter ruído excessivo para estimar a covariância. Examine a série temporal e informe a definição da janela. A covariância serial negativa é compatível com o bid-ask bounce no modelo, mas não é uma decomposição causal de todos os movimentos de preço de curto prazo.
Dados de cotação e outros estimadores de baixa frequência respondem a perguntas diferentes
Se houver dados confiáveis de cotações e negociações, é possível calcular diretamente o spread efetivo comparando cada preço de transação com o preço médio simultâneo e considerando a direção da negociação. Isso exige observações sincronizadas e limpas, além de uma regra clara para cotações travadas, cruzadas, desatualizadas ou fora de sequência. Esse método mede as negociações observadas naquele conjunto de dados; Roll infere o spread a partir da covariância serial dos preços de transação. O [guia de classificação da direção das negociações](/pt-BR/learn/trade-direction-classification-lee-ready-algorithm-explained) explica por que os sinais das negociações também podem precisar de uma regra de estimação.
Outros métodos de baixa frequência usam informações e hipóteses diferentes. Hasbrouck desenvolve um estimador por amostragem de Gibbs a partir dos preços de fechamento diários, em vez de depender apenas da transformação plug-in básica de Roll (Hasbrouck, 2009). Corwin e Schultz usam as máximas e mínimas diárias para construir um estimador de spread sem depender da mesma dinâmica de direção das negociações (Corwin and Schultz, 2012). Essas alternativas não tornam observável o spread cotado a partir de qualquer série de preços; cada uma tem suas próprias hipóteses e seu escopo de validação.
A pergunta prática determina a medida adequada. Para comparações históricas entre mercados com poucos dados de cotações, uma aproximação de baixa frequência pode ser útil se a taxa de falha e as hipóteses forem informadas. Antes de enviar uma ordem, confira os preços atuais de compra e venda, a profundidade do mercado e o tamanho da ordem. O [guia de spread e slippage em futuros](/pt-BR/learn/futures-bid-ask-spread-and-slippage-explained) diferencia o spread cotado das diferenças de execução realizadas, enquanto o [guia de liquidez de ETFs](/pt-BR/learn/etf-trading-volume-vs-liquidity-explained) explica por que o volume, sozinho, não descreve a liquidez executável.
Informe as hipóteses e não coloque a estimativa na coluna de sinais
Um relatório reproduzível deve informar se as observações são negociações, preços oficiais de fechamento ou outra aproximação dos preços de transação; se a entrada usa variações de preço ou retornos logarítmicos; o intervalo de amostragem; o número de observações; o denominador da covariância; e como covariâncias nulas ou positivas foram tratadas. Especifique também o universo de ativos, o período, os ajustes para eventos corporativos e rolagens de contrato, os filtros de dados e se o spread é informado em unidades de preço, percentual ou pontos-base. Se a hipótese de estabilidade do spread não for plausível, mostre estimativas em subperíodos definidos previamente em vez de escolher a janela com a covariância mais negativa.
A estimativa de Roll é uma aproximação histórica dos custos de transação dentro de um modelo. Ela não revela a cotação de hoje, não garante um preço de execução, não mede o custo total de uma estratégia nem prevê o próximo retorno. Para avaliar um backtest, ainda é necessário um modelo de custos e execução que considere tamanho da ordem, comissões, impacto no mercado, execuções parciais e momento da negociação. Um spread estimado menor não é, por si só, evidência de uma vantagem negociável. Para uma visão mais ampla da volatilidade observada em diferentes frequências de amostragem, consulte o guia de [volatilidade realizada](/pt-BR/learn/realized-volatility-calculation).
Perguntas frequentes
Q1O estimador de Roll precisa de cotações históricas de compra e venda?
Não. A versão básica usa preços de transação e a covariância entre retornos consecutivos. Por isso, pode ser usada quando não há histórico de cotações, mas a estimativa continua baseada em um modelo e não reconstrói a cotação real em cada instante.
Q2Uma autocovariância positiva significa que o spread é zero?
Não. A fórmula básica fica indefinida quando a covariância amostral é positiva. Uma convenção que trunca a estimativa em zero não prova que o spread verdadeiro seja zero; informe a regra e a proporção de amostras afetadas.
Q3A estimativa de Roll pode ser usada como custo de spread em um backtest ao vivo?
Não sozinha. É uma aproximação histórica sujeita a hipóteses específicas. O backtest ainda precisa de hipóteses de custo e execução adequadas ao mercado, ao tamanho da ordem, ao momento, às comissões e ao comportamento das execuções.
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
Qual entrada o estimador básico de Roll usa para inferir o spread?
Escolha uma resposta para ver a explicação