Arbitrage-Möglichkeiten
Finden Sie garantiert profitable Arbitrage-Möglichkeiten zwischen Sportwettenanbietern.
GET /api/v1/opportunities/arbitrageAuthentifizierung
Erfordert einen API key. Hobby-Tarif oder höher erforderlich. In Ihrem Konto muss das Feature arbitrage aktiviert sein.
Query-Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
sport | string | alle | Filter nach Sportart(en), kommagetrennt (z. B. basketball, football) |
league | string | alle | Filter nach Liga(s), kommagetrennt (z. B. nba, nfl, nhl) |
sportsbook | string | tarifabhängig | Filter nach Sportwettenanbieter(n), kommagetrennt. Tarifgrenzen werden durchgesetzt. |
market | string | alle | Filter nach Markttyp(en), kommagetrennt. Unterstützt Kategorie-Aliasse — siehe Odds: Marktkategorie-Aliasse. |
min_profit | number | 0.5 | Minimaler Gewinnprozentsatz (z. B. 1.0 = 1 %) |
live | boolean | — | true = nur Live, false = nur Prematch, weglassen = beides |
format | string | json | Antwortformat: json oder csv. CSV wird als arbitrage_YYYY-MM-DD.csv heruntergeladen. |
limit | integer | 50 | Ergebnisse pro Seite (max. 200) |
offset | integer | 0 | Paginierungs-Offset (max. 5000) |
Gewinnobergrenze: Möglichkeiten mit einem Gewinn über 10 % werden automatisch herausgefiltert. Es handelt sich dabei fast immer um Phantom-Arbs, die durch veraltete oder ausgesetzte Quoten verursacht werden, und nicht um echte Möglichkeiten.
Breaking Change: Das Feld game_state (Spielstand/Periode/Uhr) wurde aus dieser Antwort entfernt. Der Live-Spielstand wird jetzt ausschließlich über den Game State-Endpoint und den gamestate-Stream-Channel bereitgestellt. Verknüpfen Sie Datensätze über event_id mit dem Spielstand.
Mehrere Werte filtern
Verwenden Sie kommagetrennte Werte für Mehrfachauswahl-Filter:
?sport=basketball,football&league=nba,nflBeispielanfragen
cURL
curl -X GET "https://api.sharpapi.io/api/v1/opportunities/arbitrage?league=nba&min_profit=1" \
-H "X-API-Key: YOUR_API_KEY"Antwort
Erfolg (200)
{
"success": true,
"data": [
{
"id": "arb_dk_pin_nba_lal_bos_ml",
"event_id": "evt_nba_lal_bos_20260208",
"event_name": "Los Angeles Lakers @ Boston Celtics",
"sport": "basketball",
"league": "nba",
"market_type": "moneyline",
"line": null,
"profit_percent": 1.83,
"implied_total": 98.2,
"is_live": false,
"start_time": "2026-02-08T19:00:00Z",
"is_alternate_line": false,
"possibly_stale": false,
"oldest_odds_age_seconds": 8,
"warnings": [],
"ev_available": true,
"ev_percentage": 3.5,
"is_player_prop": false,
"player_name": null,
"stat_category": null,
"legs": [
{
"sportsbook": "draftkings",
"selection": "Los Angeles Lakers",
"odds_american": 145,
"odds_decimal": 2.45,
"implied_probability": 0.408,
"stake_percent": 41.5,
"timestamp": "2026-02-08T14:22:05.000Z",
"external_event_id": "33483153",
"selection_id": "sel_lal_ml",
"market_id": "mkt_ml_33483153"
},
{
"sportsbook": "pinnacle",
"selection": "Boston Celtics",
"odds_american": -135,
"odds_decimal": 1.74,
"implied_probability": 0.574,
"stake_percent": 58.5,
"timestamp": "2026-02-08T14:22:08.000Z",
"external_event_id": null,
"selection_id": null,
"market_id": null
}
],
"detected_at": "2026-02-08T14:22:10.456Z"
}
],
"pagination": {
"limit": 50,
"offset": 0,
"has_more": false,
"next_offset": null
},
"meta": {
"source": "cache",
"summary": {
"count": 3,
"avg_profit": 1.23,
"max_profit": 1.83,
"by_market": { "moneyline": 2, "point_spread": 1 },
"by_sport": { "basketball": 3 }
},
"filters": {
"sport": null,
"league": ["nba"],
"sportsbook": null,
"market": null,
"live": null,
"min_profit": 1.0
},
"books_analyzed": 8
}
}Antwort-Header
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 297
X-RateLimit-Reset: 1707401000
X-Data-Delay: 0
X-Request-Id: req_arb789xyz012Fehlerantworten
401 Unauthorized
{
"error": {
"code": "unauthorized",
"message": "Invalid or missing API key",
"docs": "https://docs.sharpapi.io/en/authentication"
}
}403 Tarif erforderlich
{
"error": {
"code": "tier_restricted",
"message": "Arbitrage detection requires Hobby tier or higher",
"docs": "https://docs.sharpapi.io/en/pricing"
}
}429 Rate Limited
{
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded",
"docs": "https://docs.sharpapi.io/en/api-reference/overview"
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
id | string | Eindeutiger Arbitrage-Identifikator (Hash) |
event_id | string | Event-Identifikator |
event_name | string | Menschenlesbarer Event-Name |
sport | string | Sportart-Identifikator (Kleinbuchstaben) |
league | string | Liga-Identifikator |
market_type | string | Markttyp (moneyline, point_spread, total_points usw.) |
line | number|null | Spread-/Total-Linie (z. B. -3.5) |
profit_percent | number | Garantierter Gewinn als Prozentsatz (z. B. 1.83 = 1,83 %) |
implied_total | number | Summe der impliziten Wahrscheinlichkeiten über alle Legs (unter 100 = Arbitrage besteht) |
is_live | boolean | Ob das Event aktuell live ist |
start_time | string|null | Startzeit des Events im Format ISO 8601 |
is_alternate_line | boolean | Ob eine nicht standardmäßige Linie verwendet wird |
possibly_stale | boolean | Ob sich die Quoten seit der Erkennung möglicherweise geändert haben |
oldest_odds_age_seconds | number|null | Alter der ältesten Quote des Legs in Sekunden |
warnings | string[] | Warnungs-Flags. Mögliche Werte: LIVE_GAME, LIVE_HIGH_PROFIT_SUSPICIOUS, LOW_IMPLIED_TOTAL, POTENTIALLY_STALE_ODDS, VERY_STALE_ODDS |
ev_available | boolean | Ob auf diesem Markt eine EV-Möglichkeit besteht |
ev_percentage | number|null | EV-Prozentsatz, falls verfügbar |
is_player_prop | boolean | Ob es sich um einen Player-Prop-Markt handelt |
player_name | string|null | Spielername (falls Player Prop) |
stat_category | string|null | Statistiktyp (falls Player Prop, z. B. points, rebounds) |
legs | array | Array der Wett-Legs, die die Arbitrage bilden |
detected_at | string | ISO-8601-Zeitstempel, zu dem die Arbitrage erstmals erkannt wurde |
Leg-Objekt
| Feld | Typ | Beschreibung |
|---|---|---|
sportsbook | string | Sportwettenanbieter für dieses Leg |
selection | string | Die Auswahl (Teamname, Over/Under usw.) |
odds_american | number | American Odds für dieses Leg |
odds_decimal | number | Decimal Odds für dieses Leg |
implied_probability | number | Implizite Wahrscheinlichkeit (0,0 bis 1,0) |
stake_percent | number | Prozentsatz des Gesamteinsatzes für dieses Leg |
timestamp | string|null | Wann diese Quoten erfasst wurden (ISO 8601) |
external_event_id | string|null | Native Event-ID des Sportwettenanbieters |
selection_id | string|null | Auswahl-/Outcome-ID des Sportwettenanbieters |
market_id | string|null | Markt-ID des Sportwettenanbieters |
CSV-Format
Bei ?format=csv wird die Antwort als arbitrage_YYYY-MM-DD.csv mit folgenden Spalten heruntergeladen:
event,sport,market,line,profit%,implied_total,book1,selection1,odds1,stake1%,book2,selection2,odds2,stake2%,is_live,is_alternate_line,possibly_stale,warnings,detected_atWie Arbitrage funktioniert
Arbitrage nutzt Preisunterschiede zwischen Sportwettenanbietern, um unabhängig vom Ausgang einen Gewinn zu garantieren. Wenn die kombinierten impliziten Wahrscheinlichkeiten aller Legs eines Marktes zusammen weniger als 100 % ergeben, besteht eine Arbitrage-Möglichkeit.
Das Grundprinzip
Book A: Team X +150 (implied 40.0%)
Book B: Team Y -130 (implied 56.5%)
Total implied: 96.5% < 100% = ARBITRAGEWenn die Summe unter 100 % liegt, können Sie proportional auf jeden Ausgang setzen und einen Gewinn garantieren.
Gewinnberechnung
Profit % = (100 / implied_total) - 100Mit dem obigen Beispiel:
Profit % = (100 / 96.5) - 100 = 3.63%Das bedeutet, dass für je 1.000 $ Einsatz ungefähr 36,30 $ Gewinn garantiert sind.
Berechnung der optimalen Einsätze
Um unabhängig vom Ausgang gleiche Renditen zu garantieren, verteilen Sie die Einsätze proportional:
// Decimal odds: Team X = 2.50, Team Y = 1.77
const impliedX = 1 / 2.50; // 0.400
const impliedY = 1 / 1.77; // 0.565
const total = impliedX + impliedY; // 0.965
const stakeX = impliedX / total; // 41.5% of bankroll
const stakeY = impliedY / total; // 58.5% of bankrollVollständiges Einsatzbeispiel
Gesamtkapital für diese Arbitrage: 1.000 $
| Leg | Einsatz | Quote | Auszahlung bei Gewinn |
|---|---|---|---|
| Team X @ DraftKings | 415 $ | +150 | 1.037,50 $ |
| Team Y @ Pinnacle | 585 $ | -130 | 1.035,00 $ |
Garantierter Gewinn: ~35–38 $ (3,5–3,8 %) unabhängig vom Ausgang.
Drei-Wege-Arbitrage
Sportarten wie Fußball und Eishockey haben Drei-Wege-Märkte (Heim/Unentschieden/Auswärts), die ebenfalls Arbitrage hervorbringen können:
Home Win: +200 (33.3%)
Draw: +250 (28.6%)
Away Win: +180 (35.7%)
Total implied: 97.6% -> 2.4% arbitrage profitEs gilt dieselbe Einsatzberechnung — teilen Sie die implizite Wahrscheinlichkeit jedes Legs durch die Summe, um die Einsatzverteilung zu bestimmen.
Warum Arbitragen existieren
- Zeitliche Unterschiede – Sportwettenanbieter aktualisieren Quoten unterschiedlich schnell
- Unterschiedliche Einschätzungen – Anbieter haben verschiedene Risikomodelle und Exposures
- Promotionen – Geboostete Quoten eines Anbieters erzeugen künstliche Lücken
- Fehler – Gelegentlich postet ein Anbieter falsche Quoten
Best Practices
Kontorisiko: Sportwettenanbieter überwachen aktiv Arbitrage-Aktivitäten. Konten, die ausschließlich Arbitrage-Wetten platzieren, können limitiert oder gesperrt werden. Erwägen Sie, Arbitrage-Wetten mit Freizeitaktivitäten zu mischen.
- Schnell handeln – Arbitrage-Fenster sind oft kurzlebig (Sekunden bis Minuten)
- Einsätze runden – Eine Wette von 47,32 $ wirkt verdächtig; runden Sie auf 50 $
- Vorberechnete Einsätze nutzen – Das Feld
stake_percentliefert Ihnen die optimale Verteilung - Quoten vor Platzierung prüfen – Bestätigen Sie stets, dass sich die Quoten beim Sportwettenanbieter nicht bewegt haben
- Mit größeren Arbitragen beginnen – Konzentrieren Sie sich auf
min_profit=1oder höher, um Linienbewegungen zu berücksichtigen implied_totalim Auge behalten – Niedrigere Summen bedeuten höhere garantierte Gewinne- Sportwettenanbieter diversifizieren – Eine Verteilung auf viele Anbieter reduziert das Risiko einzelner Konten
Arbitrage vs. +EV-Wetten
| Aspekt | Arbitrage | +EV-Wetten |
|---|---|---|
| Risiko | Null (garantierter Gewinn) | Varianz vorhanden |
| Gewinn pro Wette | typischerweise 1–3 % | 2–10 % Edge |
| Kontorisiko | Hoch (Limitierungen wahrscheinlich) | Geringer |
| Erforderliches Kapital | Hoch (beide Seiten bewettet) | Geringer |
| Nachhaltigkeit | Durch Kontogesundheit begrenzt | Langfristig tragfähig |
Viele erfahrene Wettende bevorzugen +EV-Wetten gegenüber Arbitrage, weil Konten länger halten und die erwarteten Edges oft größer sind. Weitere Informationen finden Sie unter dem +EV Opportunities-Endpoint.
Verwandte Endpoints
- +EV Opportunities – Wetten mit positivem Erwartungswert
- Middles – Möglichkeiten durch Linienunterschiede
- Arbitrage-Konzepte – Detaillierte Arbitrage-Theorie
- Arbitrage-Scanner-Beispiel – Erstellen Sie einen Echtzeit-Scanner