Carregando análise…
Método
Esta página explica em detalhe o que acontece nos bastidores quando você abre uma análise. Sem caixa-preta. Se algum número estiver errado, dá pra rastrear até a fórmula que o produziu.
Camada 1
A unidade básica do modelo é uma estimativa de quantos gols cada time vai fazer naquele jogo específico — chamamos isso de lambda (λ). Essa estimativa é montada em três etapas:
Com os dois lambdas em mãos, calculamos a probabilidade de cada placar usando a distribuição de Poisson: P(k gols) = e−λ · λk ÷ k!. A matriz 8×8 de placares (até 7×7) dá probabilidade conjunta de todos os resultados, e a partir dela derivamos os mercados — 1X2, dupla chance, over/under, ambas marcam, etc.
Por que Poisson e não machine learning? O Brasileirão tem ~380 jogos por temporada. Em 5 temporadas, ~1.900 jogos — não dá pra treinar deep learning sem overfit. Poisson com xG ajustado é o estado-da-arte prático pra esse volume e tem três vantagens decisivas: custo zero, comportamento determinístico (mesmo input dá mesmo output, sempre) e explicabilidade total. Sempre dá pra dizer por que uma probabilidade é o que é.
Camada 2
Nem todo jogo merece bilhete sugerido. Pelo contrário — o filtro é severo, e quando ele falha, o produto fica em silêncio. Silêncio é uma resposta válida.
Pra uma perna entrar no bilhete sugerido, ela precisa atender simultaneamente:
Quando há múltiplos candidatos, o motor escolhe o de maior (Expected Value × probabilidade). Bilhete combinado de rodada agrega até 3 pernas independentes — exige no mínimo 2 cenários favoráveis pra existir.
Camada 3
O texto que explica a análise é gerado por um sistema de templates contextuais: frases pré-escritas que o motor encaixa a partir dos números do jogo. Não usamos modelo de linguagem (LLM) no MVP — a decisão é deliberada.
LLM (Claude Haiku) pode entrar em Fase 3 como camada premium opcional, gerando texto mais elaborado — mas o produto inteiro funciona sem isso.
Honestidade do modelo
Um modelo só é confiável se for medido. Toda vez que o motor diz "64% de probabilidade" e o jogo termina, esse acerto/erro entra no contador. No final, o que importa é a calibração: das vezes que o sistema disse X%, ele acertou de verdade X%?
Isso é mostrado em tempo real na página /histórico — sem cherry-picking, sem soft delete. Se o modelo está superestimando consistentemente algum mercado (ex: "ambas marcam"), aparece no desvio e a gente ajusta.
O que ainda não temos
Esta é a v1 do motor. Sabemos das limitações:
Sugestões, correções e críticas ao método são bem-vindas. O motor evolui com escrutínio público — é melhor encontrar bug por aqui do que descobrir depois de uma rodada inteira.