Documentação1.0 (latest)
PáginasResultados dos testes · 18 / 29

Resultados dos testes

Após cada backtest (Test em Execução de código), o IDE abre Test Results para o arquivo que você executou. É a segunda visualização do seletor Code Editor / Test Results do editor (Layout do espaço de trabalho) e mostra tudo o que o mecanismo produziu naquela execução: gráficos, estatísticas de desempenho, operações e uma exportação em HTML. Os logs e gráficos durante a execução são transmitidos ao painel de saída.

Cada arquivo aberto tem seus próprios Test Results — ao trocar de arquivo, aparece o último resultado daquele arquivo.


Onde aparece

  • Depois de clicar em Test na barra de ferramentas, a visualização muda automaticamente para Test Results quando os resultados estão prontos.
  • Você pode alternar entre Code Editor e Test Results a qualquer momento com a pequena faixa de abas acima da área do editor.
  • Os banners de status no topo do painel mostram em que estado a execução está:
    • Running backtest — <file> enquanto o mecanismo está trabalhando.
    • Backtest failed — <file> com o rastreamento do erro, se algo der errado.
    • Backtest result — <file> quando uma execução única terminou com sucesso.
    • Optimization — <file> com uma faixa de abas quando você executou uma otimização de parâmetros (veja Execuções de otimização no final).

Se um arquivo nunca foi testado, você verá um estado vazio amigável apontando de volta para o botão Test.


Estrutura de uma execução bem-sucedida

O resultado de um backtest bem-sucedido é dividido, de cima para baixo, em três regiões redimensionáveis e recolhíveis:

  1. Painel do gráfico — o gráfico de preços com marcadores (e abas por símbolo nas execuções com vários símbolos).
  2. Performance — gráfico de patrimônio e saldo, mais a grade de métricas.
  3. Trades — operações encerradas e (quando relevante) posições abertas no fim da execução.

1. Painel do gráfico

A região superior renderiza as barras OHLC usadas na execução com as sobreposições da sua estratégia:

  • Marcadores de operações são desenhados nos pontos de entrada e saída.
  • As sobreposições de indicadores aparecem aqui quando o seu código as adicionou por chart_indicators (veja a documentação de Séries de indicadores). Linhas e histogramas são renderizados no painel principal ou em um subpainel separado abaixo dos candles, exatamente como você configurou.
  • As execuções com vários símbolos ganham uma faixa de abas acima do gráfico — uma aba por ticker. Clique em uma aba para alternar o gráfico do símbolo que está sendo exibido. A carga do resultado inclui clock_symbol (qual ticker conduz o cronograma), ohlcv.bars_by_symbol (listas de barras por ticker) e entradas chart_indicator_series filtradas por symbol para cada aba.
  • Uma pequena barra de ferramentas do gráfico acima do gráfico abriga o botão Export HTML (veja abaixo) e, nas visualizações de otimização, o rótulo de parâmetros da execução.

Se um resultado não tiver ohlcv.bars para plotar, a área do gráfico é substituída por uma breve nota e pela barra de ferramentas de exportação, para que você ainda possa salvar um relatório em HTML.

2. Performance

Clique em Performance para expandir o painel. Ele contém duas partes:

Gráfico de patrimônio e saldo

Um gráfico de linhas da sua conta ao longo da execução:

  • Equity — valor da conta marcado a mercado em cada passo.
  • Balance — saldo em dinheiro liquidado ao longo da mesma linha do tempo.

O gráfico faz subamostragem automática em execuções muito longas e usa rótulos de eixo baseados em tempo para que você leia a linha do tempo rapidamente.

Grade de métricas

Uma grade de estatísticas-resumo produzidas por account.refresh_metrics(...) no fim da execução. Selos coloridos destacam valores com sinal (ganhos em verde, perdas em vermelho).

MétricaSignificado
Total returnPatrimônio final em relação ao saldo inicial, expresso em porcentagem.
Total P/LLucro/prejuízo acumulado realizado + não realizado na moeda da conta.
CAGRTaxa de crescimento anual composta ao longo da execução.
Max drawdownMaior queda do patrimônio, do pico ao vale.
VolatilityVolatilidade do patrimônio ao longo da execução.
SharpeÍndice de retorno ajustado ao risco.
SortinoÍndice de retorno ajustado ao risco de queda.
CalmarRetorno anualizado dividido pelo drawdown máximo.
Profit factorLucro bruto / prejuízo bruto nas operações encerradas.
Risk-adj. returnRetorno escalado pelo risco assumido.
Avg expectancyLucro/prejuízo médio esperado por operação.
Average winLucro médio das operações vencedoras.
Average lossPrejuízo médio das operações perdedoras.
Current exposureExposição na última barra.
Average exposureExposição média ao longo da execução (0–100%).
Max exposureExposição máxima durante a execução (0–100%).

