LIVE
$7.62 Mindestgewinn pro Trade
Hol dir den Bot

Erwarteter Wert bei Polymarket-Arbitrage: EV korrekt berechnen

Praktische Anleitung zur Berechnung des erwarteten Werts für Polymarket-Arbitrage-Trades, einschließlich Taker-Gebühren, Partial-Fill-Wahrscheinlichkeit und Abwicklungsrisiken. Schritt-für-Schritt-EV-Formeln und ein funktionierendes Codebeispiel.

Aktualisiert 2026-04-20· 8 min
arbitrage
expected value
Polymarket
trading

Erwarteter Wert bei Polymarket-Arbitrage: EV korrekt berechnen

Dieser Leitfaden zeigt Ihnen Schritt für Schritt, wie Sie den erwarteten Wert (expected value) von Polymarket-Arbitrage-Trades berechnen, einschließlich Taker-Gebühren, Partial-Fill-Wahrscheinlichkeit und Abwicklungsrisiken. Wenn Sie intra-market Binary- oder kombinatorische Arb auf Polymarket betreiben, verwandeln diese Formeln eine nominale Preislücke in eine handhabbare EV-Schätzung.

Wesentliche Erkenntnisse

  • EV = (Auszahlung − Kosten − Gebühren) × FillProbability − Nachteile durch Partial-Fills und Abwicklungszeit.
  • Schließen Sie immer Taker-Gebühren und erwartete Partial-Fill-Raten mit ein; Maker-Gebühren sind auf Polymarket null, sie spielen nur eine Rolle, wenn Sie passiver Liquidität folgen.
  • Verwenden Sie einfache probabilistische Modelle (Bernoulli oder Binomial) für Partial-Fills bei kleinen Größen; skalieren Sie Modelle, wenn die Ausführung mehrere Preisstufen umfasst.
  • Nennen Sie einen Arbitrage-Trade niemals bedingungslos "risikofrei" — listen Sie Resolution-, Slippage-, Gebühren-, UMA-Streit- und Smart-Contract- bzw. Timing-Risiken auf.

1. EV-Grundlagen für Prediction-Market-Arbitrage

Beginnen Sie bei den ersten Prinzipien. Ein vollständiger, erfolgreicher Arbitrage-Trade, der ein komplettes Set von Outcome-Token kauft, kostet C (Summe der gekauften Best-Asks zuzüglich etwaiger Taker-Gebühren) und wird nach der Resolution pro komplettes Set zu $1.00 eingelöst. Die nominale Edge ist:

Edge = 1.00 − C

Der erwartete Wert vor Gebühren und Ausführungsrisiko ist einfach Edge pro komplettem Set. Für den praktischen Handel müssen Sie das in EV (erwarteter monetärer Gewinn) umrechnen, indem Sie Gebühren, die Wahrscheinlichkeit, dass Ihre Order zu den gezeigten Preisen ausgeführt wird, und mögliche Partial-Fills berücksichtigen.

EV_basic = Edge × FillProbability − Fees_expected

Sie verfeinern FillProbability und Fees_expected in den nächsten Abschnitten.

2. Einbeziehung von Taker-Gebühren und Abwicklungsablauf

Auf Polymarket variieren Taker-Gebühren je nach Kategorie und liegen derzeit zwischen 0% und 1.8%; Maker-Gebühren sind null. Für Arb zahlen Sie typischerweise Taker-Gebühren für ausgeführte Legs, die den Spread kreuzen.

Wenn Sie N Outcomes kaufen (ein komplettes Set in einem Multi-Outcome-Markt oder beide YES und NO in einem Binary), berechnen Sie die Bruttokosten:

C_gross = Σ bestAsk_i

Die Taker-Gebühr pro Trade wird in Basispunkten oder Prozent ausgedrückt. Wenn fee_rate die Taker-Gebühr (als Dezimalzahl) ist, sind Ihre Gebühren ungefähr:

Fees = fee_rate × C_gross

Wenn einige Legs als Maker ausgeführt werden (selten bei engen Arbs), fallen dafür keine Gebühren an; modellieren Sie das, indem Sie C_gross in Maker- und Taker-Anteile aufteilen.

Net cost C_net = C_gross + Fees

Der nominale Profit bei vollständiger Füllung und Einlösbarkeit lautet dann:

