Defina stop slippage
Stop slippage é a diferença entre o preço no qual uma ordem de stop-loss foi pretendida para disparar (o nível de stop) e o preço no qual a ordem realmente foi preenchida. Na prática, o slippage frequentemente é expresso em unidades de preço, ticks ou moeda da conta.
Uma escolha-chave de medição é se você mede:
- a primeira negociação que resulta da ordem de stop, ou
- um preço médio ao longo de múltiplos preenchimentos.
Sem um método declarado, “stop slippage” pode ser calculado de maneiras diferentes por sistemas, provedores ou backtests distintos.
Como o stop slippage funciona (campos mensuráveis)
Para medir stop slippage de um modo que outra pessoa possa verificar, defina os seguintes campos antes de fazer quaisquer cálculos:
- Nível de stop (S): o preço pretendido para o gatilho da ordem de stop-loss.
- Timestamp do gatilho (T_trigger): quando a ordem se torna elegível para executar (frequentemente quando o mercado atinge ou cruza o nível de stop, de acordo com as regras de execução).
- Preço de primeira execução (P_exec1): o preço do primeiro preenchimento que fecha a ordem de stop (ou o primeiro preenchimento em uma definição controlada).
- Timestamp do preenchimento (T_fill1): quando esse primeiro preenchimento ocorreu.
- Quantidade total preenchida e preço médio de preenchimento (P_avg): se você quiser uma medida média de slippage.
- Spread e taxas (componentes opcionais): apenas se você conseguir documentar como os custos de transação são incluídos.
Com essas definições, uma medida básica de slippage pode ser:
- Slippage de preço (um preenchimento):
Slippage = P_exec1 − S(a direção de compra/venda deve ser aplicada de forma consistente). - Slippage médio (múltiplos preenchimentos):
Slippage_avg = P_avg − S.
Se você quiser componentes separados, também pode comparar:
- Gap de mercado no gatilho: a diferença entre a melhor cotação disponível imediatamente ao redor de
T_triggere o nível de stop. - Gap de execução: a diferença entre essa referência e o preço real de preenchimento.
Esses componentes são mais difíceis de medir sem dados de cotação a cotação, então você precisa declarar quais dados você usou.
Evidência ou exemplo (com suposições explícitas)
Aqui vai um exemplo simples que mostra por que timestamps e suposições importam.
Suponha que uma ordem de stop-loss tenha:
- Nível de stop S = 1.10000
- Para uma posição de venda, o stop dispara quando o preço atinge 1.10000
- T_trigger é quando a última negociação do mercado está no nível do stop ou abaixo dele (você deve escolher uma regra)
- O primeiro preço de execução P_exec1 = 1.09920
Então o stop slippage medido é 1.09920 − 1.10000 = −0.00080 em unidades de preço. Se você reporta isso como negativo ou como uma “perda em pontos” em valor absoluto depende da convenção de sinal que você escolheu.
Para tornar isso verificável de forma independente, você também precisaria declarar:
- qual série de preços de mercado define o tempo do gatilho (última negociação, mid, bid/ask, etc.),
- se a ordem de stop é preenchida em uma execução ou em múltiplas partes,
- se você usou o primeiro preenchimento ou uma média.
Mesmo pequenas diferenças em como o tempo do gatilho é determinado podem alterar o slippage calculado ao associar a ordem de stop a diferentes estados de mercado.
Limitações e riscos na medição
Pelo menos uma limitação material é inevitável: o slippage depende das circunstâncias de execução, não apenas do nível de stop.
Modos comuns de falha incluem:
- Preenchimentos parciais: um stop pode executar em múltiplos preços; usar apenas o primeiro preenchimento pode subestimar ou superestimar o slippage versus uma média.
- Incompatibilidade de definição: sistemas diferentes podem definir “gatilho” usando última negociação, bid/ask ou uma regra do motor de matching, levando a diferentes
T_trigger. - Granularidade dos dados: se você só tem prints de negociações (não cotações), você não consegue medir de forma confiável o gap de mercado no gatilho; você só consegue calcular o preenchimento versus o stop.
- Inclusão de custos: taxas e spreads podem ou não ser incluídos na métrica de slippage dependendo de como você mede; misturar definições torna comparações inválidas.
- Dependência histórica: relações observadas em períodos passados não garantem o comportamento futuro do stop slippage.
Portanto, a medição de stop slippage é melhor tratada como descritiva das condições sob as quais os dados foram gerados, e não como uma ferramenta preditiva.
Verificação e próxima pergunta a fazer
Para verificar de forma independente alegações de stop slippage, peça um “contrato de medição” claro:
- a definição exata do nível de stop usada,
- a regra do timestamp do gatilho (qual valor de mercado e qual lógica de cruzamento),
- a regra de seleção do preenchimento (primeiro preenchimento ou média),
- o tipo de fonte de dados (apenas negociações vs. cotação + negociação) e a granularidade,
- a convenção de sinal e se os custos são incluídos.
Um próximo passo útil é comparar duas medições que usam as mesmas regras, mas com granularidade de dados diferente (e. g.
DOCUMENT END