Calculadora de OPS
150 rebatidas válidas, 50 bases por bolas e 250 bases totais em 500 vezes no bastão levam o OPS acima de oitocentos, a marca de um titular sólido: embase mais slugging, um só número para quanto se chega em base e quanto dano vem depois. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Hits
- 150
- Bases por bolas
- 50
- Atingido por arremesso
- 5
- Vezes ao bastão
- 500
- Flys de sacrifício
- 5
- Bases totais
- 250
- Obp
- 0,3660714286
- Slg
- 0,5
- Ops
- 0,8660714286
O on-base plus slugging, abreviado OPS, é o índice do beisebol que soma a porcentagem de embase à de slugging para que um só número descreva com que frequência o batedor chega em base e quanto dano de bases extras essas chegadas produzem. Calcula o OBP no denominador de aparições no home plate, calcula o SLG com bases totais sobre vezes no bastão e devolve a soma como OPS.
O que o on-base plus slugging mede e como OBP e SLG se somam
O on-base plus slugging é o índice mais simples que ainda responde duas perguntas distintas sobre um batedor: com que frequência ele chega em base e, quando a bola está em jogo como vez oficial, quantas bases ela produz. Esse denominador é o conjunto oficial de aparições no home plate para o OBP: walks e atingidos contam como chegadas em base sem serem vezes no bastão, e um fly de sacrifício entra no denominador para que um out produtivo não inflar o índice.
A porcentagem de slugging é bases totais divididas pelas vezes no bastão. O OPS é esses dois índices somados, não média nem ponderação. Um OPS de liga costuma ficar perto dos setecentos altos; oitocentos é um regular sólido; novecentos é um bastão de All-Star; mil ou mais é território de temporada MVP.
A média de rebatidas não substitui: ignora walks e trata uma simples como um home run. A média ponderada de embase e o OPS-plus são buscas diferentes — fatores de estádio, coeficientes de liga e pesos lineares — e esta página não os calcula.
Onde uma calculadora determinística de OPS justifica o lugar
Estatísticos de clube que fundem box scores amadores precisam do mesmo OPS a partir das mesmas seis contagens todas as noites, não de uma célula de planilha que alguém editou depois de um atraso por chuva. Pipelines de fantasy e drafts de keeper ordenam um elenco por on-base plus slugging além da média de rebatidas; a média premia a sorte em bolas em jogo, o OPS premia chegar em base e o poder de bases extras, e os dois números respondem perguntas de elenco distintas.
A validação falha não consome saldo. Mantenha as seis entradas na mesma temporada, série ou janela de carreira — não some os walks deste mês às vezes no bastão do ano passado — e você obtém um OPS reproduzível para placares, quizzes LMS e workers na borda. Esta landing é para quem busca uma calculadora de on-base plus slugging, uma de OPS com contagens de box score, ou OBP mais SLG.
Não é média de rebatidas, não é wOBA, não é taxa de strike de críquete e não é um feed MLB ao vivo. Prefira esta capacidade quando já tem as seis contagens e só precisa da soma oficial.
Casos de uso
Folhas de scouting e box scores amadores
Una as anotações de fim de semana em uma só coluna de OPS com as seis contagens oficiais, para comparar na mesma escala um bastão de muitos walks e um batedor de força.
Perguntas frequentes
Como se calcula o on-base plus slugging a partir do box score?
OPS = OBP + SLG. Envie as seis contagens não negativas da mesma janela.
O que acontece se vezes no bastão mais walks forem zero?
O on-base plus slugging fica indefinido quando vezes no bastão mais walks valem zero, então a calculadora não devolve Infinity, NaN nem um OPS falso de zero, e a falha não é cobrada.
Flys de sacrifício e atingidos por arremesso entram no OPS?
Sim, na porcentagem de embase. O atingido conta no numerador e no denominador do OBP. O fly de sacrifício conta só no denominador do OBP.
O OPS é a mesma coisa que média de rebatidas ou wOBA?
O wOBA aplica pesos lineares a cada evento. Esta página é a soma oficial de OBP e SLG, a consulta que as pessoas digitam como on-base plus slugging.
O que é um bom OPS?
Como guia aproximado, o OPS médio de uma liga costuma ficar na parte alta dos setecentos; oitocentos indica um titular sólido, novecentos um taco de All-Star e mil ou mais é território de temporada de MVP. Aqui só se devolve a taxa.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/sports/on-base-plus-slugging \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hits":150,"walks":50,"hit_by_pitch":5,"at_bats":500,"sacrifice_flies":5,"total_bases":250}'const res = await fetch("https://api.kit.forhosting.com/sports/on-base-plus-slugging", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hits": 150,
"walks": 50,
"hit_by_pitch": 5,
"at_bats": 500,
"sacrifice_flies": 5,
"total_bases": 250
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/sports/on-base-plus-slugging",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hits": 150,
"walks": 50,
"hit_by_pitch": 5,
"at_bats": 500,
"sacrifice_flies": 5,
"total_bases": 250
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/sports/on-base-plus-slugging", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hits":150,"walks":50,"hit_by_pitch":5,"at_bats":500,"sacrifice_flies":5,"total_bases":250}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hits":150,"walks":50,"hit_by_pitch":5,"at_bats":500,"sacrifice_flies":5,"total_bases":250}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/sports/on-base-plus-slugging", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"hits": 150,
"walks": 50,
"hit_by_pitch": 5,
"at_bats": 500,
"sacrifice_flies": 5,
"total_bases": 250
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "sports.on_base_plus_slugging",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_abs_value | 1000000000000000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Esta calculadora recebe as seis contagens de box score da identidade oficial: hits, walks, atingidos por arremesso, vezes no bastão, flys de sacrifício e bases totais. Uma amostra sem vezes no bastão e sem walks é recusada com invalid_input, porque o índice fica indefinido quando o batedor ainda não foi carregado com uma vez oficial nem com um walk.
O que o on-base plus slugging mede e como OBP e SLG se somam
A porcentagem de embase é (hits mais walks mais atingidos por arremesso) dividida por (vezes no bastão mais walks mais atingidos por arremesso mais flys de sacrifício). As bases totais creditam uma simples como um, uma dupla como dois, uma tripla como três e um home run como quatro; walks, atingidos e flys de sacrifício não acrescentam nada ao numerador, por isso uma entrada só de walks pode mostrar OBP alto e slugging zero. Aqui vive a identidade de box score OPS = OBP + SLG, um erro duro quando vezes no bastão mais walks valem zero para que um painel nunca pinte Infinity, e uma checagem de coerência para que hits não ultrapassem as vezes no bastão e as bases totais fiquem entre uma e quatro por hit.
Entradas, fórmula, arredondamento e o erro de vezes mais walks iguais a zero
Essa falha não é cobrada. Em caso de sucesso, o corpo ecoa as seis entradas, devolve obp, slg e ops arredondados a dez casas decimais para goldens estáveis entre runtimes, e reafirma formula como OPS = OBP + SLG com as duas frações oficiais. Envie um corpo JSON com POST e seis números finitos não negativos obrigatórios da mesma janela: hits, walks, hit_by_pitch, at_bats, sacrifice_flies e total_bases. Cada campo pode chegar como número JSON ou como cadeia numérica. Aceitam-se os alias h e hit para hits; bb, base_on_balls, bases_on_balls e w para walks; hbp, hit_batsman e hit_by_pitches para hit_by_pitch; ab e atbats para at_bats; sf, sac_flies e sacrifice_fly para sacrifice_flies; tb e bases para total_bases. Campos ausentes, cadeias vazias, NaN, Infinity, negativos e texto não numérico falham com invalid_input nomeando o campo. hits não pode superar at_bats, porque um hit é uma vez oficial. total_bases não pode ser menor que hits nem maior que quatro vezes hits, porque cada hit vale no mínimo uma simples e no máximo um home run. at_bats mais walks deve ser maior que zero: o on-base plus slugging fica indefinido quando vezes no bastão mais walks valem zero, e a tarefa falha em vez de devolver Infinity, NaN ou um zero silencioso. Quando at_bats é zero mas restam walks, o slugging define-se como zero e o OPS iguala o OBP — a leitura honesta de uma amostra só de walks. Exemplo resolvido: 150 hits, 50 walks, 5 hit_by_pitch, 500 at_bats, 5 sacrifice_flies e 250 total_bases produzem OBP 205/560, slugging .500 e OPS 0.8660714286. Combine a resposta com os próprios limiares de era se precisar de um rótulo semafórico; este endpoint devolve só o índice.
Onde uma calculadora determinística de OPS justifica o lugar
Folhas de scouting que já guardam hits, walks, hit_by_pitch, at_bats, sacrifice_flies e total_bases podem preencher uma coluna de OPS sem montar um fornecedor de anotação. Gráficos de transmissão podem recalcular o OPS da temporada após cada aparição no home plate a partir de totais acumulados, e podem bloquear com invalid_input um jogador sem vez no bastão nem walk em vez de pintar Infinity.
Casos de integração
Placar e índices de temporada na transmissão
Transforme hits, walks, atingidos, vezes no bastão, flys de sacrifício e bases totais acumulados em um OPS de temporada após cada aparição no home plate, sem inventar um número antes da primeira vez ou do primeiro walk.
Pipelines de fantasy e academias
Bloqueie com invalid_input um jogador com zero vezes no bastão e zero walks em vez de pintar Infinity em um ranking, e mantenha hits e bases totais coerentes com o box score.
Perguntas técnicas
Quanto custa a calculadora de on-base plus slugging?
O widget da página roda no navegador sem cobrança. Cada tarefa API bem-sucedida é faturada a US$ 0,002; invalid_input não é cobrado.