Overview
All markets are per-round, single-outcome (Yes/No) propositions. Theodds field represents the coefficient for “Yes” (the event will happen). If it doesn’t happen, the bet is lost.
Every market carries human-readable descriptions in both English (
textEN) and Russian (textRU) directly in the XML message. This is the primary integration method — no catalogue look-up required.For programmatic market naming, call GET /cs2/v1/markets/active (or GET /cs2/v1/matches/{id}/markets) — each offer carries the same human-readable descriptions plus a specifiers field for variables like {round}, {player} (player-scoped markets) and {competitor} (team-scoped economy markets).Opening Kill Markets
Weapon Kill Markets
Highlight Kill Markets
Multi-Kill Markets
Round Dynamics Markets
Bomb Event Markets
Economy Markets
Economy markets (
eco_upset, eco_frags, force_buy_win) are team-scoped: they use the {competitor} template variable and the live specifiers carry competitor=<team> (e.g. competitor=Navi). The {player} / player= key is reserved for player-scoped markets (player_opening, awp_player_kill, star_multi_kill). The catalog declares the matching <specifier name="competitor" type="variable_text"/> for these markets, so substitute the competitor value into the {competitor} token.Player Performance Markets
Utility Markets
Novelty Markets
Market Tiers
Markets are categorized into tiers that affect generation frequency and thefeatured_score:
The
featured_score (0.0–1.0) is a composite score computed from six weighted criteria: context relevance (30%), clarity (20%), odds attractiveness (20%), pricing confidence (15%), commercial appeal (10%), and novelty (5%). Core-tier markets receive a bonus. The feed uses this score to select the top 3 markets per round and emits them in timing order (earliest-resolving first) — see Market Ordering.