Algoritmos de execução: o que você mede
Algoritmos de execução são métodos que decidem como as ordens são divididas em ações menores e como essas ações são cronometradas e roteadas. Para medi-los de uma forma que outros possam verificar, concentre-se em campos de execução mensuráveis (o que aconteceu) e campos de tempo mensuráveis (quando aconteceu). Em seguida, compare os resultados apenas sob premissas claramente declaradas, porque as condições de mercado e os custos de execução podem dominar os resultados.
Mecanismo e campos mensuráveis
Uma forma prática de definir a medição é começar a partir de um “log de eventos de ordem” para uma ordem pai.
1) Campos de tempo
- Hora do pedido: quando a ordem pai foi submetida.
- Início da execução: quando ocorre a primeira tentativa de execução filha.
- Hora da conclusão: quando a ordem pai é totalmente preenchida ou encerrada.
- Janelas de fila/latência: o tempo decorrido entre o envio de uma ordem filha e o recebimento de uma confirmação ou preenchimento (se seus dados capturarem isso).
2) Campos de qualidade de preenchimento
- Taxa de preenchimento: quantidade preenchida dividida pela quantidade pretendida.
- Quantidade restante: o que não é preenchido na conclusão.
- Distribuição de preenchimento: quanto foi preenchido em cada intervalo de tempo.
3) Campos de custo e impacto de preço Para evitar ambiguidade, calcule os custos usando um preço de referência escolhido e uma fórmula claramente definida. As escolhas de referência comuns incluem:
- Preço médio no início (um ponto médio entre a melhor oferta de compra e venda, se você puder observá-lo)
- Preço de decisão no momento em que o algoritmo começou
- Preço de chegada no primeiro momento executável
Em seguida, meça:
- Slippage: diferença entre o preço médio de execução e o preço de referência (direcional).
- Implementation shortfall (conceitualmente): custo em relação a uma referência que inclui tanto o movimento de preço quanto a incompletude da execução.
4) Campos de restrições e controle Se o algoritmo tiver parâmetros (por exemplo, metas de participação ou limites de tempo), trate-os como entradas mensuráveis e verifique com que frequência o algoritmo atendeu a essas restrições em cada cenário.
Evidências e exemplo de cálculo (com premissas explícitas)
Suponha que você tenha uma ordem pai para 100 unidades.
- Ordem pai submetida às 10:00:00.
- Primeira tentativa de execução filha às 10:00:05.
- Conclusão total às 10:00:35.
- Preço médio de execução entre os preenchimentos é 1.2000.
- Seu preço de referência (preço médio no início da execução) é 1.1980.
Um cálculo simples e verificável de slippage é:
- Slippage = Preço médio de execução − Preço de referência
- = 1.2000 − 1.1980 = 0.0020 (por unidade, em termos de preço)
Para tornar isso independente e reproduzível, você também declara:
- a definição de referência (preço médio às 10:00:05)
- a granularidade dos dados (preços de preenchimento e carimbos de tempo)
- se você usou médias ponderadas por quantidade
Se você também observar que apenas 90 de 100 unidades foram preenchidas, relate taxa de preenchimento = 0,90 e trate a incompletude como um componente separado e material, em vez de incorporá-lo apenas ao preço.
Limitações e modos de falha (o que quebra as comparações)
Mesmo com métricas cuidadosas, as comparações podem ser enganosas se ignorarem a variabilidade.
Limitações materiais
- As condições de mercado dominam: liquidez, largura do spread e volatilidade podem mudar durante a execução e afetar os custos.
- Os custos diferem entre cenários: taxas, comissões e quaisquer encargos relacionados à execução podem alterar as métricas de custo.
- Dependência do benchmark: os números de slippage mudam quando você altera a definição do preço de referência.
- Relações históricas não estabelecem resultados futuros: o desempenho passado sob um regime pode não se aplicar a outro.
Modos de falha para medir ou observar
- Preenchimentos parciais: o algoritmo conclui com quantidade restante.
- Atrasos na fila e sensibilidade à latência: o tempo de execução pode piorar durante períodos de maior congestionamento.
- Excesso ou falta de negociação em relação ao ritmo pretendido: a taxa real de ordens filhas pode se desviar das metas.
- Comportamento de parada/encerramento: cancelamentos repetidos ou saídas antecipadas podem enviesar as comparações de custo e tempo de conclusão.
Verificação e a próxima pergunta
Para verificar afirmações sobre um algoritmo de execução, você precisa de três coisas que podem ser verificadas de forma independente: (1) os campos e fórmulas medidos, (2) os carimbos de tempo e as janelas de tempo usadas e (3) as premissas sobre preços de referência e disponibilidade de dados. Se duas partes calcularem a “mesma” métrica, mas escolherem preços de referência ou janelas de amostragem diferentes, seus resultados podem legitimamente divergir.
Uma próxima pergunta útil é: quais dados você realmente tem para o preço de referência (preço médio, preço de chegada ou outro proxy) e para latência/confirmações? Com isso respondido, você pode alinhar as definições de medição antes de comparar algoritmos ou provedores.