{
  "trained_at": "2026-05-06 15:53:36",
  "market_results": {
    "MS": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.5437,
      "xgb_logloss": 0.9429,
      "lgb_accuracy": 0.5436,
      "lgb_logloss": 0.9423,
      "ensemble_accuracy": 0.5442,
      "ensemble_logloss": 0.9418,
      "class_count": 3
    },
    "OU15": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.753,
      "xgb_logloss": 0.5256,
      "lgb_accuracy": 0.7523,
      "lgb_logloss": 0.5262,
      "ensemble_accuracy": 0.7533,
      "ensemble_logloss": 0.5254,
      "class_count": 2
    },
    "OU25": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.6253,
      "xgb_logloss": 0.635,
      "lgb_accuracy": 0.6246,
      "lgb_logloss": 0.6347,
      "ensemble_accuracy": 0.6262,
      "ensemble_logloss": 0.6343,
      "class_count": 2
    },
    "OU35": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.7283,
      "xgb_logloss": 0.5463,
      "lgb_accuracy": 0.7304,
      "lgb_logloss": 0.546,
      "ensemble_accuracy": 0.7297,
      "ensemble_logloss": 0.5456,
      "class_count": 2
    },
    "BTTS": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.5894,
      "xgb_logloss": 0.6636,
      "lgb_accuracy": 0.5928,
      "lgb_logloss": 0.6633,
      "ensemble_accuracy": 0.5897,
      "ensemble_logloss": 0.6628,
      "class_count": 2
    },
    "HT_RESULT": {
      "samples": 103208,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 72245,
      "val_samples": 15481,
      "test_samples": 15482,
      "xgb_accuracy": 0.4695,
      "xgb_logloss": 1.0174,
      "lgb_accuracy": 0.4677,
      "lgb_logloss": 1.0166,
      "ensemble_accuracy": 0.4688,
      "ensemble_logloss": 1.0164,
      "class_count": 3
    },
    "HT_OU05": {
      "samples": 103208,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 72245,
      "val_samples": 15481,
      "test_samples": 15482,
      "xgb_accuracy": 0.7011,
      "xgb_logloss": 0.5939,
      "lgb_accuracy": 0.7002,
      "lgb_logloss": 0.5936,
      "ensemble_accuracy": 0.7009,
      "ensemble_logloss": 0.5932,
      "class_count": 2
    },
    "HT_OU15": {
      "samples": 103208,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 72245,
      "val_samples": 15481,
      "test_samples": 15482,
      "xgb_accuracy": 0.6723,
      "xgb_logloss": 0.6126,
      "lgb_accuracy": 0.6736,
      "lgb_logloss": 0.6118,
      "ensemble_accuracy": 0.6734,
      "ensemble_logloss": 0.6117,
      "class_count": 2
    },
    "HTFT": {
      "samples": 103208,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 72245,
      "val_samples": 15481,
      "test_samples": 15482,
      "xgb_accuracy": 0.3337,
      "xgb_logloss": 1.8208,
      "lgb_accuracy": 0.3332,
      "lgb_logloss": 1.8203,
      "ensemble_accuracy": 0.3358,
      "ensemble_logloss": 1.8186,
      "class_count": 9
    },
    "ODD_EVEN": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.5296,
      "xgb_logloss": 0.6841,
      "lgb_accuracy": 0.5359,
      "lgb_logloss": 0.6822,
      "ensemble_accuracy": 0.531,
      "ensemble_logloss": 0.6826,
      "class_count": 2
    },
    "CARDS_OU45": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.6009,
      "xgb_logloss": 0.6489,
      "lgb_accuracy": 0.5988,
      "lgb_logloss": 0.6487,
      "ensemble_accuracy": 0.6024,
      "ensemble_logloss": 0.6479,
      "class_count": 2
    },
    "HANDICAP_MS": {
      "samples": 106428,
      "features_used": [
        "home_overall_elo",
        "away_overall_elo",
        "elo_diff",
        "home_home_elo",
        "away_away_elo",
        "home_form_elo",
        "away_form_elo",
        "form_elo_diff",
        "home_goals_avg",
        "home_conceded_avg",
        "away_goals_avg",
        "away_conceded_avg",
        "home_clean_sheet_rate",
        "away_clean_sheet_rate",
        "home_scoring_rate",
        "away_scoring_rate",
        "home_winning_streak",
        "away_winning_streak",
        "home_unbeaten_streak",
        "away_unbeaten_streak",
        "h2h_total_matches",
        "h2h_home_win_rate",
        "h2h_draw_rate",
        "h2h_avg_goals",
        "h2h_btts_rate",
        "h2h_over25_rate",
        "home_avg_possession",
        "away_avg_possession",
        "home_avg_shots_on_target",
        "away_avg_shots_on_target",
        "home_shot_conversion",
        "away_shot_conversion",
        "home_avg_corners",
        "away_avg_corners",
        "odds_ms_h",
        "odds_ms_d",
        "odds_ms_a",
        "implied_home",
        "implied_draw",
        "implied_away",
        "odds_ht_ms_h",
        "odds_ht_ms_d",
        "odds_ht_ms_a",
        "odds_ou05_o",
        "odds_ou05_u",
        "odds_ou15_o",
        "odds_ou15_u",
        "odds_ou25_o",
        "odds_ou25_u",
        "odds_ou35_o",
        "odds_ou35_u",
        "odds_ht_ou05_o",
        "odds_ht_ou05_u",
        "odds_ht_ou15_o",
        "odds_ht_ou15_u",
        "odds_btts_y",
        "odds_btts_n",
        "odds_ms_h_present",
        "odds_ms_d_present",
        "odds_ms_a_present",
        "odds_ht_ms_h_present",
        "odds_ht_ms_d_present",
        "odds_ht_ms_a_present",
        "odds_ou05_o_present",
        "odds_ou05_u_present",
        "odds_ou15_o_present",
        "odds_ou15_u_present",
        "odds_ou25_o_present",
        "odds_ou25_u_present",
        "odds_ou35_o_present",
        "odds_ou35_u_present",
        "odds_ht_ou05_o_present",
        "odds_ht_ou05_u_present",
        "odds_ht_ou15_o_present",
        "odds_ht_ou15_u_present",
        "odds_btts_y_present",
        "odds_btts_n_present",
        "home_xga",
        "away_xga",
        "league_avg_goals",
        "league_zero_goal_rate",
        "upset_atmosphere",
        "upset_motivation",
        "upset_fatigue",
        "upset_potential",
        "referee_home_bias",
        "referee_avg_goals",
        "referee_cards_total",
        "referee_avg_yellow",
        "referee_experience",
        "home_momentum_score",
        "away_momentum_score",
        "momentum_diff",
        "home_squad_quality",
        "away_squad_quality",
        "squad_diff",
        "home_key_players",
        "away_key_players",
        "home_missing_impact",
        "away_missing_impact",
        "home_goals_form",
        "away_goals_form"
      ],
      "train_samples": 74499,
      "val_samples": 15964,
      "test_samples": 15965,
      "xgb_accuracy": 0.6058,
      "xgb_logloss": 0.8691,
      "lgb_accuracy": 0.608,
      "lgb_logloss": 0.8677,
      "ensemble_accuracy": 0.6068,
      "ensemble_logloss": 0.8677,
      "class_count": 3
    }
  }
}