As células mostram — quando uma métrica não está disponível para a execução (por exemplo, sem operações encerradas não há fator de lucro).

3. Trades

A região inferior tem até duas tabelas:

Operações encerradas

Cada operação de ida e volta executada por account.open_trade(...) + account.close_trade(...). As colunas incluem side, quantity, entry price, exit price, entry time, exit time e realized P/L (com código de cores).

Quando os dados de calendário estão ativados, linhas de Split e Dividend aparecem intercaladas com as linhas de operações — uma por evento corporativo aplicado durante a execução — e o cartão passa a se chamar Closed trades & events. Uma linha de Split mostra a data, a proporção (por exemplo, 4:1) e a variação na quantidade de ações; uma linha de Dividend mostra a data, o valor por ação e o total em dinheiro creditado (ou debitado, no caso de uma posição vendida). Uma data ex-dividendos estimada é marcada com est. Essas linhas não têm marcador # no gráfico e são excluídas da exportação CSV, que continua sendo um registro limpo de operações.

  • Clique em Closed trades para recolher ou expandir a tabela.
  • Clique no horário de entrada/saída de qualquer linha para ir até aquele evento no gráfico.
  • Use Export CSV no topo desta seção para salvar as operações encerradas em um arquivo .csv (com uma caixa Save As do sistema quando houver suporte).

Posições abertas (fim da execução)

Exibidas somente quando a estratégia terminou a execução com posições abertas ainda nos livros. As mesmas convenções de colunas das operações encerradas, mais o id da posição usado pelo seu código.

Dica: o painel de operações se redimensiona automaticamente ao ser recolhido — recolha-o para dar mais espaço vertical ao gráfico e ao Performance.


Exportação em HTML

Use Export HTML (canto superior direito da barra de ferramentas do gráfico) para salvar um único arquivo .html autocontido com tudo o que você vê na tela:

  • Cada painel de gráfico (uma imagem por símbolo nas execuções com vários símbolos).
  • O gráfico de patrimônio e saldo.
  • As métricas de Performance.
  • A tabela de operações encerradas.
  • O título do relatório (tirado do nome do arquivo) e o horário em que ele foi gerado.

Como funciona:

  1. O IDE expande brevemente o painel Performance para que o gráfico de patrimônio possa ser capturado.
  2. Ele percorre cada aba de gráfico e captura o gráfico como PNG.
  3. O resultado é agrupado em um único arquivo HTML e oferecido em uma caixa de salvar (nome de arquivo como backtest-report-<timestamp>.html).

Abra o arquivo em qualquer navegador para compartilhar a execução com alguém que não tenha o IDE — não é necessária conexão com a Internet.

O botão mostra Exporting… enquanto trabalha. Não troque de aba nem feche o IDE durante a exportação, ou alguns painéis podem ficar faltando no arquivo salvo.


Estados da execução (referência rápida)

BannerO que significa
Running backtest — <file>O mecanismo está executando a rodada. O centro mostra “Results Loading, Waiting for engine…”.
Backtest result — <file>Execução única bem-sucedida. Gráficos, Performance e Trades estão preenchidos.
Backtest failed — <file>A execução falhou. O painel mostra em vermelho a mensagem de erro do mecanismo.
Optimization — <file> (x/y)Uma varredura de parâmetros está em andamento; as abas aparecem conforme as execuções terminam.

Execuções de otimização

Quando você testou com Optimize script parameters ativado, o Test Results exibe uma faixa de abas — uma aba por combinação de parâmetros — e qualquer informação de resumo, como o total de execuções, a métrica de aptidão das execuções genéticas e o progresso enquanto as execuções ainda terminam.

  • Clique em uma aba para carregar o gráfico, o Performance e as operações daquela execução, como em uma execução única.
  • O rótulo de parâmetros da execução selecionada aparece ao lado da barra de ferramentas do gráfico, para que você sempre saiba qual combinação está vendo.
  • Export HTML usa os dados da execução ativa, com o rótulo da execução como título do relatório.
  • Se a otimização foi interrompida antes da hora, um banner destaca isso e apenas as execuções concluídas são exibidas.

Dicas

  • Recolha os painéis de que você não precisa (gráfico, Performance ou Trades) para focar no restante.
  • Trocar de arquivo carrega os últimos resultados de teste daquele arquivo — suas outras abas não se perdem.
  • Em backtests muito longos, o gráfico de patrimônio sofre subamostragem para ficar mais fluido; os números subjacentes da grade de métricas não são afetados.
  • O CSV é para operações encerradas; o HTML é para tudo. Use o que melhor se ajustar ao modo como você quer compartilhar ou analisar a execução.
8 min de leituraSugerir uma edição ↗
Resultados dos testes — Documentação (1.0 (latest)) | QuantCraft