Como criar filtros personalizados
Os filtros que acompanham o Joga Loterias Profissional (JLP) cobrem o dia a dia de quem monta jogos: soma, pares e ímpares, sequências, moldura, atraso. Mas toda estratégia tem aquele detalhe pessoal que nenhum filtro pronto contempla. É para isso que existem os filtros personalizados: você escreve a sua própria regra, dá um nome a ela e passa a usá-la como se fosse mais um filtro do programa.
Este guia mostra como criar um do zero, o que cada campo do editor faz, como se escreve a regra e quais funções estão à sua disposição.
Antes de tudo: a regra elimina, não guarda
Este é o ponto que mais confunde quem começa, e vale entender agora para não perder tempo depois. A regra que você escreve é uma condição de eliminação: quando ela é verdadeira para um jogo, o jogo é descartado. É a mesma convenção dos filtros que já vêm no programa.
SOMA < 100 não guarda os jogos de soma baixa — descarta todos eles. Para ficar só com os jogos de soma abaixo de 100, a regra é a contrária: SOMA >= 100, que elimina o resto.Quando estiver escrevendo, pense sempre na frase "elimine o jogo quando…" e complete. O resultado sai certo na primeira tentativa.
A tela do editor, campo a campo
- Nome — como o filtro vai aparecer na lista.
- Identificador — é montado sozinho a partir do nome enquanto você digita, com um sufixo curto para não colidir com o filtro de outra pessoa. Ele é a referência estável do filtro: depois de salvo, não muda mais.
- Descrição — até 130 caracteres. É o texto que aparece embaixo do filtro na lista, então escreva pensando em quem vai ler daqui a seis meses.
- Exemplo (opcional) — um caso concreto, exibido na ajuda do filtro.
- Autor e Palavras de busca (opcionais) — a busca da lista de filtros procura em nome, autor e palavras de busca.
- Modalidades — em quais loterias o filtro pode ser usado. Marcar todas equivale a não restringir. Um filtro que não serve à loteria escolhida não some da lista: aparece apagado, explicando o motivo.
- Parâmetros — cada linha declara um nome, um valor padrão, um mínimo, um máximo e o rótulo exibido. Eles viram campos ajustáveis dentro do próprio filtro e, na regra, são usados com arroba:
@NOME. Cabem até 16 por filtro. - Regra — a condição de eliminação.
O painel de baixo valida a cada tecla digitada. Ou diz "Regra válida", ou aponta o erro já sugerindo o nome certo — digitar PARZES devolve a sugestão PARES. Ele também avisa quando a regra depende da base de sorteios ou do desenho do volante.
Como se escreve a regra
| Recurso | Como se escreve |
|---|---|
| Comparação | = <> < <= > >= |
| Faixa | PARES ENTRE 2 E 4 — os extremos entram; limites trocados também são aceitos |
| Lista | QTDE EM (6, 7, 8) |
| Ligação | E, OU, NAO (também aceita AND, OR, NOT) |
| Contas | + - * /, além de MOD e DIV |
| Parâmetro | @NOME |
| Comentário | // até o fim da linha |
Maiúsculas, minúsculas e acentos dão no mesmo: IMPARES, ímpares e Impares são a mesma função.
As funções disponíveis
A lista completa fica sempre visível à direita do editor. Elas se dividem em cinco grupos.
Básicas
QTDE (quantidade de dezenas do jogo), SOMA, MEDIA, MAIOR, MENOR, AMPLITUDE (a maior menos a menor) e DEZENA(n), que devolve a n-ésima dezena em ordem crescente.
Estatísticas
PARES, IMPARES, PRIMOS, FIBONACCI e INVERSOS — esta última conta as dezenas cujo espelho também está no jogo, como 05 e 50 ou 15 e 51 (o 11 é espelho de si mesmo). Para sequências há SEQMAX, o tamanho do maior bloco de dezenas seguidas, que vale 0 quando não existe nenhuma dupla, e SEQQTDE, a quantidade de blocos. Completam o grupo MULTIPLOS(n), TERMINACAO(d), TERMINACOES (quantas terminações diferentes), DECADA(n) e DECADAS (quantas faixas de dez foram ocupadas).
Volante
MOLDURA (dezenas na borda da cartela) e MIOLO (as de fora da borda), LINHA(n), COLUNA(n), LINHAMAX, COLUNAMAX, além de LINHAS e COLUNAS, que contam quantas linhas e quantas colunas diferentes o jogo ocupou. Todas dependem do desenho do volante de cada modalidade.
Histórico
Exigem os resultados carregados: REPETIDAS(k) e REPETIDASULT contam dezenas em comum com sorteios anteriores; ACERTOSMAX(n) e ACERTOSIGUAL(p) olham o desempenho do jogo contra a base; ATRASO(d), ATRASOMAX, ATRASOMIN e ATRASOMEDIO trabalham com o atraso das dezenas.
Utilitárias
CONTEM(a, b, …), QUANTAS(a, b, …), MIN(…), MAX(…), ABS(x) e SE(condição, a, b). Há ainda NA_FAIXA(início, fim, expressão), que calcula a expressão considerando só as dezenas do intervalo — NA_FAIXA(31, 45, SEQMAX) >= 2 olha sequências apenas na parte alta do volante.
Lendo o exemplo da tela
O filtro aberto na imagem chama-se Pouco Espalhado no Volante e elimina jogos espremidos em poucas linhas ou colunas da cartela. Ele declara dois parâmetros, MIN_LINHAS e MIN_COLUNAS, ambos com padrão 3 e faixa de 1 a 20. A regra é esta:
LINHAS < MIN(@MIN_LINHAS, QTDE) OU COLUNAS < MIN(@MIN_COLUNAS, QTDE)Repare no detalhe fino: o MIN(..., QTDE) impede que o filtro exija mais linhas do que o jogo tem dezenas. Sem ele, um jogo de duas dezenas seria eliminado por não ocupar três linhas — o que não faria o menor sentido. Esse tipo de cuidado é o que separa uma regra que funciona em uma modalidade de uma que funciona em todas.
Quatro regras para começar
| Regra | O que ela elimina |
|---|---|
SOMA < 100 OU SOMA > 300 | Jogos fora da faixa de soma escolhida |
PARES = 6 | O jogo todo par |
NAO (PARES ENTRE 2 E 4) | Quem está fora do equilíbrio de 2 a 4 pares |
ATRASOMEDIO > @LIMITE | Jogos de dezenas atrasadas demais, com o limite ajustável na hora de usar |
Comece por uma regra curta como essas, veja quantos jogos sobram e só então acrescente condição com E e OU.
Os filtros de exemplo que já vêm prontos
O programa acompanha doze filtros de exemplo, feitos para serem lidos e copiados. Três deles dão bem a medida do que dá para fazer:
- Amplitude Mínima — "Elimina jogos com as dezenas amontoadas num trecho estreito do volante." Um parâmetro e uma linha:
AMPLITUDE < @AMPLITUDE_MIN. - Só na Borda ou Só no Miolo — "Elimina jogos só com dezenas da borda da cartela ou só com dezenas do centro." A regra
MOLDURA >= QTDE - @TOLERANCIA OU MIOLO >= QTDE - @TOLERANCIAbarra os dois extremos de uma vez, com uma tolerância ajustável. - Terminações Repetidas — "Elimina jogos que repetem o mesmo dígito final em muitas dezenas." Usa
MAX(TERMINACAO(0), TERMINACAO(1), …)comparado aQTDE / @DIVISOR, então o limite acompanha o tamanho do jogo em qualquer modalidade.
Cada filtro é um arquivo
Todo filtro personalizado vive em um arquivo de texto simples, com extensão .jlf e três seções: [FILTRO], [PARAMETROS] e [REGRA]. É esse formato que permite levar um filtro do programa de computador para a versão web e vice-versa, e também mandá-lo para outra pessoa — que passa a ter exatamente o mesmo filtro, com os mesmos parâmetros.
Onde o filtro aparece depois de salvo
O filtro criado entra na lista de filtros junto com os que já vêm no programa, em uma seção própria, trazendo os campos que você declarou como parâmetros. É ali, na hora de filtrar, que se ajusta cada valor — sem abrir o editor de novo.
Na versão web o caminho é Filtros → Configurar filtros, onde há também um botão que importa os filtros de exemplo de uma vez só.
Três hábitos que valem a pena
- Escreva a descrição para quem vai ler depois. Ela é o que aparece embaixo do filtro na lista, e daqui a um tempo esse leitor será você.
- Prefira parâmetro a número fixo sempre que o valor depender da modalidade. O atraso médio, por exemplo, muda muito entre a Mega Sena e a Lotofácil — com parâmetro, o mesmo filtro serve às duas.
- Vá por partes. Uma condição simples primeiro, testada, e só depois as demais ligadas com
EouOU.
É assim que a sua estratégia deixa de ser um ajuste manual repetido a cada geração e vira um filtro com nome, descrição e parâmetros — pronto para ser usado sempre, e para acompanhar você entre o computador e a web.