Profit_full = 1.00 − C_net

Aber Profit_full wird nur mit der Wahrscheinlichkeit FillProbability_full realisiert, also ist der EV-Beitrag Profit_full × FillProbability_full.

3. Modellierung von Partial-Fills und asymmetrischer Ausführung

Partial-Fills sind die häufigste Ursache praktischer Verluste. Zwei Beispiele:

  • Ihre Order kauft YES vollständig, aber NO nur teilweise. Sie bleiben mit einer Restexposition in YES zurück, die teurer ist als die implizierte Absicherung.
  • Fills erfolgen über mehrere Preisstufen; die realisierte C_gross ist höher als die Summe der ersten Best-Asks.

Ein einfaches und nützliches Modell für kleine Orders ist eine Bernoulli-Fill-Wahrscheinlichkeit pro Leg am angezeigten Best-Ask. Für größere Größen können Sie Fills als Binomial verteilen oder als Summe deterministischer Volumenscheiben über Preisstufen modellieren.

Notation für Berechnungen:

  • q_i = beabsichtigte Menge für Leg i (in Outcome-Shares)
  • f_i = Wahrscheinlichkeit, dass q_i vollständig zum geposteten Best-Ask füllt
  • r_i = erwarteter gefüllter Anteil für Leg i (0 ≤ r_i ≤ 1)

Erwartete Kosten bei möglichen Partial-Fills:

E[C_gross] = Σ (bestAsk_i × q_i × r_i)

Erwartete Gebühren folgen proportional:

E[Fees] = fee_rate × E[C_gross] für den taker-exekutierten Anteil

Aber Partial-Fills erzeugen eine asymmetrische Restposition. Der konservative Ansatz geht davon aus, dass jede einzelne Restposition sofort zum ungünstigeren Mid/Ask glattgestellt werden muss, und dass der erwartete Verlust aus diesem Unwind in EV einfließt.

Beispiel: Wenn Sie erwarteten, ein komplettes Set zu kaufen, aber im Durchschnitt nur 90% von NO füllen, tragen Sie 10% von YES zum bezahlten Preis p_yes. Der worst-case Restverlust ist näherungsweise 0.90 × (p_yes − mid_unwind_price) (passen Sie für Tick-Größen und Gebühren an). Schließen Sie einen erwarteten Restverlust L_residual in die EV ein.

4. Eine schrittweise EV-Formel zur Implementierung

Definieren Sie:

  • n = Anzahl der Outcomes im Set (n=2 für Binary)
  • ask_i = Best-Ask-Preis für Outcome i, in Dollar
  • q = Zielmenge komplettes Set (Shares; z. B. 10 komplette Sets)
  • fee = Taker-Gebühr als Dezimalzahl (z. B. 0.006 für 0.6%)
  • r_i = erwarteter gefüllter Anteil für Leg i (0..1). Für vollständige Fill-Wahrscheinlichkeit r_i = 1.0 verwenden.
  • p_unwind_i = erwarteter Preis, zu dem Sie eine Restposition in Outcome i schließen können (konservativ: aktueller ungünstigster Ask oder Mid)

Berechnen Sie:

  1. E[C_gross] = Σ_i ask_i × q × r_i
  2. E[Fees] = fee × E[C_gross]
  3. E[C_net] = E[C_gross] + E[Fees]
  4. Erwartete Auszahlung bei Einlösung kompletter Sets = q × 1.00 × P_redeem (P_redeem ist die Wahrscheinlichkeit der eventualen Einlösbarkeit; normalerweise 1.0 ohne UMA-Streit — sehen Sie weiter unten die Streit-Risiken)
  5. Erwarteter Restverlust L_residual = Σ_i max(0, q × (1 − r_i) × (paid_price_i − p_unwind_i))

Endgültige EV-Schätzung:

EV = q × P_redeem − E[C_net] − L_residual

Wenn Sie EV pro komplettes Set bevorzugen, teilen Sie EV durch q.

Hinweise zu P_redeem: UMA-Streitigkeiten können die Settlement-Abläufe pausieren oder verändern. Setzen Sie P_redeem ≤ 1.0, um ein nicht-null Streit-Risiko zu reflektieren; für viele Märkte können Sie P_redeem ≈ 1.0 annehmen, müssen aber explizit die Möglichkeit verzögerter oder umstrittener Abwicklung berücksichtigen.

