Documentation

Benchmarks

Testes de performance, medições de throughput, e a metodologia por trás deles.

Visão geral

A infraestrutura é construída pra cargas de trabalho de pesquisa quantitativa — não pra backtests isolados. Os dados de benchmark abaixo refletem performance real de execução em infraestrutura de produção. Todo resultado é reproduzível.

O tempo de execução é medido desde o momento em que a API recebe a requisição até o momento em que o resultado está disponível — incluindo recuperação de dados, parsing da estratégia, avaliação completa de candles, e cálculo de métricas.

Benchmark de Referência

O benchmark principal é BTC/USDC ao longo de 5 anos no timeframe de 15M. Isso representa aproximadamente 119.000 candles — uma carga de trabalho significativa pra avaliar performance de infraestrutura.

~260ms
Tempo de execução
BTC/USDC · 5 anos · 15M
~119.000
Candles processados
5 anos na resolução 15M
1.000+
Execuções concorrentes
Escalonamento horizontal
7
Timeframes
5M a 1D

Tempo de Execução por Timeframe

Todas as medições usam BTC/USDC ao longo de um período de 5 anos. Timeframes mais curtos têm mais candles e por isso demoram mais.

TimeframeCandles (5a)Tempo de execução aprox.
1D~1.243~5ms
4H~7.449~34ms
2H~14.896~51ms
1H~29.789~67ms
30M~59.573~104ms
15M~119.137~262ms
5M~357.396~1,3s

Os tempos são aproximados e podem variar com base na complexidade da estratégia (número de indicadores, períodos de lookback) e na carga atual da infraestrutura.

#Metodologia

O que é medido

  • Tempo total de relógio desde o recebimento da requisição na API até a disponibilidade do resultado.
  • Dados são pré-carregados e cacheados na infraestrutura. Tempos de cold-start não estão incluídos.
  • As medições excluem latência de rede entre o cliente e o servidor da API.
  • A estratégia usa configuration.maxOpenPositions: 1 — uma única posição aberta por vez. Sem esse limite, posições podem se acumular em timeframes mais finos (muito mais candles pra um stop-loss de % fixo se resolver), o que domina o tempo de execução independente de cache — limitar reflete o uso típico.
  • Cada linha é uma única execução da mesma estratégia, com cache de dados aquecido.

Estratégia de teste usada

Os benchmarks usam uma estratégia padrão: crossover de EMA 9/21 + confirmação por RSI + pico de volume, no timeframe de 1H. Essa é uma estratégia representativa com complexidade computacional média (3 indicadores, 3 conditions).

Reprodutibilidade

Todo resultado de benchmark é reproduzível. Dada a mesma estratégia, par de ativo, e intervalo de datas, o tempo de execução ficará dentro dos intervalos publicados. Você pode verificar isso rodando seus próprios benchmarks via a API e comparando com os números publicados.

Throughput e Concorrência

A infraestrutura suporta execução concorrente. Vários backtests podem rodar simultaneamente sem bloquear uns aos outros. Isso é projetado pra:

  • Loops de otimização de parâmetros (rodando 100 variações da mesma estratégia em paralelo).
  • Workflows de agente de IA que geram e testam várias hipóteses simultaneamente.
  • Testes multi-ativo (rodando a mesma estratégia em BTC, ETH e SOL em paralelo).
  • Testes multi-timeframe (rodando a mesma estratégia em 15M, 1H e 4H simultaneamente).
💡
Pra pesquisa iterativa, considere agrupar submissões: submeta todas as variações primeiro, depois faça polling de todos os resultados, em vez de esperar cada uma antes de submeter a próxima. Isso maximiza o throughput da infraestrutura.