O backtesting aplica regras especificadas a dados históricos segundo um modelo de execução. Estima o que esse modelo teria produzido, não o que uma conta real teria ganho com certeza.

1. Escreva regras que outra pessoa consiga reproduzir

Defina o instrumento, a fonte de dados, a sessão, o momento do sinal, as ordens de entrada e de saída, o método de cálculo da quantidade, os custos e as condições para não negociar. Indique se um sinal utiliza uma barra concluída. Atribua uma versão às regras antes de executar a avaliação.

Para um exemplo de cruzamento, especifique o tipo de média e os períodos, qual a barra que confirma o cruzamento e o primeiro momento subsequente de colocação da ordem. «Comprar no cruzamento» deixa por resolver pressupostos importantes sobre a execução das ordens.

2. Verifique os dados que poderia ter conhecido

Inspecione barras em falta, alterações de fuso horário, ajustamentos por operações societárias e rollovers de contratos de futuros. Uma lista atual de ações sobreviventes não é necessariamente o universo histórico. Divulgações económicas e dados financeiros das empresas podem ter sido revistos após a data do teste.

Valores de períodos temporais superiores e pontos de inversão confirmados podem introduzir informação futura se forem utilizados demasiado cedo. Preserve a versão dos dados e as configurações do teste para que o resultado possa ser reproduzido.

3. Modele ordens e custos

Uma barra que contém tanto o alvo como o stop não indica qual foi atingido primeiro. Utilize dados de maior granularidade quando for adequado ou documente uma regra conservadora para a ambiguidade. O toque num preço limite não garante quantidade disponível nem execução.

Inclua a estrutura efetiva de comissões e um intervalo justificado de pressupostos de execução adversa. Não existe uma tolerância universal de slippage de um a dois ticks adequada a todas as ordens, instrumentos e eventos. Documentação de estratégias do TradingView explica como um emulador de corretora processa ordens e lida com limitações dos testes; outras ferramentas podem diferir.

4. Analise a sequência, não apenas o total

Registe as marcas temporais de entrada e de saída, as execuções, as quantidades, os custos, a exposição aberta e os motivos para ordens ignoradas ou rejeitadas. Analise o valor esperado líquido, a queda face ao valor de referência (drawdown) e a dependência de alguns valores atípicos, juntamente com a taxa de acerto e o fator de lucro.

Uma taxa de acerto de 45%, em que os ganhos brutos médios são o dobro das perdas médias, tem um valor esperado bruto positivo nesse modelo. Os custos ou diferentes resultados realizados por operação podem inverter isso. Um rácio-alvo fixo não é o mesmo que um ganho médio observado.

5. Mantenha a avaliação separada da seleção

Utilize uma parte dos dados para desenvolver regras e uma parte separada para as avaliar. O ajustamento repetido à segunda parte transforma-a noutro conjunto de desenvolvimento. Registe quantas variantes foram testadas e inclua períodos adversos.

Nenhum limiar de 100 negociações cria significância estatística por si só. A dependência entre negociações, a variabilidade dos resultados por operação e a cobertura de mercado são importantes. Consulte a incerteza da dimensão da amostra.

A simulação forward pode então verificar a temporização e o fluxo de trabalho das ordens com dados que vão chegando. Continua a ser uma simulação, e um bom resultado não exige um teste com dinheiro real. Faça uma pausa imediatamente se surgir um problema de segurança ou de implementação, em vez de continuar apenas para atingir uma contagem.

Aviso de risco: A negociação envolve um risco substancial de perda. O desempenho passado não é indicativo de resultados futuros. Consulte o nosso aviso de risco completo.