Arena run #307

meanrev-v1amazonamazon/nova-premier-v1USsuccess
Arena
Run status
as_of: 2026-02-25T17:57:28.313088+00:00
started_at: 2026-02-25T19:38:31.631668+00:00
finished_at: 2026-02-25T19:38:44.769272+00:00
duration_ms: 13136
Inputs
{
  "dry_run": false,
  "selected": [
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Strong 1d% decline with moderate MA50 distance",
      "mean_reversion_score": 65
    },
    {
      "symbol": "UKW_CFD.UK",
      "selection_reason": "Sharp 1d% drop and significant negative MA50 divergence",
      "mean_reversion_score": 72
    },
    {
      "symbol": "CCC_CFD.UK",
      "selection_reason": "Negative 1d% change and near MA50 resistance",
      "mean_reversion_score": 58
    },
    {
      "symbol": "CAR_CFD.US",
      "selection_reason": "Negative  MA50 with mild 1d volatility",
      "mean_reversion_score": 62
    },
    {
      "symbol": "BRBY_CFD.UK",
      "selection_reason": "Negative 1d% with moderate MA50 gap",
      "mean_reversion_score": 59
    }
  ],
  "universe_symbols": [
    "WIZZ_CFD.UK",
    "UKW_CFD.UK",
    "CRDA_CFD.UK",
    "BIG_CFD.FR",
    "ATG_CFD.UK",
    "CCC_CFD.UK",
    "BYIT_CFD.UK",
    "BLND_CFD.UK",
    "CAR_CFD.US",
    "BRBY_CFD.UK",
    "CE_CFD.US",
    "FDX_CFD.US",
    "ABF_CFD.UK",
    "AGFB_CFD.BE"
  ]
}
Outputs
{
  "actions": {
    "buy": [
      {
        "reason": "Top candidate score 72",
        "symbol": "UKW_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "Second-highest candidate score 65",
        "symbol": "WIZZ_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Marginal price change -0.1%",
        "symbol": "ADP_CFD.FR"
      },
      {
        "reason": "Profitable position +2.9%",
        "symbol": "AKAM_CFD.US"
      },
      {
        "reason": "No position exists",
        "symbol": "BIG_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "BRNL_CFD.NL"
      },
      {
        "reason": "No price change",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "DSY_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "ERA_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "ESTC_CFD.US"
      },
      {
        "reason": "No price change",
        "symbol": "EXE_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "Profitable position +3.4%",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "IPO_CFD.UK"
      },
      {
        "reason": "Marginal price change +0.1%",
        "symbol": "KBCA_CFD.BE"
      },
      {
        "reason": "No price change",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "SGE_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "WPP_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "ZS_CFD.US"
      }
    ],
    "sell": [
      {
        "reason": "Score 58 < 60 and negative PnL",
        "symbol": "UMG_CFD.NL"
      },
      {
        "reason": "Score 58 < 60 and negative PnL",
        "symbol": "RMV_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Reduced underperforming positions and added top-scoring candidates within 2-buy limit"
}
Prompts & responses
#601openrouteramazon/nova-premier-v12026-02-25T19:38:31.647176+00:00
System prompt
You are an Arena strategy executor. You must follow the strategy rules strictly and output ONLY valid JSON. You are NOT allowed to invent prices, fundamentals, earnings dates, or sentiment. If a field is null/empty, treat it as unknown. You are a constrained selector (no narrative).
User prompt
{"task": "stage1_universe_scan", "region": "US", "strategy": {"key": "meanrev-v1", "name": "Two-Stage LLM Mean-Reversion (Arena v1)", "rules": {"max_positions": 10, "max_buys_per_run": 2, "avoid_overtrading": true, "max_sells_per_run": 2, "max_gross_leverage": 3.0, "fixed_position_size": 3000.0, "universe_symbols_eu": [], "universe_symbols_us": []}}, "selection_rules": {"horizon": "2-10 trading days", "target": "short-term mean reversion in liquid equities", "constraints": ["Select exactly 5 candidates", "Avoid earnings within 5 trading days (if known)", "Avoid highly binary/event-driven moves (if known)", "Avoid sector concentration: max 1 per sector unless clearly justified (sector may be unknown)"]}, "universe": [{"symbol": "WIZZ_CFD.UK", "name": "WIZZ AIR HOLDINGS PLC", "sector": "", "last_price": 1299.0, "change_1d_pct": -7.412687099073412, "distance_from_ma200_pct": 3.990085157792933, "distance_from_ma50_pct": 0.21211951024278086, "volatility_20d_pct": 5874.684590366408, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "UKW_CFD.UK", "name": "GREENCOAT UK WIND PLC", "sector": "", "last_price": 92.35, "change_1d_pct": -5.909322465613864, "distance_from_ma200_pct": -17.64082660607077, "distance_from_ma50_pct": -12.349969913308566, "volatility_20d_pct": 2773.983404143022, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CRDA_CFD.UK", "name": "CRODA INTERNATIONAL PLC", "sector": "", "last_price": 3270.0, "change_1d_pct": 18.306801736613608, "distance_from_ma200_pct": 15.315074372668791, "distance_from_ma50_pct": 15.114636224020273, "volatility_20d_pct": 105.57470323224747, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BIG_CFD.FR", "name": "Bigben Interactive", "sector": "", "last_price": 0.462, "change_1d_pct": 0.0, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -45.79246257098606, "volatility_20d_pct": 11712.882237669019, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ATG_CFD.UK", "name": "AUCTION TECHNOLOGY GROUP", "sector": "", "last_price": 315.5, "change_1d_pct": -0.15822784810126667, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 2.9598929608719793, "volatility_20d_pct": 4125.199412345139, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CCC_CFD.UK", "name": "COMPUTACENTER PLC", "sector": "", "last_price": 2992.0, "change_1d_pct": -2.540716612377847, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -2.946633623541939, "volatility_20d_pct": 3425.126046830974, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BYIT_CFD.UK", "name": "BYTES TECHNOLOGY GROUP PLC", "sector": "", "last_price": 290.6, "change_1d_pct": 0.1378359751895264, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -13.036712512419047, "volatility_20d_pct": 3710.24320963922, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BLND_CFD.UK", "name": "BRITISH LAND CO PLC", "sector": "", "last_price": 413.0, "change_1d_pct": 0.0, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 2.3259962538279444, "volatility_20d_pct": 2013.7372429692637, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CAR_CFD.US", "name": "Avis Budget Group Inc", "sector": "", "last_price": 118.35, "change_1d_pct": 1.587982832618029, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -5.933987675643548, "volatility_20d_pct": 4643.814201648793, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BRBY_CFD.UK", "name": "BURBERRY GROUP PLC", "sector": "", "last_price": 1174.5, "change_1d_pct": -0.550381033022862, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -4.69118971687319, "volatility_20d_pct": 4100.463229875871, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CE_CFD.US", "name": "Celanese Corporation", "sector": "", "last_price": 58.85, "change_1d_pct": 0.051003060183618665, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 28.07455092296376, "volatility_20d_pct": 6478.369286492251, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "FDX_CFD.US", "name": "FedEx Corporation", "sector": "", "last_price": 386.56, "change_1d_pct": 0.7427484298037745, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 19.68497947520138, "volatility_20d_pct": 2549.069205234816, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ABF_CFD.UK", "name": "ASSOCIATED BRITISH FOODS PLC", "sector": "", "last_price": 1976.5, "change_1d_pct": 0.48296898830706425, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -0.4789045745805742, "volatility_20d_pct": 1983.0157791154838, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "AGFB_CFD.BE", "name": "Agfa-Gevaert", "sector": "", "last_price": 0.49, "change_1d_pct": -2.0000000000000018, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -1.505557900661325, "volatility_20d_pct": 2568.590327331217, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}], "output_schema": {"selected_stocks": [{"symbol": "string", "mean_reversion_score": "integer 0-100", "selection_reason": "short, concrete, indicator-based"}], "rejected_common_reasons": ["string"]}}
Output JSON
{
  "selected_stocks": [
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Strong 1d% decline with moderate MA50 distance",
      "mean_reversion_score": 65
    },
    {
      "symbol": "UKW_CFD.UK",
      "selection_reason": "Sharp 1d% drop and significant negative MA50 divergence",
      "mean_reversion_score": 72
    },
    {
      "symbol": "CCC_CFD.UK",
      "selection_reason": "Negative 1d% change and near MA50 resistance",
      "mean_reversion_score": 58
    },
    {
      "symbol": "CAR_CFD.US",
      "selection_reason": "Negative  MA50 with mild 1d volatility",
      "mean_reversion_score": 62
    },
    {
      "symbol": "BRBY_CFD.UK",
      "selection_reason": "Negative 1d% with moderate MA50 gap",
      "mean_reversion_score": 59
    }
  ],
  "rejected_common_reasons": [
    "Missing MA200 data",
    "Extreme 20d volatility",
    "Unknown earnings proximity"
  ]
}
#602openrouteramazon/nova-premier-v12026-02-25T19:38:37.760285+00:00
System prompt
You are an Arena portfolio manager. You must follow the strategy rules strictly and output ONLY valid JSON. You are NOT allowed to invent prices/fundamentals/news/earnings. If a field is null/empty, treat it as unknown. Avoid overtrading: if changes are marginal, prefer HOLD. Do not churn.
User prompt
{"task": "stage2_portfolio_management", "region": "US", "strategy": {"key": "meanrev-v1", "name": "Two-Stage LLM Mean-Reversion (Arena v1)", "rules": {"max_positions": 10, "max_buys_per_run": 2, "avoid_overtrading": true, "max_sells_per_run": 2, "max_gross_leverage": 3.0, "fixed_position_size": 3000.0, "universe_symbols_eu": [], "universe_symbols_us": []}}, "portfolio_constraints": {"initial_equity": 10000.0, "max_positions": 10, "fixed_position_size": 3000.0, "max_gross_leverage": 3.0, "overtrading_rules": ["Max 2 SELL actions per run unless risk event forces more", "Max 2 BUY actions per run", "If no clear improvement vs current holdings, output HOLD for everything"]}, "current_portfolio": [{"symbol": "ADP_CFD.FR", "qty": 25.53191489361702, "avg_price": 117.5, "last_price": 117.314, "unrealized_pnl": -4.748936170212946, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "AKAM_CFD.US", "qty": 30.783438510081577, "avg_price": 97.455, "last_price": 100.275, "unrealized_pnl": 86.80929659843028, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.453, "last_price": 0.453, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "BRNL_CFD.NL", "qty": 0.0, "avg_price": 7.05, "last_price": 6.68, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 10.252904989747094, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "DSY_CFD.FR", "qty": 0.0, "avg_price": 17.881, "last_price": 16.752, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 0.0, "avg_price": 47.4, "last_price": 46.329, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "ESTC_CFD.US", "qty": 0.0, "avg_price": 58.085, "last_price": 55.355000000000004, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "EXE_CFD.FR", "qty": 80.42248612712115, "avg_price": 37.303, "last_price": 37.303, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 474.05, "last_price": 463.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 22.466300549176236, "avg_price": 400.6, "last_price": 414.2, "unrealized_pnl": 305.54168746879606, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "HMSO_CFD.UK", "qty": 8.600917431192661, "avg_price": 348.8, "last_price": 348.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "IPO_CFD.UK", "qty": 0.0, "avg_price": 57.7, "last_price": 57.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "KBCA_CFD.BE", "qty": 39.8406374501992, "avg_price": 75.3, "last_price": 75.4, "unrealized_pnl": 3.98406374502026, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 12.0, "avg_price": 250.0, "last_price": 250.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 14.577259475218659, "avg_price": 205.8, "last_price": 205.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 7.070469007777516, "avg_price": 424.3, "last_price": 416.0, "unrealized_pnl": -58.68489276455346, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "SGE_CFD.UK", "qty": 0.0, "avg_price": 795.4, "last_price": 813.4, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 32.48511099079589, "avg_price": 92.35, "last_price": 92.35, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "UMG_CFD.NL", "qty": 157.19151165837044, "avg_price": 19.085, "last_price": 18.665, "unrealized_pnl": -66.02043489651585, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 272.0, "last_price": 262.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "ZS_CFD.US", "qty": 0.0, "avg_price": 159.76, "last_price": 144.45, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}], "candidates": [{"symbol": "WIZZ_CFD.UK", "mean_reversion_score": 65, "selection_reason": "Strong 1d% decline with moderate MA50 distance"}, {"symbol": "UKW_CFD.UK", "mean_reversion_score": 72, "selection_reason": "Sharp 1d% drop and significant negative MA50 divergence"}, {"symbol": "CCC_CFD.UK", "mean_reversion_score": 58, "selection_reason": "Negative 1d% change and near MA50 resistance"}, {"symbol": "CAR_CFD.US", "mean_reversion_score": 62, "selection_reason": "Negative  MA50 with mild 1d volatility"}, {"symbol": "BRBY_CFD.UK", "mean_reversion_score": 59, "selection_reason": "Negative 1d% with moderate MA50 gap"}], "output_schema": {"actions": {"sell": [{"symbol": "string", "reason": "string"}], "hold": [{"symbol": "string", "reason": "string"}], "buy": [{"symbol": "string", "position_size": "number (currency amount)", "reason": "string"}]}, "portfolio_rationale": "string"}}
Output JSON
{
  "actions": {
    "buy": [
      {
        "reason": "Top candidate score 72",
        "symbol": "UKW_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "Second-highest candidate score 65",
        "symbol": "WIZZ_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Marginal price change -0.1%",
        "symbol": "ADP_CFD.FR"
      },
      {
        "reason": "Profitable position +2.9%",
        "symbol": "AKAM_CFD.US"
      },
      {
        "reason": "No position exists",
        "symbol": "BIG_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "BRNL_CFD.NL"
      },
      {
        "reason": "No price change",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "DSY_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "ERA_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "ESTC_CFD.US"
      },
      {
        "reason": "No price change",
        "symbol": "EXE_CFD.FR"
      },
      {
        "reason": "No position exists",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "Profitable position +3.4%",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "IPO_CFD.UK"
      },
      {
        "reason": "Marginal price change +0.1%",
        "symbol": "KBCA_CFD.BE"
      },
      {
        "reason": "No price change",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "SGE_CFD.UK"
      },
      {
        "reason": "No price change",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "WPP_CFD.UK"
      },
      {
        "reason": "No position exists",
        "symbol": "ZS_CFD.US"
      }
    ],
    "sell": [
      {
        "reason": "Score 58 < 60 and negative PnL",
        "symbol": "UMG_CFD.NL"
      },
      {
        "reason": "Score 58 < 60 and negative PnL",
        "symbol": "RMV_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Reduced underperforming positions and added top-scoring candidates within 2-buy limit"
}
Selection logs
#299stage12026-02-25T19:38:37.757393+00:00
{
  "selected_stocks": [
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Strong 1d% decline with moderate MA50 distance",
      "mean_reversion_score": 65
    },
    {
      "symbol": "UKW_CFD.UK",
      "selection_reason": "Sharp 1d% drop and significant negative MA50 divergence",
      "mean_reversion_score": 72
    },
    {
      "symbol": "CCC_CFD.UK",
      "selection_reason": "Negative 1d% change and near MA50 resistance",
      "mean_reversion_score": 58
    },
    {
      "symbol": "CAR_CFD.US",
      "selection_reason": "Negative  MA50 with mild 1d volatility",
      "mean_reversion_score": 62
    },
    {
      "symbol": "BRBY_CFD.UK",
      "selection_reason": "Negative 1d% with moderate MA50 gap",
      "mean_reversion_score": 59
    }
  ],
  "rejected_common_reasons": [
    "Missing MA200 data",
    "Extreme 20d volatility",
    "Unknown earnings proximity"
  ]
}