How Krok Odds calculates edge
Open documentation of every input, devig method and formula. No black-box claims.
Data sources
| Source | Region | Use | Refresh |
|---|---|---|---|
| AU corporate price feed | au | Collected prices across 100+ AU corporate books plus the licensed exchange. Used as the primary AU-facing market. | 60–120s for in-play; 300–600s for pre-match |
| International sharp reference | intl | Collected sharp-side reference used to define the "true" line for +EV detection and arbitrage validation. | 120–300s |
| Exchange depth feed | au | Lay-side and exchange depth used to refine true probability where AU corporate margin is thick. | 30–60s |
| Stats & results feed | global | Collected player + team statistical history for player-props baselines, settlement and historical tracking. | Daily backfill + on-event hooks |
Core formulas
- Implied probability (per outcome)
p_implied = 1 / decimal_odds - Devigged true probability (proportional)
p_true(i) = p_implied(i) / Σ p_implied(j) - Expected value % (vs sharp line)
EV% = (p_true × (decimal_odds − 1) − (1 − p_true)) × 100 - Arbitrage detection
arb if Σ (1 / best_decimal_odds_i) < 1.00 - Quarter-Kelly stake fraction
f* = 0.25 × ((p × (O − 1) − (1 − p)) / (O − 1)) - Closing line value (CLV)
CLV% = (true_prob_at_close × take_odds − 1) × 100
What we will not do
- Fabricate true probability. If no sharp baseline exists, EV % is hidden — not estimated.
- Inflate edges with stale prices. Markets older than 10 minutes from event start are flagged stale; older than 24h are excluded.
- Cherry-pick history. Track-record buckets need ≥5 settled decisions before they display.
- Hide a losing model. Wins, losses and pushes are tracked publicly per sport with bucketed confidence breakdowns.
FAQ
What defines the "sharp line" Krok Odds uses for EV calculations?
Our sharp baseline is built from the lowest-margin, highest-volume international sharp markets — operators that take sharp action without aggressive limiting and price markets close to true probability. When that baseline is unavailable for a market (e.g. AU racing), we fall back to a blended baseline of the licensed exchange (post-commission) and the median of the two sharpest international markets we collect.
How does Krok Odds remove the bookmaker margin (devig)?
For 2-way and 3-way markets we use the proportional devigging method: each implied probability is divided by the sum of all implied probabilities. For player props and longshot markets we apply Shin-method devigging to better handle favourite-longshot bias.
Why use the licensed exchange as a baseline at all?
A licensed back/lay exchange is the closest AU-accessible analogue to a true probability market — matching plus a small commission means displayed prices reflect crowd consensus rather than bookmaker margin. We always apply the 5–6.5% commission haircut when treating exchange prices as a baseline.
How often does Krok Odds refresh odds?
AU corporate bookmaker odds refresh every 60–300 seconds depending on event proximity. In-play markets refresh every 30–60 seconds. Closing-line capture runs in the final minute before kickoff to enable CLV analysis post-event.
What happens when a sharp baseline is unavailable?
If neither a sharp market nor the licensed exchange covers a market (e.g. niche racing) we mark the market as "no sharp baseline" rather than fabricate one. EV % is hidden and arbitrage detection falls back to pure cross-book line shopping.
How does Krok Odds handle settlement and reconciliation?
Bet results are settled against official match data within minutes of event completion. Player-prop settlement uses official stat lines; discrepancies are flagged and held for manual review rather than auto-settled.
What is the limitation period for tracked bets?
CLV and ROI tracking retain individual bet records for 24 months. Aggregate model performance (win rate by sport, by confidence bucket) is retained indefinitely.
See it in action
Every formula above is wired into the free Krok Odds tools and the live scanners.