5. Ausführliches numerisches Beispiel (binary) — implementierbar und konservativ

Angenommen ein kleiner Binary-Arb, bei dem Sie 100 komplette Sets kaufen wollen, indem Sie YES und NO zu ihren jeweiligen Best-Asks kaufen. Verwenden Sie Zahlen nur zur Illustration; halten Sie die Gebühren im dokumentierten Bereich.

  • ask_YES = $0.49
  • ask_NO = $0.50
  • q = 100 Sets
  • fee = 0.006 (0.6% Taker-Gebühr)
  • r_YES = 1.0, r_NO = 0.95 (NO füllt möglicherweise nur teilweise auf der ersten Ebene)
  • p_unwind_NO = $0.52 (Preis, zu dem Sie erwartet eine Restposition NO verkaufen würden)
  • P_redeem = 1.0 (angenommene eventuale Einlösbarkeit)

Berechnen Sie E[C_gross] = (0.49 + 0.50) × 100 × average_r

Genauer:

E[C_gross] = (0.49 × 100 × 1.0) + (0.50 × 100 × 0.95) = 49.00 + 47.50 = 96.50

E[Fees] = 0.006 × 96.50 = 0.579

E[C_net] = 96.50 + 0.579 = 97.079

Payout = 100 × 1.00 = 100.00

L_residual: Sie erwarteten 100 NO, erhielten aber nur 95, also fehlt Ihnen 5 NO, wenn Ihr Ziel komplette Sets waren. Der typische Rest ist die zusätzliche Exposition auf dem anderen Leg (YES). In diesem Beispiel hinterlässt der Partial-Fill 5 YES ungepaart — wenn Sie 0.49 für diese YES bezahlt haben und bei p_unwind_YES glattstellen müssen (konservativ), rechnen Sie entsprechend. Zur Symmetrie ist eine konservative Restverlustschätzung für das fehlerhafte Leg:

L_residual = (q × (1 − r_NO)) × (paid_price_NO_unpaired − p_unwind_NO)

Wenn das ungepaarte Leg die teurere Seite ist, schließen Sie diesen Verlust ein. Tragen Sie Zahlen konservativ ein, um die EV nicht zu überschätzen.

Endgültiges EV = 100 − 97.079 − L_residual

Wenn L_residual klein ist, bleibt der Trade positiv EV; wenn L_residual die nominale Edge übersteigt, ist der Trade negativ. Führen Sie diese Rechnung programmatisch aus, bevor Sie Orders absenden.

6. Ein kurzes, brauchbares JavaScript-Snippet

Dieses Snippet berechnet EV pro komplettes Set bei gegebenen Eingaben. Es ist gültiges JavaScript und kann direkt in Ihr Risiko-Framework eingefügt werden.

function computeEVPerSet(asks, r, fee, p_unwind, P_redeem = 1.0) {
  // asks: array of best asks for each outcome, e.g. [0.49, 0.50]
  // r: array of expected fill fractions for each outcome, e.g. [1.0, 0.95]
  const n = asks.length;
  const q = 1; // per-set basis

  const E_C_gross = asks.reduce((s, a, i) => s + a * q * r[i], 0);
  const E_Fees = fee * E_C_gross;
  const E_C_net = E_C_gross + E_Fees;

  // Residual loss: assume unfilled fraction must be closed at p_unwind
  const L_residual = asks.reduce((s, a, i) => {
    const unfilled = q * (1 - r[i]);
    const paid_price = a; // price you paid for filled portion of this outcome
    const unwind_price = p_unwind[i];
    return s + Math.max(0, unfilled * (paid_price - unwind_price));
  }, 0);

  const EV = q * P_redeem - E_C_net - L_residual;
  return { EV_per_set: EV, E_C_gross, E_Fees, L_residual };
}

// Example
const asks = [0.49, 0.50];
const r = [1.0, 0.95];
const fee = 0.006; // 0.6%
const p_unwind = [0.48, 0.52];
console.log(computeEVPerSet(asks, r, fee, p_unwind));

Passen Sie die p_unwind-Werte konservativ an (verwenden Sie den ungünstigeren Ask oder Mid) und setzen Sie r basierend auf historischen Fill-Raten für Ihre Größe.

