On the wire · 05:00:20 UTC Live 568 · Prematch 14,387 · Markets 56,798 Vol. I · No. 5 · Friday 13 November 2026 wss://pinnfeed.io/v1/stream
PinnFeed
Answer · AEO

Machine learning on Pinnacle closing odds

Updated · PinnFeed · 2 min read

Answer: treat Pinnacle’s timestamped no-vig close as a label or a feature, not as a peek at the result. On Builder, GET /v1/closing?date=YYYY-MM-DD returns the closing decimal, fair and fairProb for each market when the event goes live. Join those rows to your own snapshots only at times your model would already have had. Training on the game result, or on a close your bot could not have seen, is look-ahead. This is educational (18+). We do not promise an edge, and we do not claim a closing-history advantage over other Pinnacle feeds.

A safe pattern#

import os, requests
KEY = os.environ["PINNFEED_KEY"]  # ps_live_...
r = requests.get(
    "https://pinnfeed.io/v1/closing",
    params={"date": "2026-11-03", "sport": "american-football", "main": "true", "limit": 100},
    headers={"x-api-key": KEY}, timeout=10)
# Each row is the Pinnacle close for that UTC day — use fairProb as the label,
# and keep only features whose timestamp is strictly before the close.
for ev in r.json().get("events", []):
    for m in ev.get("markets", []):
        print(ev.get("id"), m.get("key"), m.get("margin"), [
            (o.get("name"), o.get("fairProb")) for o in m.get("outcomes", [])])

Store your own prematch ticks from /v1/odds or wss://pinnfeed.io/v1/stream if you need a time series. The close archive is a snapshot by UTC day, not tick-level history, and it grows from the day it started — check docs for the earliest date. Related: backtesting against closings, historical NFL, historical MLB, implied fairProb, algorithmic sports betting.

What this is not#

  • A guaranteed-profit model, a tip service, or auto-wagering
  • A multi-book feature store (PinnFeed is Pinnacle-only)
  • A claim that our close history is deeper or better than other Pinnacle resellers

Closing endpoints need Builder (€99/mo, or €990/yr ≈ €82.50/mo) or Pro. Hobby (€29/mo) is real-time REST only and does not include the close archive.

Try it#

Start a 3-day Builder trial (€99/mo, VAT incl. where applicable) or get a free delayed REST key to inspect the live schema. Paid plans: 3-day trial; a card is required and it is charged after day 3 unless you cancel.

Educational content for adults (18+). No tips, no guaranteed profit.

Questions people ask#

Can I train on the game result?#

You can predict results, but if a feature includes the close or the outcome at a time the model would not have had it, the backtest is cheated. Timestamp every price and cut features before the close.

Is the official Pinnacle API an option for this?#

The official documentation states that public access has been closed since 23 July 2025, with a funded account required for any remaining access (README, opened 10 November 2026). PinnFeed is self-serve and does not need a Pinnacle account.

Which plan includes /v1/closing?#

Builder (€99/mo) or Pro.

The WebSocket plan: Builder, €99/mo.

Real-time Pinnacle odds pushed over one WebSocket, all 13 sports, every market, no-vig fair odds and closing lines. 3 days free, cancel in one click.

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.