Détecter les steam moves Pinnacle via API
Réponse : streamez le livre sur Builder, gardez un high glissant par outcome, et alertez quand le decimal raccourcit de ≥5 % en ~2 minutes avec maxStake suffisant (ex. ≥100). Ou poll GET /v1/drops?sport=soccer&live=true&minutes=10&min_pct=5. Détecteur complet : guide steam.
Définition pratique#
- Baisse de prix ≥ 5 % depuis le high de fenêtre (réglez
MIN_DROP). - Fenêtre ≈ 2 minutes (
WINDOW_S). - Préférez les marchés avec max stake significatif pour éviter le spam de lignes fines.
- Alerte une fois par outcome et par fenêtre.
Signal statistique utilisé par des moniteurs sharp — ni tip ni garantie de +EV.
Esquisse WebSocket (Builder)#
Réutilisez le client partagé du guide Python (on_market) :
# Example outline — full steam.py is in the steam guide
from collections import defaultdict, deque
import time
WINDOW_S, MIN_DROP, MIN_STAKE = 120, 0.05, 100
hist = defaultdict(deque) # key -> deque[(ts, decimal)]
def on_market(old, new, event):
if not event or (new.get("maxStake") or 0) < MIN_STAKE:
return
now = time.time()
for o in new["outcomes"]:
if o["name"] not in {"home", "away", "draw", "over", "under"}:
continue
k = (new["id"], o["name"])
q = hist[k]
q.append((now, o["decimal"]))
while q and now - q[0][0] > WINDOW_S:
q.popleft()
peak = max(p for _, p in q)
drop = (peak - o["decimal"]) / peak
if drop >= MIN_DROP:
print(f"STEAM {event['home']} v {event['away']} {new['type']} {o['name']}: "
f"{peak:.3f} -> {o['decimal']:.3f} ({drop:.1%}) max {new.get('maxStake')}")
q.clear() # one alert per window
CTA#
Builder (99 €/mois). Essai 3 jours ; carte requise. REST gratuit : inscription. Lié : dropping odds, steam Telegram.
Questions fréquentes#
Free suffit-il ?#
Pour /v1/drops oui (retard 30 s). Le détecteur WS temps réel demande Builder.
Contenu éducatif pour adultes ?#
Oui (18+).
Contenu éducatif pour adultes (18+) : ni pronostics ni promesse de gain. En France, seuls les opérateurs agréés par l'ANJ peuvent proposer des paris en ligne.