Polymarket Bot Tutorial · Rozdział 11 z 32

Jak działają rynki NegRisk z wieloma wynikami na Polymarket: mechanika sum-to-1, flaga negRisk w zleceniach CLOB, dlaczego legi YES w ramach NegRisk nie są wymienne oraz najlepsze praktyki egzekucji.

Co obejmuje ten rozdział

Rynki NegRisk to mechanizm Polymarket dla wzajemnie wykluczających się wydarzeń z wieloma wynikami — kandydaci w wyborach 2024, zwycięzca Premier League, drabinki turniejowe. Większość botów nie obsługuje ich poprawnie przy pierwszej próbie, ponieważ składanie zlecenia wymaga flagi, która po cichu jest pomijana, jeśli jej zabraknie. Ten rozdział omawia mechanikę oraz produkcyjny path kodu.

To jest rozdział 11 z naszej 32-częściowej serii o budowie Polymarket trading bota. Temat omawiamy szczegółowo w sekcjach poniżej. Treść główna dla każdej sekcji jest pisana i publikowana rozdział po rozdziale; odpowiedzi w FAQ oraz referencje są już gotowe i odzwierciedlają doświadczenie produkcyjne z uruchamiania naszego własnego tradera.

  • Co oznacza NegRisk (wzajemnie wykluczające się legi Yes]
  • Dlaczego suma YES pozostaje blisko 1 USD
  • Parametr neg_risk przy składaniu zlecenia
  • Hedging między legami NegRisk
  • Kiedy arb na NegRisk działa (a kiedy nie)
  • Edge cases przy rozliczeniu
  • Kod: złożenie zlecenia NegRisk

Co oznacza NegRisk (wzajemnie wykluczające się legi Yes]

NegRisk (skrót od "negative risk") to mechanizm Polymarket dla wydarzeń z wieloma wzajemnie wykluczającymi się wynikami — tylko jeden może rozliczyć się jako YES. Wybory prezydenckie 2024 były wydarzeniem z NegRisk: pozycja Trump-YES i pozycja Harris-YES nie mogą obie wypłacić.

Pod maską: pojedyncze wydarzenie NegRisk ma jeden nadrzędny question_id i N podrzędnych marketów, każdy z własnym YES/NO. Exchange wymusza sum-to-1 wśród legów YES przy rozliczeniu — dokładnie jeden rozlicza się na 1.0, a pozostałe na 0.0.

Z perspektywy bota leg YES każdego wyniku handluje jak osobny token, z własnym bookiem i ceną. Flaga negRisk w składaniu zlecenia (poniżej) kieruje trade do kontraktu exchange właściwego dla NegRisk; brak flagi wysyła zlecenie do standardowego exchange CTF i cicho powoduje nieprawidłowe rozliczenie.

Dlaczego suma YES pozostaje blisko 1 USD

Arbitrażyści stale utrzymują sumę cen YES across wszystkich legów NegRisk w pobliżu ≈ 1.0. Jeśli Trump-YES kosztuje 0.55, Harris-YES 0.40, a nie ma innych poważnych kandydatów, brakujące 0.05 to w przybliżeniu implikowane prawdopodobieństwo "jakiegokolwiek innego wyniku". Gdy brakująca część przekracza implikowane prawdopodobieństwo ogona, pojawia się okazja arbitrażowa: kup wszystkie legi YES proporcjonalnie, suma jest niższa niż 1.0, zatrzymaj różnicę.

W praktyce arb jest konkurencyjny — widoczny dyskont to zwykle 1-2 centy na płynnych wydarzeniach i znika w ciągu minut od otwarcia. Arb jest też ograniczony płynnością: możesz zablokować $1k dyskonta, ale nie $20k.

Większość botów nie robi arbitrażu NegRisk; handlują one pojedynczymi legami i potrzebują flagi negRisk wyłącznie dla poprawności egzekucji.

Parametr neg_risk przy składaniu zlecenia

