# Backtest de regra antifraude: por que o corte é no tempo e o rótulo ainda não chegou

<https://unifokal.com/blog/backtest-de-regra-antifraude-no-tempo>

Guia · UNIFOKAL · 1 de outubro de 2026 · 8 min de leitura · Antifraude

Testar uma regra antifraude no histórico parece simples e engana de dois jeitos: divisão aleatória que mistura passado e futuro e rótulo de fraude que ainda não amadureceu. Como montar o corte.

Antes de ligar uma regra antifraude nova, o passo natural é aplicá-la sobre o histórico e contar quantos casos de fraude ela teria pegado e quantos clientes honestos ela teria barrado. O nome de mercado é backtest, e o raciocínio é bom. O problema está no histórico que entra na conta.

Duas armadilhas rondam esse exercício. A primeira é a divisão aleatória: separar casos para ajustar a regra e casos para avaliá-la sorteando linhas, como se a ordem do tempo não importasse. A segunda é o rótulo imaturo: tratar como legítimo um caso recente que só não foi contestado ainda. As duas distorcem o resultado, e nenhuma aparece no número final.

Este guia explica por que o tempo decide o desenho de um backtest antifraude, com base na literatura revisada por pares sobre detecção de fraude e mudança de conceito, e propõe um corte que não engana quem vai decidir.

## O que a literatura diz sobre o rótulo de fraude

A referência mais direta é o artigo de Andrea Dal Pozzolo, Giacomo Boracchi, Olivier Caelen, Cesare Alippi e Gianluca Bontempi, Credit Card Fraud Detection: A Realistic Modeling and a Novel Learning Strategy, publicado em 2018 na IEEE Transactions on Neural Networks and Learning Systems, periódico do Institute of Electrical and Electronics Engineers (IEEE). O resumo nomeia três desafios do problema:

- **mudança de conceito**, o concept drift: os hábitos dos clientes evoluem e os fraudadores mudam de estratégia ao longo do tempo;
- **desbalanceamento de classes**: transações legítimas superam em muito as fraudes;
- **latência de verificação**: só um pequeno conjunto de transações é conferido a tempo pelos investigadores.

O mesmo resumo afirma que a grande maioria dos algoritmos propostos para detecção de fraude se apoia em premissas que dificilmente valem num sistema real, e localiza a falta de realismo em dois pontos: o modo e o momento em que a informação supervisionada, o rótulo, é fornecida, e as medidas usadas para avaliar o desempenho. Os experimentos usam um fluxo real com mais de 75 milhões de transações de cartão de crédito autorizadas ao longo de três anos. O recorte é cartão: o que se transporta para outra operação é o mecanismo, não o número.

A definição de mudança de conceito vem de outro trabalho revisado por pares, A survey on concept drift adaptation, de João Gama, Indrė Žliobaitė, Albert Bifet, Mykola Pechenizkiy e Abdelhamid Bouchachia, publicado na ACM Computing Surveys em 2014 (a ACM é a Association for Computing Machinery). O resumo descreve a mudança de conceito, primariamente num cenário de aprendizado supervisionado em fluxo contínuo, como o caso em que a relação entre os dados de entrada e a variável-alvo muda ao longo do tempo, e o próprio levantamento dedica uma parte à metodologia de avaliação de algoritmos adaptativos.

Juntos, os dois trabalhos dão a base do resto deste texto: o rótulo chega tarde e só para parte dos casos, e a relação que a regra explora pode ter mudado entre o período em que ela foi ajustada e o período em que ela vai rodar.

## Por que a divisão aleatória engana

Sorteie linhas de dois anos de histórico para ajustar a regra e outras linhas do mesmo período para avaliá-la. O conjunto de avaliação fica cheio de casos contemporâneos aos de ajuste: mesma campanha de fraude, mesmo lote de documentos, mesmos endereços de rede. A regra é testada contra o passado que ela já viu de perto.

Se a relação entre sinais e fraude muda com o tempo, como descreve o levantamento de Gama e coautores, esse teste mede o desempenho dentro de um regime que talvez já tenha acabado. O que se quer saber é outra coisa: como a regra, ajustada com o que se sabia até uma data, se sai no período seguinte. A conclusão é nossa e decorre da definição, não de um número dos artigos citados.

O corte que responde a essa pergunta é temporal: ajuste com eventos até uma data de corte, avalie com eventos posteriores a ela, e nunca deixe informação do período de avaliação vazar para o ajuste, nem por um limiar escolhido olhando o resultado final.

## Rótulo maduro: o caso recente ainda não terminou

