{
  "date": "2026-04-18",
  "generated": "2026-04-18T07:30:00",
  "model_version": "3.0",
  "analyses": [
    {
      "match": "Zverev, Alexander vs Cobolli, Flavio",
      "sport": "tennis",
      "ligue": "ATP Munich (BMW Open 500)",
      "heure": "11:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Zverev@1.17 = NO BET ABSOLU (cote < 1.30). Cobolli@4.60 : p_finale=0.184 < p_marché=0.217 → edge négatif -3.3%. NO BET.",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_zverev": "83%",
        "victoire_cobolli": "17%"
      },
      "cote_indicative": {
        "zverev": 1.17,
        "cobolli": 4.60
      },
      "raisonnement": "Zverev (no.3, 11-2 clay 2026) écrase Cobolli (no.16) avec H2H 2-0. Zverev chasse son 4e titre à Munich. Cobolli a sorti Kopriva en QF mais l'écart de niveau est trop important. Zverev@1.17 = NO BET absolu (règle < 1.30). Cobolli@4.60 : edge négatif après shrinkage 70/30. NO BET.",
      "stats_comparatives": {
        "type": "tennis",
        "joueur_1": "Zverev, Alexander",
        "joueur_2": "Cobolli, Flavio",
        "surface": "clay (indoor)",
        "classement_atp": [3, 16],
        "bilan_saison": ["14-7", "13-8"],
        "bilan_clay_2026": ["11-2", "non précisé"],
        "h2h": "2-0 Zverev",
        "absences_cles": ["Aucune", "Aucune"]
      }
    },
    {
      "match": "Molcan, Alex vs Shelton, Ben",
      "sport": "tennis",
      "ligue": "ATP Munich (BMW Open 500)",
      "heure": "13:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Shelton@1.35 : p_finale=0.712 < p_marché=0.741 → edge négatif -2.9%. Molcan@2.98 : p_estimée=0.38, p_finale=0.367, edge=+3.1% < seuil 7% ML outsider. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_molcan": "36-38%",
        "victoire_shelton": "62-64%"
      },
      "cote_indicative": {
        "molcan": 2.98,
        "shelton": 1.35
      },
      "raisonnement": "Duel fascinant : Molcan (no.166) affiche un bilan clay 2026 exceptionnel de 11-2 (84.6%) dont victoires sur Bublik, Altmaier, Shapovalov. Shelton (no.6) est 4-1 clay. Première H2H. Munich indoor clay favorise légèrement Shelton (big serve). L'anomalie Molcan sur clay est réelle mais edge +3.1% pour Molcan est loin du seuil 7% requis. Shelton CONFIANCE : p_finale=0.712 < p_marché=0.741 → edge négatif. NO BET toutes sélections.",
      "stats_comparatives": {
        "type": "tennis",
        "joueur_1": "Molcan, Alex",
        "joueur_2": "Shelton, Ben",
        "surface": "clay (indoor)",
        "classement_atp": [166, 6],
        "bilan_saison": ["14-7", "15-5"],
        "bilan_clay_2026": ["11-2", "4-1"],
        "h2h": "0-0 (première confrontation)",
        "absences_cles": ["Aucune", "Aucune"]
      }
    },
    {
      "match": "Rublev, Andrey vs Medjedovic, Hamad",
      "sport": "tennis",
      "ligue": "ATP Barcelona (500)",
      "heure": "11:30",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "DQ-B → chaos minimum 2, CONFIANCE impossible. Rublev@1.54 : p_finale=0.650, edge=+0.1% (quasi nul). Medjedovic@2.34 : zone 2.00-2.50, DQ-B → NO BET NO BET 2 non validé. NO BET.",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_rublev": "65%",
        "victoire_medjedovic": "35%"
      },
      "cote_indicative": {
        "rublev": 1.54,
        "medjedovic": 2.34
      },
      "raisonnement": "Alcaraz retiré, Medjedovic (qualifié) surprend le draw en battant Borges. Rublev solide sur clay mais DQ-B (une seule source cotes, Betify uniquement). Edge quasi nul sur Rublev. Medjedovic dans zone 2.00-2.50 nécessite DQ-A + edge >=9% → DQ-B invalide d'office. NO BET.",
      "stats_comparatives": null
    },
    {
      "match": "Jodar, Rafael vs Fils, Arthur",
      "sport": "tennis",
      "ligue": "ATP Barcelona (500)",
      "heure": "14:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Fils@1.59 : p_estimée=0.64, p_finale=0.637, edge=+0.8% < seuil 7% ML. Jodar@2.24 : zone 2.00-2.50, p_finale=0.400 < p_marché=0.446 → edge négatif. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_jodar": "40%",
        "victoire_fils": "60%"
      },
      "cote_indicative": {
        "jodar": 2.24,
        "fils": 1.59
      },
      "raisonnement": "Jodar (wildcard espagnol, SF surprise) bénéficie de l'effet public barcelonais et d'une forme impressionnante (Norrie battu en ligne droite). Fils (top 15, beat Musetti en QF) est régulier mais sans drop de set. Le marché donne Fils à 63% soit 1.59. L'edge sur Fils (+0.8%) est largement insuffisant (seuil 7%). Jodar en 2.00-2.50 : edge négatif. NO BET.",
      "stats_comparatives": {
        "type": "tennis",
        "joueur_1": "Jodar, Rafael",
        "joueur_2": "Fils, Arthur",
        "surface": "clay (outdoor)",
        "classement_atp": ["n/c (wildcard)", "~12-15"],
        "raisonnement_specifique": "Jodar invaincu en sets ce tournoi, foule barcelonaise, but edge insufficient",
        "h2h": "H2H non disponible (nouveau match)",
        "absences_cles": ["Aucune", "Aucune"]
      }
    },
    {
      "match": "Svitolina, Elina vs Muchova, Karolina",
      "sport": "tennis",
      "ligue": "WTA Stuttgart (Porsche Grand Prix 500)",
      "heure": "12:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "DQ-B → chaos minimum 2. Svitolina@1.67 : p_estimée=0.57, p_finale=0.579 < p_marché=0.599 → edge négatif -2.0%. CONFIANCE impossible (chaos >=2 pour DQ-B). NO BET.",
      "niveau_confiance": "faible",
      "probabilites": {
        "victoire_svitolina": "57%",
        "victoire_muchova": "43%"
      },
      "cote_indicative": {
        "svitolina": 1.67,
        "muchova": 2.10
      },
      "raisonnement": "Svitolina joueuse clay expérimentée mais DQ-B (Betify uniquement). Muchova de retour après blessures, a battu Gauff en QF. Edge négatif sur Svitolina après shrinkage. DQ-B invalide tout statut CONFIANCE (chaos >=2). NO BET.",
      "stats_comparatives": null
    },
    {
      "match": "Rybakina, Elena vs Andreeva, Mirra",
      "sport": "tennis",
      "ligue": "WTA Stuttgart (Porsche Grand Prix 500)",
      "heure": "14:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Andreeva@2.04 : zone 2.00-2.50, edge=+0.7% (p_finale=0.497 vs p_marché=0.490) → LOIN du seuil 9% obligatoire. NO BET 2 non validé. Rybakina@1.71 : p_finale=0.526 < p_marché=0.585 → edge négatif. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_rybakina": "50%",
        "victoire_andreeva": "50%"
      },
      "cote_indicative": {
        "rybakina": 1.71,
        "andreeva": 2.04
      },
      "raisonnement": "Match très équilibré : Andreeva mène H2H 2-1 vs Rybakina (victoires Dubai + Indian Wells 2025). Andreeva sur 6 matchs gagnants de suite, a sorti Swiatek pour la 3e fois consécutive. Rybakina fatiguée après 3h vs Fernandez (2 balles de match sauvées). Andreeva@2.04 est la sélection naturelle mais tranche 2.00-2.50 requiert edge >=9%. Edge calculé = +0.7% seulement → NO BET.",
      "stats_comparatives": {
        "type": "tennis",
        "joueur_1": "Rybakina, Elena",
        "joueur_2": "Andreeva, Mirra",
        "surface": "clay (indoor Stuttgart)",
        "classement_wta": ["no.3 seed (no.1 seed tourney)", "no.6 seed"],
        "h2h": "1-2 Andreeva (derniers matchs: Dubai 2025, Indian Wells 2025 → Andreeva gagne)",
        "forme_recente_andreeva": "6 victoires consécutives, 3-0 vs Swiatek",
        "fatigue_rybakina": "3h en QF vs Fernandez (2 match points sauvés)",
        "absences_cles": ["Sabalenka retirée du tournoi", "Aucune"]
      }
    },
    {
      "match": "Kostyuk, Marta vs Maria, Tatjana",
      "sport": "tennis",
      "ligue": "WTA Rouen (Open Capfinances)",
      "heure": "13:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Kostyuk@1.06 = NO BET ABSOLU (cote < 1.30). Maria@7.40 : edge négatif évident, cote trop haute sans edge solide. NO BET.",
      "niveau_confiance": "très faible",
      "probabilites": {
        "victoire_kostyuk": "94%",
        "victoire_maria": "6%"
      },
      "cote_indicative": {
        "kostyuk": 1.06,
        "maria": 7.40
      },
      "raisonnement": "Kostyuk@1.06 = règle NO BET 1 (cote < 1.30). Kelly fractionnel mathématiquement insignifiant à ce niveau. NO BET automatique.",
      "stats_comparatives": null
    },
    {
      "match": "Podrez, Veronika vs Cirstea, Sorana",
      "sport": "tennis",
      "ligue": "WTA Rouen (Open Capfinances)",
      "heure": "14:40",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Cirstea@1.17 = NO BET ABSOLU (cote < 1.30). Podrez@4.60 : edge négatif. NO BET.",
      "niveau_confiance": "très faible",
      "probabilites": {
        "victoire_podrez": "12%",
        "victoire_cirstea": "88%"
      },
      "cote_indicative": {
        "podrez": 4.60,
        "cirstea": 1.17
      },
      "raisonnement": "Cirstea@1.17 = règle NO BET 1 (cote < 1.30). Edge Kelly négligeable. NO BET automatique.",
      "stats_comparatives": null
    },
    {
      "match": "Brentford FC vs Fulham FC",
      "sport": "football",
      "ligue": "Premier League",
      "heure": "11:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "DC Brentford/Draw (1X) cote estimée ~1.33 : p_finale=0.731 < p_marché=0.752 → edge négatif. Brentford ML@2.08 : p_finale=0.480 ≈ p_marché=0.481 → edge nul. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_brentford": "45%",
        "nul": "26%",
        "victoire_fulham": "29%"
      },
      "cote_indicative": {
        "brentford": 2.08,
        "nul": 3.60,
        "fulham": 3.25
      },
      "raisonnement": "Brentford invaincu en 5 derniers matchs (4 nuls) avec xG supérieur (2.84 vs 1.54 contre Everton), meilleur taux de tirs cadrés PL (37.4%). Fulham : 14 défaites à l'extérieur, 0-2 vs Liverpool. L'angle Brentford/Draw est logique mais le marché est bien calibré. Edge DC quasi nul après shrinkage 70/30. NO BET.",
      "stats_comparatives": {
        "type": "football",
        "equipe_1": "Brentford FC",
        "equipe_2": "Fulham FC",
        "forme_5_derniers": ["N-N-N-N-V", "D-D-D-D-D"],
        "buts_marques_par_match": [1.8, 1.1],
        "xg_pour_recents": [2.84, 0.7],
        "pct_tirs_cadres": ["37.4% (meilleur PL)", "29.6% (avant-dernier PL)"],
        "absences_cles": ["Aucune confirmée", "Aucune confirmée"]
      }
    },
    {
      "match": "Newcastle United vs AFC Bournemouth",
      "sport": "football",
      "ligue": "Premier League",
      "heure": "14:00",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "DC Bournemouth/Draw (X2) cote estimée ~1.60 : p_finale=0.629 < p_marché=0.625 → edge +0.4%, loin du seuil DC 7%. Bournemouth ML@3.20 : p_finale=0.294 < p_marché=0.313 → edge négatif. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_newcastle": "43%",
        "nul": "25%",
        "victoire_bournemouth": "32%"
      },
      "cote_indicative": {
        "newcastle": 2.10,
        "nul": 3.65,
        "bournemouth": 3.20
      },
      "raisonnement": "Bournemouth en excellente forme (invaincu 11 matchs, a battu Arsenal 2-1 à l'extérieur xG 1.19). Newcastle en chute libre (3 défaites consécutives, xG 1.14 vs Crystal Palace 2.57). Signal fort Bournemouth mais marché correctement calibré. Edge DC X2 à +0.4% loin du seuil 7%. NO BET.",
      "stats_comparatives": {
        "type": "football",
        "equipe_1": "Newcastle United",
        "equipe_2": "AFC Bournemouth",
        "position_classement": [14, 11],
        "points": [42, 45],
        "forme_5_derniers": ["D-D-D", "V-V-V-V-V"],
        "buts_marques_par_match": [1.41, 1.53],
        "buts_encaisses_par_match": [1.47, 1.53],
        "absences_cles": ["Aucune confirmée", "Aucune confirmée"]
      }
    },
    {
      "match": "Tottenham Hotspur vs Brighton & Hove Albion",
      "sport": "football",
      "ligue": "Premier League",
      "heure": "16:30",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Brighton ML@2.28 (zone 2.00-2.50) : p_estimée=0.57-0.59, p_finale=0.53-0.55, edge max +10.6% → passe seuil 9% mais ÉCHEC TEST ROBUSTESSE : si p_finale surevaluée +3% → edge tombe à 7.6% < 9% → NO BET 2 non validé (réponse fragile). NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_tottenham": "26%",
        "nul": "22%",
        "victoire_brighton": "52%"
      },
      "cote_indicative": {
        "tottenham": 2.88,
        "nul": 3.60,
        "brighton": 2.28
      },
      "raisonnement": "Signal fort Brighton : Tottenham en 18e place (zone relégation), dernier win PL en décembre 2025 (14 matchs sans victoire !), perdu 4 matchs à domicile 3-12 cumulé, concédé dans 13 matchs consécutifs. Brighton 9e (46pts), 5 victoires en 6 PL, 3 derniers H2H gagnés. OBSERVATION RENFORCEE — tranche 2.00-2.50, historique 20% TR n=15, ROI -58%. Malgré signal Brighton réel, le test de robustesse échoue (edge chute sous 9% si p_finale surevaluée de 3%). Discipline : NO BET.",
      "stats_comparatives": {
        "type": "football",
        "equipe_1": "Tottenham Hotspur",
        "equipe_2": "Brighton & Hove Albion",
        "position_classement": [18, 9],
        "points": [30, 46],
        "forme_5_derniers": ["D-D-D-D-D (14 sans victoire)", "V-V-V-V-V (5/6)"],
        "buts_encaisses_par_match_dom_spurs": [1.75, null],
        "bilan_h2h_recent": "3 derniers H2H : Brighton 2-1-0",
        "welbeck_forme": "3 buts en 5 PL",
        "absences_cles": ["Aucune confirmée", "Aucune confirmée"]
      }
    },
    {
      "match": "AS Roma vs Atalanta BC",
      "sport": "football",
      "ligue": "Serie A",
      "heure": "18:45",
      "dq_flag": "DQ-A",
      "pari_retenu": false,
      "raison_no_bet": "Atalanta ML@2.88 : p_finale=0.370 vs p_marché=0.347 → edge +2.3%, loin seuil 7% ML outsider. DC X2 : edge +6% max (cote ~1.55) → loin 7% DC. Atalanta@2.88 hors zone 2.00-2.50 mais edge insuffisant. NO BET.",
      "niveau_confiance": "moyen",
      "probabilites": {
        "victoire_roma": "37%",
        "nul": "26%",
        "victoire_atalanta": "37%"
      },
      "cote_indicative": {
        "roma": 2.46,
        "nul": 3.20,
        "atalanta": 2.88
      },
      "raisonnement": "Match à enjeu UCL (Roma 6e/57pts, Atalanta 7e/53pts, 6 journées restantes). Roma invaincu à domicile en 9 matchs mais CRISE BLESSURES MAJEURE : Dovbyk, Dybala, Ferguson, Kone, Mancini, Pellegrini absents → attaque quasi inexistante. Atalanta H2H : 6 victoires sur 7 derniers, gagne 1-0 en aller. xG Roma dom 1.72 vs Atalanta ext 1.43. Les absences de Roma créent signal Atalanta mais edge +2.3% trop faible (seuil 7%). NO BET.",
      "stats_comparatives": {
        "type": "football",
        "equipe_1": "AS Roma",
        "equipe_2": "Atalanta BC",
        "position_classement": [6, 7],
        "points": [57, 53],
        "forme_5_derniers": ["V-N-N-D-N (2 wins sur 8)", "N-D-D-D-V (2 wins sur 9)"],
        "xg_pour": [1.72, "ext: 1.43"],
        "h2h_5_derniers": "Atalanta 6-1-0 (6/7 wins)",
        "absences_cles_roma": ["Dovbyk", "Dybala", "Ferguson", "Kone", "Mancini", "Pellegrini"]
      }
    },
    {
      "match": "NBA : Cleveland, Denver, NY Knicks matchs",
      "sport": "basketball",
      "ligue": "NBA",
      "heure": "17:00-22:00",
      "dq_flag": "DQ-B",
      "pari_retenu": false,
      "raison_no_bet": "TOUS les matchs NBA du jour sont DQ-B ou DQ-C. Règle absolue : NO BET NBA si DQ-B ou DQ-C. NO BET automatique.",
      "niveau_confiance": "n/a",
      "probabilites": null,
      "raisonnement": "4 matchs NBA (Cavs-Raptors, Nuggets-Wolves, Knicks-Hawks, Suns-Warriors). Aucun n'atteint DQ-A requis par le protocole NBA mode contrôle. Injury reports non vérifiés < 2h avant tip-off = condition suspensive non remplie. NO BET automatique.",
      "stats_comparatives": null
    }
  ],
  "paris": [],
  "no_bet": [
    {
      "match": "Zverev vs Cobolli (ATP Munich SF)",
      "raison": "Zverev@1.17 = NO BET ABSOLU (cote < 1.30, règle NO BET 1). Cobolli@4.60 : edge négatif -3.3% après shrinkage."
    },
    {
      "match": "Molcan vs Shelton (ATP Munich SF)",
      "raison": "Shelton@1.35 : edge négatif CONFIANCE. Molcan@2.98 : edge +3.1% insuffisant (seuil 7% ML outsider)."
    },
    {
      "match": "Rublev vs Medjedovic (ATP Barcelona SF)",
      "raison": "DQ-B uniquement. Rublev edge ~0%. Medjedovic zone 2.00-2.50 + DQ-B = double NO BET."
    },
    {
      "match": "Jodar vs Fils (ATP Barcelona SF)",
      "raison": "Fils@1.59 edge +0.8% insuffisant (seuil 7%). Jodar@2.24 zone 2.00-2.50, edge négatif."
    },
    {
      "match": "Svitolina vs Muchova (WTA Stuttgart SF)",
      "raison": "DQ-B → chaos minimum 2. Edge négatif sur Svitolina. CONFIANCE impossible."
    },
    {
      "match": "Rybakina vs Andreeva (WTA Stuttgart SF)",
      "raison": "Andreeva@2.04 zone 2.00-2.50 : edge +0.7% TRÈS LOIN du seuil 9% obligatoire. Rybakina edge négatif."
    },
    {
      "match": "Kostyuk vs Maria (WTA Rouen SF)",
      "raison": "Kostyuk@1.06 = NO BET ABSOLU (cote < 1.30)."
    },
    {
      "match": "Podrez vs Cirstea (WTA Rouen SF)",
      "raison": "Cirstea@1.17 = NO BET ABSOLU (cote < 1.30)."
    },
    {
      "match": "Brentford vs Fulham (PL)",
      "raison": "DC 1X edge négatif. Marché bien calibré malgré signal Brentford (forme, xG)."
    },
    {
      "match": "Newcastle vs Bournemouth (PL)",
      "raison": "Signal Bournemouth fort mais DC X2 edge +0.4% (seuil 7%). Edge insuffisant."
    },
    {
      "match": "Tottenham vs Brighton (PL)",
      "raison": "Brighton@2.28 zone 2.00-2.50 : edge max 10.6% > seuil 9% mais TEST ROBUSTESSE ÉCHOUE (fragilité si p surevaluée +3%). Discipline NO BET. OBSERVATION RENFORCEE : tranche 2.00-2.50, ROI historique -58%."
    },
    {
      "match": "AS Roma vs Atalanta (Serie A)",
      "raison": "Atalanta signal intéressant (H2H dominant, blessures Roma) mais edge +2.3% insuffisant (seuil 7%)."
    },
    {
      "match": "Tous matchs NBA du jour",
      "raison": "DQ-B/DQ-C sur tous les matchs. Règle absolue : NO BET NBA hors DQ-A."
    }
  ],
  "resume": {
    "total_paris": 0,
    "exposition_totale_euros": 0,
    "exposition_totale_unites": "0u",
    "quota_atteint": "0/8",
    "gain_potentiel_si_tous_gagnants": {
      "profit_net_euros": 0,
      "ROI_potentiel": "+0%"
    },
    "journee_no_bet": true,
    "raison_journee_no_bet": "Marchés bien calibrés le 18 avril 2026. Principaux refus : (1) 3 cotes < 1.30 (NO BET 1), (2) zone 2.00-2.50 — edges < 9% ou test robustesse fragile, (3) DQ-B/C sur NBA et matchs tennis partiels, (4) edges football < 7% seuil DC durci v3. Discipline prioritaire sur le volume. Prochain signal possible dimanche ou lundi avec données de forme actualisées."
  }
}