W CLOB v2 SDK składanie zlecenia przyjmuje obiekt flags z booleanem negRisk. Wartość musi odpowiadać typowi marketu:

// Node (CLOB v2)
await client.createAndPostOrder(
  { tokenID, price: 0.45, size: 10, side: Side.BUY },
  { tickSize: '0.01', negRisk: true },   // <-- TRUE for NegRisk
  OrderType.FOK
);

Flaga jest też parametrem w sygnaturze daemon op, z której korzysta większość produkcyjnych botów:

{ op: 'buy', tokenID, price, size, neg_risk: true, order_type: 'FOK' }

Źródło prawdy: market.negRisk z Gamma API. Zawsze to odczytuj; nigdy nie hardkoduj. Market BTC up/down ma negRisk: false (binary); market zwycięzcy turnieju ma negRisk: true (multi-outcome). Pomylenie tych wartości wysyła zlecenia do złego exchange i powoduje błędy transferu przy rozliczeniu.

Hedging między legami NegRisk

Jeśli trzymasz Trump-YES po 0.50 i chcesz zabezpieczyć się przed porażką Trumpa, w ramach NegRisk masz dwie opcje.

Kup konkurencyjny leg NO (np. Harris-NO po 0.45). To wypłaca, jeśli Harris przegra, co obejmuje zwycięstwo Trumpa. Asymetryczne — wypłata, gdy Trump wygrywa, ale bezwartościowe, jeśli Trump przegrywa z trzecim kandydatem.

Kup wszystkie konkurencyjne legi YES proporcjonalnie. Jeśli Twój portfel jest w pełni zbalansowany across legi NegRisk, ekspozycja jest zabezpieczona: dokładnie jeden leg wypłaci. To jest pozycja syntetycznej gotówki.

Instrument hedgingowy, który NIE działa zgodnie z oczekiwaniami: leg NO na Twoim istniejącym marketcie. Trump-NO jest skorelowany z innymi legami YES, ale nie idealnie — jeśli rozliczenie to "Other", zarówno Trump-YES, jak i Trump-NO spadają do 0. Legi NegRisk nie są czystymi binarnymi instrumentami.

Kiedy arb na NegRisk działa (a kiedy nie)

Arb NegRisk typu "suma mniejsza niż 1.0" działa, gdy spełnione są trzy warunki.

  1. Wszystkie legi płynne: każdy leg, który musisz kupić, ma co najmniej $1k depth po cenie, której potrzebujesz. Arb wymaga jednoczesnego wejścia w kilka booków; jeden mało płynny leg psuje całą transakcję.
  2. Spread wystarczająco ciasny: łączny spread-tax across wszystkich legów musi być mniejszy niż dyskonto. Pięć legów ze spreadem 0.5c każdy to 2.5c kosztu; jeśli dyskonto wynosi 1.5c, arb jest ujemny.
  3. Możesz trzymać do rozliczenia: arb NegRisk to settlement arb. Otrzymujesz wypłatę, gdy nadrzędne wydarzenie zostanie rozliczone; jeśli to za 6 miesięcy, Twój kapitał jest zamrożony.

Dla 95% botów arb NegRisk nie jest strategią. Pozostałe strategie handlują pojedynczymi legami, a flaga negRisk istnieje tylko po to, aby zlecenie zostało poprawnie skierowane.

Edge cases przy rozliczeniu

Dwa edge cases, o których trzeba pamiętać, trzymając pozycje NegRisk do rozliczenia.

Wyniki "None of the above": niektóre wydarzenia NegRisk zawierają jawny leg "Other" lub "None of the above". Jeśli rzeczywista odpowiedź nie pasuje do żadnego nazwanego legu, to on wygrywa. Boty, które nie modelują jawnego legu Other, czasem traktują go jako przypadek degeneracyjny i tracą wypłatę.

