On the wire · 04:46:51 UTC Live 550 · Prematch 14,364 · Markets 56,961 Vol. I · No. 5 · Friday 13 November 2026 wss://pinnfeed.io/v1/stream
PinnFeed
Caso de uso · Ciência de dados

Dados de odds da Pinnacle para cientistas de dados

Atualizado em · PinnFeed · 2 min de leitura

ou comece o teste de 3 dias do Builder

Chave grátis: sem cartão. Ao continuar, você aceita os Termos e a Política de Privacidade. · 3 dias grátis, depois €99/mês (IVA incl. quando aplicável) · cartão obrigatório · cobrado após o dia 3 se você não cancelar

Resposta: o PinnFeed entrega os preços da Pinnacle em JSON limpo com os campos de referência que os modelos precisam: decimal, fairProb (probabilidade sem margem, método proporcional), margin e maxStake por mercado. Use de duas formas: colete os seus próprios snapshots de /v1/odds ou do WebSocket e, no Builder, baixe os registros de fechamento guardados por dia com /v1/closing?date=YYYY-MM-DD (até 2.000 linhas por página). Exportações históricas em massa (CSV/Parquet) são uma opção do Enterprise.

Tarefas típicas#

TarefaCampos e endpoints
Comparar as probabilidades de um modelofairProb num horário fixo antes do início (pandas)
Avaliar contra o fechamento/v1/closing?date= (Builder) (relatório de CLV)
Estudar o movimento das linhasOs seus próprios frames delta do WebSocket (armazenamento no Postgres)
Filtros por liquidezmaxStake por mercado
Usuários de Rcliente httr2

Registros de fechamento num DataFrame (Builder)#

import os, requests, pandas as pd
KEY = os.environ["PINNFEED_KEY"]  # ps_live_...

def closing_day(day, sport="soccer"):
    rows, offset = [], 0
    while True:
        r = requests.get("https://pinnfeed.io/v1/closing", headers={"x-api-key": KEY}, timeout=30,
                         params={"date": day, "sport": sport, "main": "true", "limit": 2000, "offset": offset})
        r.raise_for_status()
        batch = r.json()["closing"]
        rows += batch
        if len(batch) < 2000:
            break
        offset += 2000
    return pd.json_normalize(rows)

df = closing_day("2026-11-08")
print(df[["eventId", "home", "away", "market.type", "market.line", "market.margin"]].head())

Para guardar os fechamentos em Parquet e consultá-los com SQL: DuckDB + Parquet.

Limites honestos#

  • Só Pinnacle: sem outras casas, sem escalações nem estatísticas de jogadores.
  • Os registros de fechamento existem desde que o PinnFeed começou a guardá-los; não há um arquivo profundo nos planos de autosserviço.
  • O seu próprio histórico de snapshots começa quando você começa a registrá-lo.

Qual plano#

O Free (30 s de atraso, 2 esportes, 1.000 requisições por dia) basta para desenhar um esquema. O Builder (€99/mês) adiciona o WebSocket, os 13 esportes e os registros de fechamento. Enterprise: exportações em massa CSV/Parquet, SLA e licença comercial. Teste de 3 dias; o cartão é obrigatório e a cobrança ocorre após o dia 3, a menos que você cancele.

Conteúdo educativo para maiores de 18 anos. Uso em pesquisa; sem palpites nem lucro garantido.

Perguntas frequentes#

Posso usar os dados num modelo comercial?#

Usá-los dentro dos seus próprios modelos e produtos é permitido pela Política de uso aceitável; redistribuí-los como feed de dados exige Enterprise.

fairProb é a probabilidade real?#

Não. É o preço da Pinnacle sem a margem, removida de forma proporcional: uma referência de mercado sólida, não a verdade absoluta.

Existe um SDK de Python?#

Não é preciso; requests ou httpx mais o /openapi.json bastam.

O plano WebSocket: Builder, €99/mês.

Odds da Pinnacle em tempo real por um único WebSocket: os 13 esportes, todos os mercados, odds justas sem margem e odds de fechamento. 3 dias grátis, cancele com um clique.

Ainda não quer se cadastrar?

Receba por e-mail o guia rápido em 3 passos (chave grátis, primeira chamada, WebSocket), em inglês.

Enviamos o guia rápido uma única vez, agora. Nada mais, a menos que você marque a caixa abaixo; todo e-mail tem um link para cancelar com um clique. Privacidade.

Somente maiores de 18 anos. Dados de odds para desenvolvimento de software; não aceitamos apostas.

Form K-1 · Free API key

Get your free API key.

One field. No password, no card: enter your email, click the link we send, and your key is on screen.

By continuing you agree to the Terms and Privacy Policy.

One free key per email. Link valid for 20 minutes.