Em palavras simples — Em séries temporais, o passado treina e o período seguinte testa. Walk-forward repete essa passagem para observar mais de um trecho fora da amostra sem inverter o tempo.
A validação de séries temporais preserva a ordem das informações e das decisões. A análise walk-forward estima ou seleciona uma regra numa janela, aplica-a no período seguinte e avança a origem. Diferentemente de uma divisão aleatória genérica, o desenho procura reproduzir como o modelo seria atualizado e usado ao longo do tempo.
Desenhos principais
| Desenho | Estrutura | Pergunta principal |
|---|---|---|
| Holdout temporal | treino inicial e bloco posterior de teste | a configuração congelada funciona no período seguinte? |
| Rolling origin | várias origens, cada uma com treino anterior e teste posterior | o desempenho se repete em diferentes pontos do tempo? |
| Rolling window | treino com comprimento constante | uma memória limitada acompanha mudanças? |
| Expanding window | treino acumula todo o passado | mais história melhora estabilidade sem tornar o modelo obsoleto? |
O desenho inclui frequência de reestimação, tamanho da janela, horizonte do teste, regras de seleção e o que acontece entre folds. Escolher essas coordenadas após observar os resultados também é seleção.
Rolling ou expanding
Rolling descarta observações antigas e pode reagir mais a mudanças, mas usa menos dados e pode variar mais. Expanding preserva a história e pode estabilizar estimativas, mas mistura regimes distantes. Nenhuma é superior em geral. A escolha depende do mecanismo econômico, não estacionariedade, frequência, quantidade de dados e custo de recalibração.
Labels sobrepostas, gap, purging e embargo
Se a label de uma observação usa retornos dos próximos dez dias, exemplos próximos compartilham informação. Uma fronteira na data da feature não impede que o alvo do treino atravesse o teste. Purging remove essas observações; embargo cria separação adicional. Janelas de features, atrasos de execução e posições mantidas também entram na análise.
Gap não tem número universal. Pequeno demais deixa contaminação; grande demais descarta uma amostra já escassa. O relatório liga o gap ao horizonte real.
O caso do k-fold aleatório
Embaralhar observações de séries financeiras normalmente quebra o uso prospectivo e espalha regimes semelhantes entre treino e teste. Há condições específicas em que cross-validation pode ser válida para processos autorregressivos, como discutem Bergmeir, Hyndman e Koo; isso não autoriza seu uso automático em qualquer estratégia com labels, seleção e custos.
O desenho deve respeitar o objeto estimado e a dependência, não seguir uma receita de software.
Exemplo ilustrativo
Um modelo é estimado em 36 meses e avaliado no mês seguinte. A janela avança um mês, mantendo 36 meses no rolling ou acumulando história no expanding. Cada transformação é ajustada novamente apenas no treino. Parâmetros são escolhidos por uma regra fixada antes; o resultado do mês de teste não altera aquele fold. O caso é ilustrativo: 36 e um mês não são recomendações universais.
Agregar sem perder incerteza
Concatenar previsões OOS permite medir o caminho conjunto, mas o relatório também mostra dispersão entre folds, regimes, turnover, custos, exposição e quantidade efetiva de observações. Médias podem esconder um único período que concentra o lucro. Folds não são necessariamente independentes quando treinos se sobrepõem.
Checklist
- O tempo representa disponibilidade real e não apenas referência econômica?
- Toda transformação é ajustada dentro do treino de cada fold?
- Label, feature e posição atravessam a fronteira?
- A regra de rolling/expanding foi escolhida antes dos resultados?
- Todos os candidatos e consultas ao teste estão registrados?
- Custos e execução são recalculados em cada período?
- A agregação mostra heterogeneidade, dependência e incerteza?
- Existe teste final ou a iteração é declarada?
Seleção aninhada e paridade com produção
Quando parâmetros ou variáveis são escolhidos repetidamente, a seleção precisa acontecer dentro de cada janela de treino. A janela seguinte avalia a regra já escolhida, não completa sua otimização. Se o mesmo período orienta seleção e avaliação, mede-se uma decisão beneficiada pelo resultado que deveria testar.
O walk-forward deve reproduzir a cadência operacional: quando o modelo é reestimado, quais dados já chegaram, quanto demora o cálculo e quando o novo parâmetro entra em vigor. Recalibrar retroativamente no ponto ideal ou usar vintages corrigidos cria uma sequência impossível. Paridade com produção inclui calendário, atrasos, custos e regra para falha de atualização.
Na agregação, além da média, preservam-se dispersão entre janelas, pior período, número de decisões e sensibilidade ao tamanho das janelas. Uma boa média com poucos blocos independentes ou falhas concentradas em um regime pede cautela, não uma conclusão universal.
Quando a sensibilidade à janela é alta, o relatório deve mostrá-la.
Fontes
- Leonard J. Tashman, Out-of-sample tests of forecasting accuracy: an analysis and review — taxonomia e motivação das avaliações rolling-origin fora da amostra.
- Christoph Bergmeir, Rob J. Hyndman e Bonsoo Koo, A note on the validity of cross-validation for evaluating autoregressive time series prediction — condições precisas para validade do k-fold em modelos autorregressivos.
- Jeffrey S. Racine, Consistent cross-validatory model-selection for dependent data: hv-block cross-validation — separação em blocos para dados dependentes, sujeita às hipóteses e discussões metodológicas posteriores.
- Marcos López de Prado, Advances in Financial Machine Learning — índice oficial Wiley — referência autorial para purging e embargo; não é apresentada como consenso universal ou paper original peer-reviewed.