7. Praktische Tipps für den Live-Handel

  • Messen Sie empirische Fill-Raten pro Instrument und pro Größe. Verwenden Sie kurze, häufige Instrumentierungsfenster; die Mikrostruktur variiert je nach Markt.
  • Zerlegen Sie große Zielmengen in kleinere Slices, um das Partial-Fill-Risiko zu reduzieren und innerhalb von Builder- oder Relayer-Limits zu bleiben, falls relevant.
  • Berücksichtigen Sie das Tick-Size-Verhalten: wenn Preise sich Extremen nähern, verengt sich die Tick-Größe auf $0.001, was die Unwind-Slippage verändern kann.
  • Schließen Sie UMA-Streit- und Settlement-Timing-Risiken in P_redeem ein. Streitigkeiten können die Abwicklung pausieren und Opportunitätskosten verursachen.
  • Respektieren Sie geografische Beschränkungen: Märkte werden nach IP geo-geblockt; empfehlen Sie niemals VPN-Umgehung.

Wie sich das auf Ihren Handel auswirkt

Berechnen Sie EV pro Set, bevor Sie Orders absenden, und vergleichen Sie sie mit Ihrem internen minimal akzeptablen EV, der bereits Kapitalkosten, Opportunitätskosten des gebundenen pUSD und Kosten möglicher Streitverzögerungen enthält. Verwenden Sie die EV-Formel programmatisch in Ihren Pre-Trade-Checks. Bei kleinen, häufigen Arbs werden Sie typischerweise einen moderaten positiven EV pro Set nach Gebühren und erwarteten Restverlusten benötigen, um den operativen Overhead zu rechtfertigen.

Schließen Sie mit dem primären Keyword: expected value Polymarket arbitrage sollte immer konservativ berechnet werden, wobei Taker-Gebühren und Partial-Fill-Wahrscheinlichkeit ausdrücklich modelliert werden.

Häufig gestellte Fragen

Wie modelliere ich die Partial-Fill-Wahrscheinlichkeit für größere Orders?

Beginnen Sie mit empirischen Fill-Raten für die Größe, die Sie handeln. Für kleine Inkremente verwenden Sie Bernoulli-Annahmen pro Slice; für größere Größen modellieren Sie Fills als Binomialsumme über Preisstufen oder verwenden historische Depth-of-Book-Daten, um deterministisch zu slicen. Gehen Sie stets konservativ bei der Schätzung von r_i vor.

Welche Gebühren sollte ich in die EV-Berechnung einbeziehen?

Schließen Sie Taker-Gebühren für ausgeführte Legs ein — Polymarket's Taker-Gebühren variieren derzeit je nach Kategorie zwischen 0% und 1.8%; Maker-Gebühren sind null. Modellieren Sie Gebühren als fee_rate × executed_cost und teilen Sie executed_cost in Maker-/Taker-Anteile, falls relevant.

Muss ich UMA-Streitigkeiten in EV berücksichtigen?

Ja. UMA-Streitigkeiten können die Abwicklung pausieren oder den Zeitablauf ändern. Schließen Sie einen P_redeem-Faktor ≤ 1.0 ein, um Streitwahrscheinlichkeit und erwartete Zeit-/Kostenwirkungen verzögerter Abwicklung abzubilden.

Kann ich den Rest-Unwind-Verlust ignorieren, wenn ich später rebalancen möchte?

Nein. Restpositionen tragen Markt- und Richtungsrisiko. Schließen Sie einen konservativen Unwind-Preis (p_unwind) in Ihr EV-Modell ein, es sei denn, Sie haben einen dokumentierten, statistisch gerechtfertigten Plan zum Rebalancen mit bekannten Kosten.

Ist die nominale Edge dasselbe wie EV?

Nein. Nominale Edge = 1.00 − Σ bestAsk_i. EV passt diese Edge für Taker-Gebühren, Partial-Fill-Wahrscheinlichkeit, Rest-Unwind-Verlust und Settlement-/Streit-Risiko an. Verwenden Sie EV zur Entscheidungsfindung.

Erwähnte Begriffe

Verwandte Anleitungen

Nur zu Bildungszwecken. Keine Finanz-, Rechts- oder Steuerberatung. Polymarket ist möglicherweise in Ihrer Rechtsordnung nicht verfügbar.