Sporne rozliczenia: rozliczenie NegRisk przechodzi przez UMA jak każdy inny market. Jeśli jest sporne, market może pozostać nierozliczony przez 24-72 godziny. W tym oknie front-end może pokazywać "resolved", podczas gdy on-chain payouts jeszcze nie są ustawione. Odczyt payoutNumerators z kontraktu CTF to jedyny bezpieczny sposób potwierdzenia.

Kod: złożenie zlecenia NegRisk

Pełny przykład Node składający zakup legu YES w NegRisk.

import { ClobClient, Side, OrderType } from "@polymarket/clob-client-v2";
import { Wallet } from "ethers";

const c = new ClobClient({
  host: "https://clob.polymarket.com", chain: 137,
  signer: new Wallet(process.env.PRIVATE_KEY),
  creds: { key: K, secret: S, passphrase: P },
  signatureType: 2,
  funderAddress: process.env.POLY_FUNDER,
});

// market.negRisk === true (verified via Gamma earlier)
const resp = await c.createAndPostOrder(
  { tokenID: "<YES_TOKEN_ID>", price: 0.42, size: 25, side: Side.BUY },
  { tickSize: "0.01", negRisk: true },
  OrderType.FOK
);
console.log(resp.status, resp.orderID);

Najczęstszy błąd nowych builderów: pominięcie negRisk: true na marketcie NegRisk. Zlecenie zostaje przyjęte przez CLOB, ale rozliczenie kończy się niepowodzeniem. Zawsze czytaj market.negRisk z Gamma i przekazuj tę wartość dalej; nigdy nie zgaduj na podstawie tytułu pytania.

Najczęściej zadawane pytania

Czym jest market NegRisk na Polymarket?
To market z wieloma wynikami, w którym legi YES wzajemnie się wykluczają (tylko jeden może rozliczyć się jako YES). Suma wszystkich cen YES pozostaje blisko 1 USD, ponieważ dokładnie jeden wynik wygrywa. Przykłady: "2026 NBA Champion" (wygrywa jedna drużyna), "Next Fed chair" (jedna osoba).
Czy muszę ustawić flagę w zleceniu, aby handlować NegRisk?
Tak. Requesty zleceń dla marketów NegRisk muszą zawierać neg_risk: true (Python: przekazuj do OrderArgs; Node: przekazuj w CreateOrderOptions). Zapomnienie o fladze skutkuje odrzuconym zleceniem albo, co gorsza, zleceniem umieszczonym na złym order booku. Trafiliśmy dokładnie na ten bug w produkcji - commit 06deaef w historii naszego tradera.
Czy mogę arbitrażować legi NegRisk, które sumują się do mniej niż 1?
Tak - jeśli wszystkie legi YES sumują się do mniej niż 1.00 netto po fees, kupno każdego legu blokuje gwarantowany profit. Ten arbitraż jest realny, ale niezwykle rzadki i jest zgarniany w ciągu sekund przez szybsze boty. Traktuj go jako ciekawostkę, nie strategię.
Jak rozliczany jest market NegRisk?
Takim samym procesem UMA optimistic oracle jak każdy inny market Polymarket. Wygrywający leg wypłaca 1 USD za share, wszystkie przegrywające legi wypłacają 0. Rozliczenie zwykle zamyka całe wydarzenie NegRisk naraz.
Czy opłaty w NegRisk różnią się od marketów binarnych?
Taki sam fee schedule jak dla binary - 0% maker, 0.75-1.80% taker w zależności od kategorii. Maker rebate również obowiązuje. Jedyna praktyczna różnica to to, że zamiast 1 musisz zarządzać N order books.
Czy mogę zabezpieczyć pozycję YES, kupując inne legi NegRisk?
Tak - to hedging właściwy dla NegRisk. Jeśli jesteś long na jednym legu i chcesz zablokować bieżący PnL, kup pozostałe legi proporcjonalnie. Net cost powinien wynosić (1 - cena Twojego legu YES), z uwzględnieniem fees. Nie polecamy tego jako strategii podstawowej, ponieważ fees zwykle zjadają przewagę hedgingu.