Protocolo de testes de estratégias — backtest e teste forward

Este protocolo preenchível leva você de uma hipótese e regras congeladas aos resultados e à decisão sobre novos testes. Preencha as seções 1–5 antes do teste e as seções 6–8 depois. Guarde uma exportação de cada versão junto com os dados e resultados para que o estudo possa ser reproduzido.

Protocolo de testes de estratégias — processo de backtest e teste forward

O formulário não executa backtest nem se conecta a uma corretora. Ele documenta testes realizados no ambiente escolhido. As versões polonesa e inglesa usam o mesmo esquema JSON, versão 1, e os mesmos 22 campos. O conteúdo dos campos é transferido sem tradução. Esta versão aceita arquivos de até 2.000.000 de bytes, assim como o importador PL atualizado. Mantenha backups maiores intactos e abra-os em uma versão atualizada — não apague registros do estudo para caber no limite de 600.000 bytes de uma versão EN antiga.

Primeiro, salve e exporte as seções 1–5. Após o estudo, acrescente os resultados nas seções 6–8 e mantenha a cópia anterior. Todos os campos são descritivos: o formulário não avalia a validade da hipótese nem confere as métricas informadas. Cada campo aceita até 12.000 caracteres conforme a contagem do navegador (alguns símbolos ocupam duas unidades). JSON serve para reimportação; TXT e impressões servem para leitura. O botão de importação não carrega dados de arquivos TXT ou PDF.

O salvamento é feito pelo botão e permanece neste navegador, separadamente para cada idioma. Ele não é automático nem sincronizado entre dispositivos; pessoas que usam o mesmo perfil do navegador podem ler os dados. Limpar os dados do site remove o salvamento. A exportação JSON permite guardar um backup ou transferir o documento. O formulário não envia os dados inseridos a um servidor.

1. Hipótese e escopo

Descreva o mecanismo que deve produzir uma vantagem e as condições em que você espera que ela desapareça. Defina mercado, período gráfico e sessão antes de examinar os resultados. Use o mesmo identificador do estudo no plano, nos arquivos de dados e no diário.

Por exemplo, FX-TEST-001; iniciais; data de início.
O que deve funcionar, por quê, e qual resultado observável contradiz a hipótese?
Liste símbolos, especificações dos instrumentos, períodos gráficos de sinal e execução e horários.
2. Regras congeladas e versão

As regras devem permitir reproduzir cada decisão. Dizer apenas “entrar no rompimento” não basta: registre a fonte dos preços, o momento da decisão e o método de execução. Guarde uma cópia das regras ou do código anterior ao teste. Uma alteração após ver o resultado cria uma nova versão; ela não melhora a avaliação histórica da versão anterior.

Versão, data com UTC ou deslocamento, nome do arquivo / commit / soma de verificação; software de teste, sua versão e configurações de aleatorização, quando aplicáveis.
Condição, momento em que os dados ficam disponíveis, tipo de ordem, SL, TP, saída por tempo, gaps e toques simultâneos em SL/TP.
Tamanho da posição, exposições combinadas, limites, custos máximos, divulgações, dados ausentes e entradas proibidas.
3. Dados, tempo e custos

Registre a fonte e a cobertura dos dados e informe se representam preços bid, ask ou médios. Ajuste a resolução às regras de execução. Não trate um valor futuro de indicador ou uma revisão posterior de uma divulgação como informação disponível no momento do sinal. Um candle que alcance tanto SL quanto TP exige uma regra explícita para determinar o resultado ou dados mais detalhados.

Fornecedor, data de download, cobertura, resolução, bid/ask/preço médio, lacunas e método de validação; identificador ou soma de verificação da cópia dos dados mantida e descrição da limpeza dos dados.
Carimbos de data e hora UTC; fuso do servidor de origem; sessão, por exemplo Europe/London com GMT/BST; regra de horário de verão.
Spread, comissões, swap, slippage, conversão cambial e fontes das premissas; registre o que já está refletido no preço de execução.
Divisão dos dados dentro e fora da amostra e estrutura do teste forward
Divisão dos dados dentro e fora da amostra e estrutura do teste forward
4. Divisão da amostra e plano de teste forward

Separe a amostra usada para desenvolver as regras (dentro da amostra, IS) daquela usada para avaliá-las (fora da amostra, OOS). Registre as datas e o método de divisão. Examinar OOS repetidamente e ajustar as regras a ela reduz sua independência. Execute o teste forward com dados que cheguem após o congelamento das regras e documente todos os sinais e omissões; um ambiente demo não reproduz completamente a execução em uma conta real.

Datas IS; lista de tentativas, filtros e parâmetros, incluindo os rejeitados; método de seleção.
Datas OOS; cronologia da divisão; regras para posições que atravessem a fronteira e para o aquecimento dos indicadores. Não conte a mesma operação dos dois lados; os dados de aquecimento podem vir do passado, mas não devem introduzir informações futuras nas regras.
Início, ambiente demo/paper, versão das regras, data de revisão, horizonte e número de observações com justificativa; se o teste termina em uma data ou em um número de operações e o que fazer se a amostra for menor. Registre também as sessões sem sinais.
5. Critérios registrados antes dos testes

Defina as métricas e a regra de decisão antes de ver o resultado. Nenhum número único de operações ou limiar de fator de lucro confirma uma vantagem para todas as estratégias. O tamanho temporal da amostra, a dependência entre observações, eventos raros e o número de variantes testadas afetam a interpretação. Separe os critérios para avaliar a estratégia das verificações de que o teste foi realizado corretamente. Decida antecipadamente como considerar a incerteza e a dependência entre resultados e quando encerrar o estudo. Não interrompa o teste no primeiro resultado favorável nem o estenda até atingir o limiar desejado; essas decisões exigem um método planejado de avaliação sequencial ou o reconhecimento explícito de que a análise adicional é exploratória.