A latência de verificação descrita por Dal Pozzolo e coautores tem uma consequência que o backtest precisa encarar de frente. Num caso recente, "sem fraude registrada" pode significar duas coisas muito diferentes: que o caso é legítimo, ou que a contestação, a investigação ou a descoberta ainda não aconteceram.

Se a janela de avaliação termina perto da data em que o backtest é rodado, os casos do fim da janela entram como legítimos quando muitos deles só estão sem desfecho. O efeito é previsível: a regra parece barrar mais gente honesta do que barra, e parece deixar passar menos fraude do que deixa, porque parte da fraude do período ainda não foi rotulada.

O conserto é um prazo de maturação:

1. Escolha a janela de avaliação.
2. Leia os rótulos numa data bem posterior ao fim dessa janela, e escreva essa data no relatório.
3. Meça o prazo no seu próprio histórico: depois de quanto tempo, contado do evento, os rótulos de fraude param de chegar em volume relevante. O número é da sua operação, não de um artigo, e muda conforme o canal pelo qual a fraude é descoberta.

Um backtest que não informa a data de leitura dos rótulos não pode ser repetido, e um número que não pode ser repetido não sustenta decisão.

## Só o que foi revisado tem rótulo

A segunda metade da latência de verificação é que só um pequeno conjunto de casos é conferido a tempo. O rótulo não cai do céu: ele existe onde alguém olhou. Casos que a regra antiga aprovou direto e ninguém contestou ficam sem rótulo de fraude, e casos que a regra antiga recusou nunca tiveram a chance de mostrar o que teriam feito.

Isso não invalida o backtest, mas limita o que ele afirma. Uma regra nova que aprovaria casos recusados pela antiga está sendo avaliada justamente onde não há desfecho observado. O relatório honesto separa as linhas em três grupos: com rótulo maduro, sem rótulo porque ninguém revisou, e sem desfecho possível porque a decisão antiga impediu. Taxa calculada só sobre o primeiro grupo, com o tamanho dos outros dois ao lado, mostra até onde o número vale. A mesma disciplina de mostrar o que ficou fora da conta aparece em [simular a política no próprio histórico](https://unifokal.com/blog/simular-politica-no-historico).

## Como relatar o resultado

Para sobreviver a uma revisão, o backtest traz por escrito:

- a data de corte entre ajuste e avaliação e a janela de cada um;
- a data em que os rótulos foram lidos e o prazo de maturação adotado;
- o resultado por período, e não só o agregado, para que uma mudança de regime apareça;
- a quantidade de casos sem rótulo e o motivo;
- a versão da regra e dos limiares avaliados.

Os dois últimos itens ligam o backtest à governança da decisão: limiar que muda sem essa conta é efeito colateral, não decisão, como discute o artigo sobre [score de risco explicável](https://unifokal.com/blog/score-de-risco-explicavel). E o recorte importa tanto quanto a taxa, ponto desenvolvido em [comparar taxa de aprovação de KYC (Know Your Customer)](https://unifokal.com/blog/comparar-taxa-de-aprovacao-de-kyc).

Por fim, um backtest bem feito mostra o passado sob a regra nova. Ele não prevê a fraude que o histórico não contém, e uma regra que fecha uma porta pode empurrar o ataque para outra.

## Perguntas frequentes

### Por que não usar validação cruzada comum num backtest antifraude?

Porque a divisão aleatória mistura casos do mesmo período no ajuste e na avaliação. Se a relação entre sinais e fraude muda com o tempo, o teste mede um regime que pode já ter passado. O corte temporal responde à pergunta que importa: como a regra se sai depois da data em que foi ajustada.

### Quanto tempo esperar para o rótulo de fraude amadurecer?

Não existe número universal. Meça no seu histórico depois de quanto tempo os rótulos param de chegar em volume relevante e registre a data em que os rótulos foram lidos.

## Fontes citadas

- Andrea Dal Pozzolo, Giacomo Boracchi, Olivier Caelen, Cesare Alippi e Gianluca Bontempi, Credit Card Fraud Detection: A Realistic Modeling and a Novel Learning Strategy, IEEE Transactions on Neural Networks and Learning Systems, vol. 29, n. 8, 2018, DOI 10.1109/TNNLS.2017.2736643, resumo no PubMed: [pubmed.ncbi.nlm.nih.gov](https://pubmed.ncbi.nlm.nih.gov/28920909/)
- João Gama, Indrė Žliobaitė, Albert Bifet, Mykola Pechenizkiy e Abdelhamid Bouchachia, A survey on concept drift adaptation, ACM Computing Surveys, vol. 46, n. 4, 2014, DOI 10.1145/2523813: [api.crossref.org](https://api.crossref.org/works/10.1145/2523813)
