betting_combat.domain.card
A UFC fight as Kalshi lists it, and the rules that derive one from Kalshi’s markets.
A fight is an event on the winner series (KXUFCFIGHT-26SEP26BELEDW) with
exactly two markets, one per fighter. Research convention: the market whose
ticker sorts first is fighter A. The optional goes-the-distance market lives on
the sibling event (KXUFCDISTANCE-26SEP26BELEDW), ticker suffix -DIST; the
side markets that pay on a decision live on the method-of-victory, method-of-finish
and victory-round siblings (KXUFCMOV-…, KXUFCMOF-…, KXUFCVICROUND-…).
Classes
Fight
One fight. Its id is the Kalshi winner event; ticker_a/ticker_b/
distance_ticker are its Kalshi (reference) markets, side_tickers the
side markets found on the day ((role, ticker) pairs).
kalshi_listings
kalshi_listings() -> list[Listing]Functions
card_date_from_ticker
card_date_from_ticker(ticker: str) -> dt.dateThe card date in a Kalshi event or market ticker: KXUFCFIGHT-26SEP26… → 2026-09-26.
card_id_for
card_id_for(league: str, card_date: dt.date) -> strdate_code
date_code(card_date: dt.date) -> strdistance_event
distance_event(event_ticker: str) -> strThe goes-the-distance sibling of a winner event.
event_type_from_competition
event_type_from_competition(competition: str | None) -> EventTypeKalshi’s card label (product_metadata.competition, recorded 2026-09-26):
a number (‘331’) is a numbered card; ‘Fight Night’ a fight night; the
Contender Series and other named series are ‘other’; events from before
Kalshi labelled cards say just ‘MMA’ and are ‘unknown’.
sibling_event
sibling_event(event_ticker: str, series: str) -> strThe same fight’s event on another Kalshi series.