Expectativa líquida em R; definição de R e da unidade de operação; PF em R ou em moeda (especifique); drawdown com sua série, unidade e ponto de partida; número de observações, custos, dispersão e método para avaliar a incerteza.

Para manter a consistência com o diário F, defina o múltiplo R de uma operação como o resultado líquido dividido pelo valor positivo de risco planejado antes da entrada. A soma desses múltiplos R quando os valores de risco variam não é o resultado expresso no R base do plano. A curva de R acumulado começa em 0; o drawdown é a queda em relação ao pico anterior, de modo que uma perda inicial de −1 R produz um drawdown de 1 R. Para patrimônio ou saldo, especifique capital inicial, fluxos de caixa e tratamento das posições abertas — não comece um cálculo percentual com capital zero. PF sem perdas tem denominador zero: marque-o como indefinido, em vez de tratá-lo como confirmação de uma vantagem. Considere as saídas parciais usando uma única definição documentada de operação.

Seus critérios: continuar os testes / coletar dados / rejeitar a hipótese. O que significa um resultado inconclusivo?
Mudanças nos custos, subperíodos, parâmetros próximos; condições para interromper por erro nos dados ou no procedimento.
6. Resultados e desvios

Registre os resultados separadamente para IS, OOS e teste forward. Inclua as contagens de sinais, operações e exclusões, com os motivos. Guarde a trajetória dos resultados, não apenas o total. Os resultados líquidos consideram os custos exatamente uma vez: se spread e slippage já estão refletidos nos preços de execução, não os desconte novamente. Marque dados ausentes como ausentes, não como zero.

Datas, número de observações, métricas, dispersão, arquivo de resultados e limitações.
As mesmas métricas e unidades de IS; comparação com os critérios registrados antecipadamente.
Resultados, sinais omitidos, diferenças de execução, falhas e seus efeitos sobre a comparabilidade.
7. Histórico de alterações

Diferencie a correção de um erro de implementação de uma mudança na ideia. Em ambos os casos, mantenha o resultado anterior e identifique os dados já examinados. Não sobrescreva a versão antiga do protocolo ao alterar as regras. Uma exportação documenta o estado em determinado momento; o arquivo ou o salvamento local isoladamente não são prova independente da data de congelamento.

Uma alteração por registro: o que mudou, por quê, e quais resultados já eram conhecidos.
Quais resultados precisam ser recalculados? Como você avaliará a alteração sem usar a mesma amostra como um novo OOS?
Protocolo de decisão para avaliação objetiva da estratégia
Protocolo de decisão para avaliação objetiva da estratégia
8. Conclusão e novos testes

Compare o resultado com os critérios da seção 5. Registre tanto as evidências que apoiam a hipótese quanto os fatos que a contradizem. A conclusão de que “são necessários mais dados” exige um plano concreto. Este documento organiza o estudo; ele não autoriza operar com dinheiro real nem garante resultados futuros.

Continuar os testes / revisar a hipótese / rejeitar / inconclusivo; identifique evidências e limitações.
Quais dados ou teste, quem fará o trabalho e quando ele será revisado?

Exemplo: o mesmo resultado, conclusões diferentes

Exemplo ilustrativo: suponha que a versão 1.0 tenha produzido +8 R em OOS. Se, após examinar essa amostra, você excluir duas sessões perdedoras e apresentar +12 R como “confirmação independente”, estará misturando desenvolvimento de regras com avaliação. Registre o novo filtro como versão 1.1, preserve o resultado de +8 R e identifique os dados já vistos. A diferença de +4 R vem aqui da remoção de sessões com resultado combinado de −4 R, não de novas observações. O resultado de +12 R descreve a nova variante ajustada a uma amostra conhecida; sua avaliação independente exige outro teste devidamente planejado.

Fontes e escopo da verificação

  • Bailey, Borwein, López de Prado, Zhu, The Probability of Backtest Overfitting, versão de fevereiro de 2015: selecionar variantes repetidamente nos mesmos dados pode inflar a avaliação de uma estratégia. O artigo fundamenta o registro das tentativas; não estabelece um limiar universal de número de operações para este formulário.
  • MDN — localStorage: escopo do armazenamento do navegador e possibilidade de acesso negado. Um backup JSON é independente do salvamento local do site.

Fontes verificadas em 21 de setembro de 2026. Os capítulos vinculados 15.4 e 15.9 detalham as definições de métricas e o procedimento do estudo; o formulário registra conteúdo, em vez de calcular uma vantagem.

Jarosław Wasiński

Editor-chefe, ForexMechanics.com • Analista macro e FX

Analista independente e profissional com mais de 20 anos de experiência nos mercados financeiros. Atua no Forex desde 2007, com foco em análise fundamentalista, estrutura do mercado OTC e gestão disciplinada do risco de capital.

  • Criador e editor-chefe do MyBank.pl, oferecendo educação financeira confiável desde 2004.
  • Autor de centenas de comentários de mercado aprofundados, análises estruturais e materiais educacionais para traders e investidores.
  • Defensor da transparência do mercado, promovendo uma educação baseada em dados concretos e relatórios institucionais (BIS, ESMA, CFTC).

Todo o conteúdo tem caráter exclusivamente educacional e informativo – não constitui recomendação de investimento. Lembre-se: operar com alavancagem (Forex/CFD) envolve alto risco de perda rápida de capital.