{
  "date": "2026-04-04",
  "generated": "2026-04-04T11:36:26",
  "model_version": "2.5",
  "analyses": [
    {
      "match": "Real Sociedad San Sebastian vs Levante UD",
      "sport": "football",
      "ligue": "La Liga",
      "heure": "12:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "58%",
        "nul": "22%",
        "victoire_exterieur": "19%",
        "over_25": "51%",
        "btts": "46%"
      },
      "cote_indicative": {
        "domicile": 1.6,
        "nul": 4.1,
        "exterieur": 5.2
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Standard La Liga match. Real Sociedad home favorites vs likely lower-table Levante.",
      "stats_comparatives": null
    },
    {
      "match": "RCD Mallorca vs Real Madrid",
      "sport": "football",
      "ligue": "La Liga",
      "heure": "14:15",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "16%",
        "nul": "20%",
        "victoire_exterieur": "64%",
        "over_25": "50%",
        "btts": "45%"
      },
      "cote_indicative": {
        "domicile": 5.4,
        "nul": 4.4,
        "exterieur": 1.54
      },
      "total_estime": "2.5 buts",
      "raisonnement": "RM 2nd (69pts), 5-win streak. Mallorca 18th, 1W in 7 games, relegation fight. Valverde SUSPENDED (red card derby). Vinicius may rest (CL QF vs Bayern). RM squad called up but rotation likely.",
      "stats_comparatives": null
    },
    {
      "match": "Real Betis Seville vs Espanyol Barcelona",
      "sport": "football",
      "ligue": "La Liga",
      "heure": "16:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "56%",
        "nul": "24%",
        "victoire_exterieur": "20%",
        "over_25": "51%",
        "btts": "46%"
      },
      "cote_indicative": {
        "domicile": 1.69,
        "nul": 3.8,
        "exterieur": 4.8
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Betis home, mid-table. Espanyol fighting relegation.",
      "stats_comparatives": null
    },
    {
      "match": "Atletico Madrid vs FC Barcelona",
      "sport": "football",
      "ligue": "La Liga",
      "heure": "19:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge positif brut mais Kelly negatif apres shrinkage 65/35 (p_finale 47% < 1/2.12=47.2%). Chaos 2 (5 absences Atletico + 3 Barca). NO BET discipline.",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "29%",
        "nul": "24%",
        "victoire_exterieur": "47%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 3.0,
        "nul": 3.85,
        "exterieur": 2.12
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Barca 1st (73pts), 5 wins consec, 8 unbeaten. Atletico 4th, lost 3-2 derby. MASSIVE injuries Atletico: Oblak (GK, muscle), Sorloth (head), Barrios (thigh), Mendoza (ankle), Pubill (rib). SUSPENDED: Llorente, Cardoso. Barca: Raphinha (hamstring, out until May), Kounde (hamstring), De Jong (hamstring). First of 3 meetings in 10 days. Barca won reverse fixture 3-1. Copa del Rey legs: ATM 4-0 then Barca 3-0.",
      "stats_comparatives": null
    },
    {
      "match": "Strasbourg Alsace vs OGC Nice",
      "sport": "football",
      "ligue": "Ligue 1",
      "heure": "15:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "50%",
        "nul": "26%",
        "victoire_exterieur": "25%",
        "over_25": "50%",
        "btts": "45%"
      },
      "cote_indicative": {
        "domicile": 1.91,
        "nul": 3.55,
        "exterieur": 3.85
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Standard Ligue 1 match.",
      "stats_comparatives": null
    },
    {
      "match": "Stade Brest 29 vs Stade Rennais FC",
      "sport": "football",
      "ligue": "Ligue 1",
      "heure": "17:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "donnees DQ-B",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "32%",
        "nul": "28%",
        "victoire_exterieur": "40%",
        "over_25": "48%",
        "btts": "43%"
      },
      "cote_indicative": {
        "domicile": 3.0,
        "nul": 3.35,
        "exterieur": 2.3
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Ligue 1 mid-table clash.",
      "stats_comparatives": null
    },
    {
      "match": "Lille OSC vs Racing Club De Lens",
      "sport": "football",
      "ligue": "Ligue 1",
      "heure": "19:05",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "chaos eleve",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "32%",
        "nul": "28%",
        "victoire_exterieur": "39%",
        "over_25": "48%",
        "btts": "43%"
      },
      "cote_indicative": {
        "domicile": 2.88,
        "nul": 3.25,
        "exterieur": 2.44
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Derby du Nord. Lens 2nd (59pts), title contender, won 5-1 vs Angers. Lille 5th, 12pts behind, unbeaten in 7 but 1W in 5 home. Lens won last meeting 3-0. Derby factor = unpredictable.",
      "stats_comparatives": null
    },
    {
      "match": "Bayer Leverkusen vs VFL Wolfsburg",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": true,
      "raison_no_bet": null,
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_domicile": "62%",
        "nul": "21%",
        "victoire_exterieur": "17%",
        "over_25": "52%",
        "btts": "47%"
      },
      "cote_indicative": {
        "domicile": 1.41,
        "nul": 4.9,
        "exterieur": 6.6
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Leverkusen 6th (46pts), 4 CONSECUTIVE DRAWS. 13W-7D-7L on season. Wolfsburg mid-table. Leverkusen score 1.93/game, concede 1.33. Recent draws suggest form dip or inability to close out games.",
      "stats_comparatives": null
    },
    {
      "match": "SC Freiburg vs Bayern Munich",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": true,
      "raison_no_bet": null,
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_domicile": "20%",
        "nul": "20%",
        "victoire_exterieur": "61%",
        "over_25": "50%",
        "btts": "45%"
      },
      "cote_indicative": {
        "domicile": 6.0,
        "nul": 4.9,
        "exterieur": 1.44
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Bayern 1st (70pts), 12 unbeaten, 97 goals. BUT Harry Kane OUT (injury with England), Alphonso Davies OUT (hamstring), Nicolas Jackson SUSPENDED. Freiburg 8th (37pts), won 2 in a row. Freiburg haven't beaten Bayern in 6. Bayern's last visit: 6-2 win. Without Kane (top scorer), attack significantly weakened.",
      "stats_comparatives": null
    },
    {
      "match": "Werder Bremen vs RB Leipzig",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "27%",
        "nul": "25%",
        "victoire_exterieur": "49%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 3.6,
        "nul": 3.85,
        "exterieur": 1.89
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Leipzig 4th-5th (50pts). Standard Bundesliga match.",
      "stats_comparatives": null
    },
    {
      "match": "Borussia Monchengladbach vs 1. FC Heidenheim",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "59%",
        "nul": "22%",
        "victoire_exterieur": "20%",
        "over_25": "51%",
        "btts": "46%"
      },
      "cote_indicative": {
        "domicile": 1.58,
        "nul": 4.4,
        "exterieur": 4.9
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Gladbach home favorites. Heidenheim lower table.",
      "stats_comparatives": null
    },
    {
      "match": "TSG Hoffenheim vs FSV Mainz",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "55%",
        "nul": "24%",
        "victoire_exterieur": "21%",
        "over_25": "51%",
        "btts": "46%"
      },
      "cote_indicative": {
        "domicile": 1.73,
        "nul": 4.0,
        "exterieur": 4.3
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Hoffenheim 5th (50pts). Mainz mid-table.",
      "stats_comparatives": null
    },
    {
      "match": "Hamburger SV vs FC Augsburg",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "13:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "donnees DQ-B",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "42%",
        "nul": "28%",
        "victoire_exterieur": "30%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.28,
        "nul": 3.35,
        "exterieur": 3.05
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Close match. Hamburg and Augsburg mid/lower table.",
      "stats_comparatives": null
    },
    {
      "match": "VfB Stuttgart vs Borussia Dortmund",
      "sport": "football",
      "ligue": "Bundesliga",
      "heure": "16:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "42%",
        "nul": "26%",
        "victoire_exterieur": "32%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.24,
        "nul": 3.8,
        "exterieur": 2.82
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Stuttgart 3rd (53pts) unbeaten in 6, won 5-2 at Augsburg. Dortmund 2nd (61pts), came from 2-0 down to beat Hamburg 3-2. Title race clash. Last meeting 3-3 draw. Stuttgart at home should be competitive.",
      "stats_comparatives": null
    },
    {
      "match": "Sassuolo Calcio vs Cagliari Calcio",
      "sport": "football",
      "ligue": "Serie A",
      "heure": "13:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "47%",
        "nul": "28%",
        "victoire_exterieur": "25%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.04,
        "nul": 3.05,
        "exterieur": 4.1
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Serie A mid-table match.",
      "stats_comparatives": null
    },
    {
      "match": "Hellas Verona vs ACF Fiorentina",
      "sport": "football",
      "ligue": "Serie A",
      "heure": "16:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "chaos eleve",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "27%",
        "nul": "29%",
        "victoire_exterieur": "45%",
        "over_25": "48%",
        "btts": "43%"
      },
      "cote_indicative": {
        "domicile": 3.95,
        "nul": 3.1,
        "exterieur": 2.04
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Fiorentina in TERRIBLE form, 16th place! Only scoring 1.33/game, conceded 44 goals. Verona mid-table. Despite Fiorentina being away favorites on paper, their form is alarming.",
      "stats_comparatives": null
    },
    {
      "match": "Lazio Rome vs Parma Calcio",
      "sport": "football",
      "ligue": "Serie A",
      "heure": "18:45",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "donnees DQ-B",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "52%",
        "nul": "26%",
        "victoire_exterieur": "23%",
        "over_25": "50%",
        "btts": "45%"
      },
      "cote_indicative": {
        "domicile": 1.84,
        "nul": 3.25,
        "exterieur": 4.7
      },
      "total_estime": "2.5 buts",
      "raisonnement": "Lazio home, avg 1.03 goals/game this season. Parma mid/lower table.",
      "stats_comparatives": null
    },
    {
      "match": "PSV Eindhoven vs FC Utrecht",
      "sport": "football",
      "ligue": "Eredivisie",
      "heure": "14:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "65%",
        "nul": "20%",
        "victoire_exterieur": "15%",
        "over_25": "52%",
        "btts": "47%"
      },
      "cote_indicative": {
        "domicile": 1.44,
        "nul": 4.4,
        "exterieur": 6.0
      },
      "total_estime": "2.3 buts",
      "raisonnement": "PSV traditionally dominant at home.",
      "stats_comparatives": null
    },
    {
      "match": "AZ Alkmaar vs Fortuna Sittard",
      "sport": "football",
      "ligue": "Eredivisie",
      "heure": "16:45",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "72%",
        "nul": "16%",
        "victoire_exterieur": "12%",
        "over_25": "54%",
        "btts": "49%"
      },
      "cote_indicative": {
        "domicile": 1.28,
        "nul": 5.4,
        "exterieur": 8.4
      },
      "total_estime": "2.3 buts",
      "raisonnement": "AZ massive home favorites.",
      "stats_comparatives": null
    },
    {
      "match": "SC Telstar vs FC Groningen",
      "sport": "football",
      "ligue": "Eredivisie",
      "heure": "16:45",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "37%",
        "nul": "27%",
        "victoire_exterieur": "36%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.56,
        "nul": 3.6,
        "exterieur": 2.38
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Close Eredivisie match.",
      "stats_comparatives": null
    },
    {
      "match": "Excelsior Rotterdam vs NEC Nijmegen",
      "sport": "football",
      "ligue": "Eredivisie",
      "heure": "19:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "28%",
        "nul": "25%",
        "victoire_exterieur": "47%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 3.35,
        "nul": 3.75,
        "exterieur": 1.92
      },
      "total_estime": "2.3 buts",
      "raisonnement": "NEC slight favorites away.",
      "stats_comparatives": null
    },
    {
      "match": "Ajax Amsterdam vs FC Twente Enschede",
      "sport": "football",
      "ligue": "Eredivisie",
      "heure": "19:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "43%",
        "nul": "26%",
        "victoire_exterieur": "31%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.22,
        "nul": 3.55,
        "exterieur": 2.8
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Ajax at home. Competitive Eredivisie match.",
      "stats_comparatives": null
    },
    {
      "match": "Nacional da Madeira vs Estrela Amadora",
      "sport": "football",
      "ligue": "Liga Portugal",
      "heure": "14:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "46%",
        "nul": "27%",
        "victoire_exterieur": "27%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 2.02,
        "nul": 3.4,
        "exterieur": 3.45
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Liga Portugal match.",
      "stats_comparatives": null
    },
    {
      "match": "Rio Ave FC vs FC Alverca SAD",
      "sport": "football",
      "ligue": "Liga Portugal",
      "heure": "17:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "37%",
        "nul": "28%",
        "victoire_exterieur": "35%",
        "over_25": "48%",
        "btts": "43%"
      },
      "cote_indicative": {
        "domicile": 2.74,
        "nul": 3.2,
        "exterieur": 2.54
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Liga Portugal mid-table clash.",
      "stats_comparatives": null
    },
    {
      "match": "Moreirense FC vs SC Braga",
      "sport": "football",
      "ligue": "Liga Portugal",
      "heure": "17:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "donnees DQ-B",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "15%",
        "nul": "22%",
        "victoire_exterieur": "63%",
        "over_25": "49%",
        "btts": "44%"
      },
      "cote_indicative": {
        "domicile": 6.6,
        "nul": 4.0,
        "exterieur": 1.48
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Braga strong favorites away.",
      "stats_comparatives": null
    },
    {
      "match": "FC Porto vs FC Famalicao",
      "sport": "football",
      "ligue": "Liga Portugal",
      "heure": "19:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "edge insuffisant apres shrinkage",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "65%",
        "nul": "21%",
        "victoire_exterieur": "14%",
        "over_25": "52%",
        "btts": "47%"
      },
      "cote_indicative": {
        "domicile": 1.42,
        "nul": 4.2,
        "exterieur": 7.2
      },
      "total_estime": "2.3 buts",
      "raisonnement": "Porto strong home favorites.",
      "stats_comparatives": null
    },
    {
      "match": "Miami Heat vs Washington Wizards",
      "sport": "basketball",
      "ligue": "NBA",
      "heure": "19:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "NBA mode controle: edge max 1.0% < seuil 8%",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "92%",
        "victoire_exterieur": "8%",
        "over_total": "50%"
      },
      "cote_indicative": {
        "domicile": 1.04,
        "exterieur": 11.0
      },
      "total_estime": "240 pts",
      "raisonnement": "Heat massive favorites. Wizards tanking. Herro probable (foot soreness), Powell OUT (illness). Blowout expected, starters may sit 4th quarter reducing total.",
      "stats_comparatives": null
    },
    {
      "match": "Denver Nuggets vs San Antonio Spurs",
      "sport": "basketball",
      "ligue": "NBA",
      "heure": "19:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "NBA mode controle: edge max 0.1% < seuil 8%",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_domicile": "45%",
        "victoire_exterieur": "55%",
        "over_total": "50%"
      },
      "cote_indicative": {
        "domicile": 2.12,
        "exterieur": 1.72
      },
      "total_estime": "237 pts",
      "raisonnement": "Spurs 2nd West (59-18), 11-game win streak! Wembanyama 24.7ppg. Nuggets 49-28, Jokic 13rpg, Murray 25.6ppg. Nuggets: Hardaway Jr probable (knee), Watson/Jones/Nnaji OUT. Wembanyama questionable.",
      "stats_comparatives": null
    },
    {
      "match": "Philadelphia 76ers vs Detroit Pistons",
      "sport": "basketball",
      "ligue": "NBA",
      "heure": "23:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Chaos 2 >= 2 - NO BET auto NBA",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_domicile": "43%",
        "victoire_exterieur": "57%",
        "over_total": "50%"
      },
      "cote_indicative": {
        "domicile": 2.14,
        "exterieur": 1.71
      },
      "total_estime": "225 pts",
      "raisonnement": "Embiid OUT (illness). 76ers significantly weakened. Pistons favored per odds. Late game (23:00).",
      "stats_comparatives": null
    },
    {
      "match": "Doumbia S / Reboul F vs Bhambri Y / Venus M",
      "sport": "tennis",
      "ligue": "ATP - ATP Bucharest, Romania Men Doubles",
      "heure": "09:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_reboul": "54%",
        "victoire_venus": "46%"
      },
      "cote_indicative": {
        "Reboul F": 1.71,
        "Venus M": 2.04
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "ATP - ATP Bucharest, Romania Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Navone, Mariano vs Van de Zandschulp, Botic",
      "sport": "tennis",
      "ligue": "ATP - ATP Bucharest, Romania Men Singles",
      "heure": "10:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_navone": "60%",
        "victoire_van": "40%",
        "set_Navone": "82%",
        "set_Van de Zandschulp": "67%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Navone": 1.56,
        "Van de Zandschulp": 2.32
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Bucharest SF (clay). Navone H2H 1-0 on clay, #50, good form. VdZ hasn't dropped a set but had tight matches.",
      "stats_comparatives": null
    },
    {
      "match": "Marozsan, Fabian vs Merida, Daniel",
      "sport": "tennis",
      "ligue": "ATP - ATP Bucharest, Romania Men Singles",
      "heure": "12:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_marozsan": "71%",
        "victoire_merida": "29%",
        "set_Marozsan": "88%",
        "set_Merida": "57%"
      },
      "cote_indicative": {
        "Marozsan": 1.33,
        "Merida": 3.1
      },
      "total_estime": "25.0 jeux",
      "raisonnement": "Bucharest SF. Marozsan favored.",
      "stats_comparatives": null
    },
    {
      "match": "Tirante, Thiago Agustin vs Burruchaga, Roman Andres",
      "sport": "tennis",
      "ligue": "ATP - ATP Houston, USA Men Singles",
      "heure": "16:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_tirante": "52%",
        "victoire_burruchaga": "48%",
        "set_Tirante": "76%",
        "set_Burruchaga": "74%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Tirante": 1.81,
        "Burruchaga": 1.91
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "Houston SF (clay). Tirante upset Shelton 6-7 6-3 6-4 in QF. Burruchaga beat Tien 7-5 6-4. Two young Argentine clay-courters. Close match.",
      "stats_comparatives": null
    },
    {
      "match": "Paul, Tommy vs Tiafoe, Frances",
      "sport": "tennis",
      "ligue": "ATP - ATP Houston, USA Men Singles",
      "heure": "17:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_paul": "68%",
        "victoire_tiafoe": "32%",
        "set_Paul": "86%",
        "set_Tiafoe": "61%",
        "over_jeux": "40%"
      },
      "cote_indicative": {
        "Paul": 1.4,
        "Tiafoe": 2.76
      },
      "total_estime": "25.2 jeux",
      "raisonnement": "Houston SF (clay). Paul #12, H2H 3-1, 124-63 career on clay, 2-0 clay 2026. Tiafoe #20, saved MP vs Popyrin in grueling 3-set QF, possible fatigue. Never played each other on clay.",
      "stats_comparatives": null
    },
    {
      "match": "Cash R / Tracy J vs Kirkov V / Stevens B",
      "sport": "tennis",
      "ligue": "ATP - ATP Marrakech, Morocco Men Doubles",
      "heure": "14:20",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_tracy": "53%",
        "victoire_stevens": "47%"
      },
      "cote_indicative": {
        "Tracy J": 1.74,
        "Stevens B": 2.0
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "ATP - ATP Marrakech, Morocco Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Darderi, Luciano vs Hanfmann, Yannick 10:00",
      "sport": "tennis",
      "ligue": "ATP - ATP Marrakech, Morocco Men Singles",
      "heure": "[DQ-C]",
      "dq_flag": "DQ-C",
      "pari_retenu": false,
      "raison_no_bet": "Donnees insuffisantes (DQ-C)",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_darderi": "50%",
        "victoire_hanfmann": "50%"
      },
      "cote_indicative": null,
      "total_estime": "25.5 jeux",
      "raisonnement": "ATP - ATP Marrakech, Morocco Men Singles match.",
      "stats_comparatives": null
    },
    {
      "match": "Darderi, Luciano vs Trungelliti, Marco",
      "sport": "tennis",
      "ligue": "ATP - ATP Marrakech, Morocco Men Singles",
      "heure": "12:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_darderi": "79%",
        "victoire_trungelliti": "21%",
        "set_Darderi": "92%",
        "set_Trungelliti": "49%",
        "over_jeux": "35%"
      },
      "cote_indicative": {
        "Darderi": 1.2,
        "Trungelliti": 4.2
      },
      "total_estime": "24.6 jeux",
      "raisonnement": "Marrakech SF (clay). Darderi #19, defending champion, 8-2 clay 2026, top seed. Trungelliti 36yo journeyman, first top 100 at 36. First meeting.",
      "stats_comparatives": null
    },
    {
      "match": "Jodar, Rafael vs Ugo Carabelli, Camilo",
      "sport": "tennis",
      "ligue": "ATP - ATP Marrakech, Morocco Men Singles",
      "heure": "13:10",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_jodar": "63%",
        "victoire_ugo": "37%",
        "set_Jodar": "83%",
        "set_Ugo Carabelli": "65%"
      },
      "cote_indicative": {
        "Jodar": 1.43,
        "Ugo Carabelli": 2.66
      },
      "total_estime": "25.3 jeux",
      "raisonnement": "Marrakech SF. Jodar favored.",
      "stats_comparatives": null
    },
    {
      "match": "Bonzi, Benjamin vs Bautista Agut, Roberto",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "10:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_bautista": "56%",
        "victoire_bonzi": "44%",
        "set_Bautista Agut": "79%",
        "set_Bonzi": "71%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Bautista Agut": 1.72,
        "Bonzi": 2.02
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "MC qualifying R1 (clay). RBA experienced clay veteran, former top 10. Bonzi French, comfortable on clay. Close match.",
      "stats_comparatives": null
    },
    {
      "match": "Arneodo, Romain vs Comesana, Francisco",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "10:10",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_comesana": "94%",
        "victoire_arneodo": "6%",
        "set_Comesana": "97%",
        "set_Arneodo": "33%"
      },
      "cote_indicative": {
        "Comesana": 1.03,
        "Arneodo": 10.0
      },
      "total_estime": "23.5 jeux",
      "raisonnement": "MC qualifying. Comesana massive favorite vs local wildcard Arneodo.",
      "stats_comparatives": null
    },
    {
      "match": "Buse, Ignacio vs Goffin, David",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "10:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_buse": "78%",
        "victoire_goffin": "22%",
        "set_Buse": "91%",
        "set_Goffin": "51%",
        "over_jeux": "36%"
      },
      "cote_indicative": {
        "Buse": 1.22,
        "Goffin": 3.9
      },
      "total_estime": "24.7 jeux",
      "raisonnement": "MC qualifying (clay). Buse younger player, Goffin veteran past prime at 35 but experienced on clay.",
      "stats_comparatives": null
    },
    {
      "match": "Garin, Cristian vs De Jong, Jesper",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "11:00",
      "dq_flag": "DQ-A",
      "pari_retenu": true,
      "raison_no_bet": null,
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_de": "56%",
        "victoire_garin": "44%",
        "set_De Jong": "79%",
        "set_Garin": "71%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "De Jong": 1.69,
        "Garin": 2.06
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "MC qualifying (clay). Garin former top clay player (Chilean). De Jong rising Dutchman. Close on clay.",
      "stats_comparatives": null
    },
    {
      "match": "Struff, Jan-Lennard vs Basilashvili, Nikoloz",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "11:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_struff": "61%",
        "victoire_basilashvili": "39%",
        "set_Struff": "82%",
        "set_Basilashvili": "66%"
      },
      "cote_indicative": {
        "Struff": 1.58,
        "Basilashvili": 2.26
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "MC qualifying. Struff vs aging Basilashvili.",
      "stats_comparatives": null
    },
    {
      "match": "Shevchenko, Alexander vs Pellegrino, Andrea",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "11:20",
      "dq_flag": "DQ-A",
      "pari_retenu": true,
      "raison_no_bet": null,
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_shevchenko": "58%",
        "victoire_pellegrino": "42%",
        "set_Shevchenko": "80%",
        "set_Pellegrino": "69%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Shevchenko": 1.63,
        "Pellegrino": 2.16
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "MC qualifying (clay). Shevchenko higher-ranked Russian. Pellegrino Italian on home soil.",
      "stats_comparatives": null
    },
    {
      "match": "Maestrelli, Francesco vs Blockx, Alexander",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "11:20",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_blockx": "60%",
        "victoire_maestrelli": "40%",
        "set_Blockx": "82%",
        "set_Maestrelli": "67%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Blockx": 1.55,
        "Maestrelli": 2.32
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "MC qualifying (clay). Blockx favored vs Italian Maestrelli.",
      "stats_comparatives": null
    },
    {
      "match": "Kopriva, Vit vs Arnaldi, Matteo",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "11:40",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_kopriva": "60%",
        "victoire_arnaldi": "40%",
        "set_Kopriva": "82%",
        "set_Arnaldi": "67%"
      },
      "cote_indicative": {
        "Kopriva": 1.52,
        "Arnaldi": 2.4
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "MC qualifying. Arnaldi slight underdog but Italian on clay.",
      "stats_comparatives": null
    },
    {
      "match": "Quinn, Ethan vs Virtanen, Otto",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "12:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_quinn": "63%",
        "victoire_virtanen": "37%",
        "set_Quinn": "84%",
        "set_Virtanen": "65%",
        "over_jeux": "41%"
      },
      "cote_indicative": {
        "Quinn": 1.47,
        "Virtanen": 2.54
      },
      "total_estime": "25.3 jeux",
      "raisonnement": "MC qualifying (clay). Quinn American prospect, favored.",
      "stats_comparatives": null
    },
    {
      "match": "Dzumhur, Damir vs Budkov Kjaer, Nicolai",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "13:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_dzumhur": "54%",
        "victoire_budkov": "46%",
        "set_Dzumhur": "78%",
        "set_Budkov Kjaer": "72%"
      },
      "cote_indicative": {
        "Dzumhur": 1.77,
        "Budkov Kjaer": 1.96
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "MC qualifying. Dzumhur experienced but aging. Budkov Kjaer young Dane.",
      "stats_comparatives": null
    },
    {
      "match": "Choinski, Jan vs Muller, Alexandre",
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": true,
      "raison_no_bet": null,
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_muller": "53%",
        "victoire_choinski": "47%",
        "set_Muller": "77%",
        "set_Choinski": "73%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Muller": 1.8,
        "Choinski": 1.92
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "MC qualifying (clay). Muller slight favorite, French on clay. Very close match.",
      "stats_comparatives": null
    },
    {
      "match": "Duda F / Latinovic S vs Karol M / Sachko V",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Barletta, Italy Men Doubles",
      "heure": "12:35",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_sachko": "58%",
        "victoire_latinovic": "42%"
      },
      "cote_indicative": {
        "Sachko V": 1.59,
        "Latinovic S": 2.2
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Challenger - ATP Challenger Barletta, Italy Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Gill, Felix vs Krumich, Martin",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Barletta, Italy Men Singles",
      "heure": "09:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_gill": "60%",
        "victoire_krumich": "40%",
        "set_Gill": "82%",
        "set_Krumich": "67%"
      },
      "cote_indicative": {
        "Gill": 1.54,
        "Krumich": 2.32
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Barletta Challenger (clay). Gill favored.",
      "stats_comparatives": null
    },
    {
      "match": "Ribecai, Michele vs WQF2 10:15",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Barletta, Italy Men Singles",
      "heure": "[DQ-C]",
      "dq_flag": "DQ-C",
      "pari_retenu": false,
      "raison_no_bet": "Donnees insuffisantes (DQ-C)",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_ribecai": "50%",
        "victoire_wqf2": "50%"
      },
      "cote_indicative": null,
      "total_estime": "25.5 jeux",
      "raisonnement": "Challenger - ATP Challenger Barletta, Italy Men Singles match.",
      "stats_comparatives": null
    },
    {
      "match": "Butvilas E / Pereira T vs Banthia S / Donski A",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Menorca, Spain Men Doubles",
      "heure": "10:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_donski": "56%",
        "victoire_pereira": "44%"
      },
      "cote_indicative": {
        "Donski A": 1.65,
        "Pereira T": 2.1
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "Challenger - ATP Challenger Menorca, Spain Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Isaro P / Kaliyanda Poonacha N vs Molchanov D / Watanabe S 10:00",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Menorca, Spain Men Doubles",
      "heure": "[DQ-C]",
      "dq_flag": "DQ-C",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_isaro": "50%",
        "victoire_molchanov": "50%"
      },
      "cote_indicative": null,
      "total_estime": "25.5 jeux",
      "raisonnement": "Challenger - ATP Challenger Menorca, Spain Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Martinez, Alex vs Rincon, Daniel",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Menorca, Spain Men Singles",
      "heure": "10:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_rincon": "63%",
        "victoire_martinez": "37%",
        "set_Rincon": "83%",
        "set_Martinez": "65%"
      },
      "cote_indicative": {
        "Rincon": 1.43,
        "Martinez": 2.62
      },
      "total_estime": "25.3 jeux",
      "raisonnement": "Menorca Challenger (clay). Rincon favored per odds.",
      "stats_comparatives": null
    },
    {
      "match": "Blanch, Dali vs Brancaccio, Raul",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Menorca, Spain Men Singles",
      "heure": "11:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_blanch": "60%",
        "victoire_brancaccio": "40%",
        "set_Blanch": "81%",
        "set_Brancaccio": "68%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Blanch": 1.59,
        "Brancaccio": 2.2
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Menorca Challenger (clay). Blanch favored.",
      "stats_comparatives": null
    },
    {
      "match": "Mejia, Nicolas vs Schoolkate, Tristan",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger San Luis Potosi, Mexico Men Singles",
      "heure": "22:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_mejia": "60%",
        "victoire_schoolkate": "40%",
        "set_Mejia": "81%",
        "set_Schoolkate": "68%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Mejia": 1.58,
        "Schoolkate": 2.22
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "San Luis Potosi Challenger. Mejia favored.",
      "stats_comparatives": null
    },
    {
      "match": "Arias B / Ingildsen J vs Alvarez Varona N / Mansilla Diez M",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Sao Leopoldo, Brazil Men Doubles",
      "heure": "18:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_ingildsen": "58%",
        "victoire_mansilla": "42%"
      },
      "cote_indicative": {
        "Ingildsen J": 1.58,
        "Mansilla Diez M": 2.22
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Challenger - ATP Challenger Sao Leopoldo, Brazil Men Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Saraiva Dos Santos, Paulo Andre vs Diaz Acosta, Facundo",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Sao Leopoldo, Brazil Men Singles",
      "heure": "14:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "eleve",
      "probabilites": {
        "victoire_diaz": "91%",
        "victoire_saraiva": "9%",
        "set_Diaz Acosta": "96%",
        "set_Saraiva Dos Santos": "37%",
        "over_jeux": "28%"
      },
      "cote_indicative": {
        "Diaz Acosta": 1.06,
        "Saraiva Dos Santos": 7.2
      },
      "total_estime": "23.8 jeux",
      "raisonnement": "Sao Leopoldo Challenger. Diaz Acosta massive favorite, much higher-ranked.",
      "stats_comparatives": null
    },
    {
      "match": "Heide, Gustavo vs Dellien, Hugo",
      "sport": "tennis",
      "ligue": "Challenger - ATP Challenger Sao Leopoldo, Brazil Men Singles",
      "heure": "15:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_heide": "62%",
        "victoire_dellien": "38%",
        "set_Heide": "83%",
        "set_Dellien": "66%",
        "over_jeux": "41%"
      },
      "cote_indicative": {
        "Heide": 1.53,
        "Dellien": 2.34
      },
      "total_estime": "25.4 jeux",
      "raisonnement": "Sao Leopoldo Challenger SF (clay). Heide favored, Brazilian on home soil.",
      "stats_comparatives": null
    },
    {
      "match": "Dolehide C / Khromacheva I vs Strakhova V / Tikhonova A",
      "sport": "tennis",
      "ligue": "WTA - WTA Bogota, Colombia Women Doubles",
      "heure": "18:20",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Doubles - hors scope analyse detaillee",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_khromacheva": "74%",
        "victoire_tikhonova": "26%"
      },
      "cote_indicative": {
        "Khromacheva I": 1.25,
        "Tikhonova A": 3.6
      },
      "total_estime": "24.9 jeux",
      "raisonnement": "WTA - WTA Bogota, Colombia Women Doubles match.",
      "stats_comparatives": null
    },
    {
      "match": "Bouzkova, Marie vs Ortenzi, Jazmin",
      "sport": "tennis",
      "ligue": "WTA - WTA Bogota, Colombia Women Singles",
      "heure": "16:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_bouzkova": "84%",
        "victoire_ortenzi": "16%",
        "set_Bouzkova": "94%",
        "set_Ortenzi": "44%"
      },
      "cote_indicative": {
        "Bouzkova": 1.13,
        "Ortenzi": 5.2
      },
      "total_estime": "24.3 jeux",
      "raisonnement": "Bogota (clay). Bouzkova heavily favored.",
      "stats_comparatives": null
    },
    {
      "match": "Udvardy, Panna vs Arango, Emiliana",
      "sport": "tennis",
      "ligue": "WTA - WTA Bogota, Colombia Women Singles",
      "heure": "17:10",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_arango": "54%",
        "victoire_udvardy": "46%",
        "set_Arango": "78%",
        "set_Udvardy": "72%",
        "over_jeux": "42%"
      },
      "cote_indicative": {
        "Arango": 1.75,
        "Udvardy": 1.98
      },
      "total_estime": "25.5 jeux",
      "raisonnement": "Bogota SF (clay). Close WTA match. Arango slight favorite per odds.",
      "stats_comparatives": null
    },
    {
      "match": "Pegula, Jessica vs Jovic, Iva",
      "sport": "tennis",
      "ligue": "WTA - WTA Charleston, USA Women Singles",
      "heure": "17:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_pegula": "70%",
        "victoire_jovic": "30%",
        "set_Pegula": "87%",
        "set_Jovic": "59%"
      },
      "cote_indicative": {
        "Pegula": 1.36,
        "Jovic": 2.92
      },
      "total_estime": "25.1 jeux",
      "raisonnement": "Charleston SF (green clay). Pegula #1 seed, defending champion, 22-4 in 2026. Won Dubai. H2H 1-0 (6-4 6-2 Dubai). Jovic #4 seed, 18-7 in 2026, beat Kalinskaya in QF.",
      "stats_comparatives": null
    },
    {
      "match": "Keys, Madison vs Starodubtseva, Yuliia",
      "sport": "tennis",
      "ligue": "WTA - WTA Charleston, USA Women Singles",
      "heure": "18:10",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "Edge insuffisant ou marche trop efficient",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_keys": "81%",
        "victoire_starodubtseva": "19%",
        "set_Keys": "92%",
        "set_Starodubtseva": "48%"
      },
      "cote_indicative": {
        "Keys": 1.19,
        "Starodubtseva": 4.3
      },
      "total_estime": "24.5 jeux",
      "raisonnement": "Charleston SF (green clay). Keys #5 seed, GS champion, former Charleston winner. First meeting. Starodubtseva unseeded but clean-hitting game. Keys power advantage + home crowd.",
      "stats_comparatives": null
    }
  ],
  "paris": [
    {
      "sport": "football",
      "ligue": "Bundesliga",
      "match": "Bayer Leverkusen vs VFL Wolfsburg",
      "heure": "13:30",
      "marche": "Handicap +1.75",
      "selection": "VFL Wolfsburg +1.75",
      "cote": 1.63,
      "cote_plancher": 1.59,
      "dq_flag": "DQ-A",
      "mise_unites": "1.5u",
      "mise_euros": 15.0,
      "kelly_calcul": "p_finale=66%, f_full=11.6%, qk=2.9%, chaos*1.0, mise_brute=14.4 EUR -> 1.5u",
      "edge_estime": "+4.5%",
      "probabilite_estimee": "68%",
      "probabilite_marche": "61%",
      "probabilite_finale": "66%",
      "robustesse": "Si p_finale -3%, edge reste a ~0.5%. Leverkusen 4 nuls consecutifs = forme en baisse confirmee. DQ-A solide.",
      "raisonnement": "Leverkusen enchaine 4 nuls consecutifs, incapable de l'emporter ces dernieres semaines. 6e au classement avec forme mediocre (13V-7N-7D). La marge de victoire attendue par le marche semble exageree compte tenu de la dynamique actuelle.",
      "categorie": "VALUE",
      "statut": "SOLIDE",
      "chaos": 1,
      "tier": "tier1"
    },
    {
      "sport": "football",
      "ligue": "Bundesliga",
      "match": "SC Freiburg vs Bayern Munich",
      "heure": "13:30",
      "marche": "Handicap +1.75",
      "selection": "SC Freiburg +1.75",
      "cote": 1.56,
      "cote_plancher": 1.51,
      "dq_flag": "DQ-A",
      "mise_unites": "1.25u",
      "mise_euros": 12.5,
      "kelly_calcul": "p_finale=67%, f_full=9.1%, qk=2.3%, chaos*1.0, mise_brute=11.4 EUR -> 1.25u",
      "edge_estime": "+3.3%",
      "probabilite_estimee": "69%",
      "probabilite_marche": "64%",
      "probabilite_finale": "67%",
      "robustesse": "Si p_finale -3%, edge reste positif (+0.5%). Kane absent confirme, signal solide. Freiburg en forme (2W consecutifs).",
      "raisonnement": "Bayern prive de Harry Kane (meilleur buteur Bundesliga, blesse avec Angleterre), Davies (ischio), Jackson (suspendu). Attaque significativement affaiblie. Freiburg a domicile, 2 victoires consecutives. Le marche n'a peut-etre pas pleinement integre l'absence de Kane dans la marge de victoire attendue.",
      "categorie": "VALUE",
      "statut": "SOLIDE",
      "chaos": 1,
      "tier": "tier1"
    },
    {
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "match": "Garin, Cristian vs De Jong, Jesper",
      "heure": "11:00",
      "marche": "Over 2.5 sets",
      "selection": "Over 2.5 sets (3 sets)",
      "cote": 2.27,
      "cote_plancher": 2.25,
      "dq_flag": "DQ-A",
      "mise_unites": "0.75u",
      "mise_euros": 7.5,
      "kelly_calcul": "p_finale=47%, f_full=6.0%, qk=1.5%, chaos*1.0, mise_brute=7.5 EUR -> 0.75u",
      "edge_estime": "+6.7%",
      "probabilite_estimee": "50%",
      "probabilite_marche": "41%",
      "probabilite_finale": "47%",
      "robustesse": "Match equilibre (cotes 1.69/2.06), 3 sets probable ~50%. Si p_finale -3%, edge reste positif. Marche sets distinct de marche jeux (BANNI).",
      "raisonnement": "MC qualifying R1 (clay). Garin (ex-top 20 Chilean, clay specialist) vs De Jong (Dutch rising). Close match. Both experienced on clay. High probability of a tight 3-set match.",
      "categorie": "VALUE",
      "statut": "VALUE",
      "chaos": 1,
      "tier": "tier1"
    },
    {
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "match": "Shevchenko, Alexander vs Pellegrino, Andrea",
      "heure": "11:20",
      "marche": "Over 2.5 sets",
      "selection": "Over 2.5 sets (3 sets)",
      "cote": 2.25,
      "cote_plancher": 2.26,
      "dq_flag": "DQ-A",
      "mise_unites": "0.75u",
      "mise_euros": 7.5,
      "kelly_calcul": "p_finale=47%, f_full=5.2%, qk=1.3%, chaos*1.0, mise_brute=6.4 EUR -> 0.75u",
      "edge_estime": "+6.2%",
      "probabilite_estimee": "49%",
      "probabilite_marche": "41%",
      "probabilite_finale": "47%",
      "robustesse": "Match equilibre (cotes 1.63/2.16), 3 sets probable ~49%. Si p_finale -3%, edge reste positif. Marche sets distinct de marche jeux (BANNI).",
      "raisonnement": "MC qualifying R1 (clay). Shevchenko (Russian, higher-ranked) vs Pellegrino (Italian, home clay feel). Very even contest. Italian clay pedigree suggests competitive match.",
      "categorie": "VALUE",
      "statut": "VALUE",
      "chaos": 1,
      "tier": "tier1"
    },
    {
      "sport": "tennis",
      "ligue": "ATP - ATP Monte Carlo, Monaco Men Singles",
      "match": "Choinski, Jan vs Muller, Alexandre",
      "heure": "13:30",
      "marche": "Over 2.5 sets",
      "selection": "Over 2.5 sets (3 sets)",
      "cote": 2.23,
      "cote_plancher": 2.23,
      "dq_flag": "DQ-A",
      "mise_unites": "0.75u",
      "mise_euros": 7.5,
      "kelly_calcul": "p_finale=48%, f_full=5.4%, qk=1.3%, chaos*1.0, mise_brute=6.7 EUR -> 0.75u",
      "edge_estime": "+6.3%",
      "probabilite_estimee": "50%",
      "probabilite_marche": "41%",
      "probabilite_finale": "48%",
      "robustesse": "Match equilibre (cotes 1.8/1.92), 3 sets probable ~50%. Si p_finale -3%, edge reste positif. Marche sets distinct de marche jeux (BANNI).",
      "raisonnement": "MC qualifying R1 (clay). Muller (French) vs Choinski (British). Extremely close match per odds. Very high 3-set probability expected in such an even contest.",
      "categorie": "VALUE",
      "statut": "VALUE",
      "chaos": 1,
      "tier": "tier1"
    }
  ],
  "no_bet": [
    {
      "match": "Real Sociedad San Sebastian vs Levante UD",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "RCD Mallorca vs Real Madrid",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Real Betis Seville vs Espanyol Barcelona",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Strasbourg Alsace vs OGC Nice",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Stade Brest 29 vs Stade Rennais FC",
      "raison": "donnees DQ-B"
    },
    {
      "match": "Lille OSC vs Racing Club De Lens",
      "raison": "chaos eleve"
    },
    {
      "match": "Werder Bremen vs RB Leipzig",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Borussia Monchengladbach vs 1. FC Heidenheim",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "TSG Hoffenheim vs FSV Mainz",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Hamburger SV vs FC Augsburg",
      "raison": "donnees DQ-B"
    },
    {
      "match": "VfB Stuttgart vs Borussia Dortmund",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Sassuolo Calcio vs Cagliari Calcio",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Hellas Verona vs ACF Fiorentina",
      "raison": "chaos eleve"
    },
    {
      "match": "Lazio Rome vs Parma Calcio",
      "raison": "donnees DQ-B"
    },
    {
      "match": "PSV Eindhoven vs FC Utrecht",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "AZ Alkmaar vs Fortuna Sittard",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "SC Telstar vs FC Groningen",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Excelsior Rotterdam vs NEC Nijmegen",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Ajax Amsterdam vs FC Twente Enschede",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Nacional da Madeira vs Estrela Amadora",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Rio Ave FC vs FC Alverca SAD",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Moreirense FC vs SC Braga",
      "raison": "donnees DQ-B"
    },
    {
      "match": "FC Porto vs FC Famalicao",
      "raison": "edge insuffisant apres shrinkage"
    },
    {
      "match": "Miami Heat vs Washington Wizards",
      "raison": "NBA mode controle: edge max 1.0% < seuil 8%"
    },
    {
      "match": "Denver Nuggets vs San Antonio Spurs",
      "raison": "NBA mode controle: edge max 0.1% < seuil 8%"
    },
    {
      "match": "Philadelphia 76ers vs Detroit Pistons",
      "raison": "Chaos 2 >= 2 - NO BET auto NBA"
    },
    {
      "match": "Doumbia S / Reboul F vs Bhambri Y / Venus M",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Navone, Mariano vs Van de Zandschulp, Botic",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Marozsan, Fabian vs Merida, Daniel",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Tirante, Thiago Agustin vs Burruchaga, Roman Andres",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Paul, Tommy vs Tiafoe, Frances",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Cash R / Tracy J vs Kirkov V / Stevens B",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Darderi, Luciano vs Hanfmann, Yannick 10:00",
      "raison": "Donnees insuffisantes (DQ-C)"
    },
    {
      "match": "Darderi, Luciano vs Trungelliti, Marco",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Jodar, Rafael vs Ugo Carabelli, Camilo",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Bonzi, Benjamin vs Bautista Agut, Roberto",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Arneodo, Romain vs Comesana, Francisco",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Buse, Ignacio vs Goffin, David",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Struff, Jan-Lennard vs Basilashvili, Nikoloz",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Maestrelli, Francesco vs Blockx, Alexander",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Kopriva, Vit vs Arnaldi, Matteo",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Quinn, Ethan vs Virtanen, Otto",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Dzumhur, Damir vs Budkov Kjaer, Nicolai",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Duda F / Latinovic S vs Karol M / Sachko V",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Gill, Felix vs Krumich, Martin",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Ribecai, Michele vs WQF2 10:15",
      "raison": "Donnees insuffisantes (DQ-C)"
    },
    {
      "match": "Butvilas E / Pereira T vs Banthia S / Donski A",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Isaro P / Kaliyanda Poonacha N vs Molchanov D / Watanabe S 10:00",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Martinez, Alex vs Rincon, Daniel",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Blanch, Dali vs Brancaccio, Raul",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Mejia, Nicolas vs Schoolkate, Tristan",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Arias B / Ingildsen J vs Alvarez Varona N / Mansilla Diez M",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Saraiva Dos Santos, Paulo Andre vs Diaz Acosta, Facundo",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Heide, Gustavo vs Dellien, Hugo",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Dolehide C / Khromacheva I vs Strakhova V / Tikhonova A",
      "raison": "Doubles - hors scope analyse detaillee"
    },
    {
      "match": "Bouzkova, Marie vs Ortenzi, Jazmin",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Udvardy, Panna vs Arango, Emiliana",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Pegula, Jessica vs Jovic, Iva",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Keys, Madison vs Starodubtseva, Yuliia",
      "raison": "Edge insuffisant ou marche trop efficient"
    },
    {
      "match": "Atletico Madrid vs FC Barcelona",
      "raison": "Kelly negatif: p_finale 47% < cote implicite 47.2%. Chaos 2."
    }
  ],
  "resume": {
    "total_paris": 5,
    "exposition_totale_euros": 50.0,
    "exposition_totale_unites": "5.0u",
    "gain_potentiel_si_tous_gagnants": {
      "profit_net_euros": 44.58,
      "ROI_potentiel": "+89.2%"
    }
  }
}