Skip to content

calculations.matches_18_strat_bet

Final betting-strategy step: turn the predicted winner into an actual bet sizing decision (fractional Kelly capped at 5%) and resolve P/L against the actual score.

flowchart LR
m17[/matches_17_strat_predicted/] --> me[/calculations.matches_18_strat_bet/]
m16[/matches_16_strat_kelly_criterion/] --> me
m1[/matches_1_odds_prematch/] --> me
me --> mart[/mart.matches/]
click m17 "/calculations/matches_17_strat_predicted/" "Open"
click m16 "/calculations/matches_16_strat_kelly_criterion/" "Open"
click m1 "/calculations/matches_1_odds_prematch/" "Open"
click mart "/mart/matches/" "Open"
ColumnDescriptionFormula
event_idBet365 event identifier.p.event_id
event_dateEvent date.p.event_date
event_partition_keyClickHouse partition key.p.event_partition_key
strat_bet_percentageStake as a fraction of bankroll. Quarter-Kelly capped at 5%.round(case when strat_predicted_winner = 'none' then 0 else least(kc.strat_kelly_criterion_<side> * 0.25, 0.05) end, 4)
strat_bet_win_flag1 if strat_predicted_winner = strat_actual_winner, 0 otherwise.case when strat_actual_winner is null then null when strat_predicted_winner = 'none' then null when strat_predicted_winner = strat_actual_winner then 1 else 0 end
strat_bet_gross_profitGross P/L if you’d bet a full Kelly stake at the prematch odd.round(case when win → kelly_<side> * (odds_<side> - 1) when lose → -kelly_<side> end, 4)
strat_bet_net_profitNet P/L after a 5% commission on winning bets.same as gross but winning leg is multiplied by 0.95
strat_bet_edgeModel edge over the bookmaker.round(strat_predicted_winner_prob - strat_predicted_winner_implied_prob, 4)