Arena run #597

meanrev-v1mistralaimistralai/mistral-large-2512EUsuccess
Arena
Run status
as_of: 2026-03-13T10:07:39.444598+00:00
started_at: 2026-03-13T12:41:10.494771+00:00
finished_at: 2026-03-13T12:41:39.610417+00:00
duration_ms: 29112
Inputs
{
  "as_of": "2026-03-13T10:07:39.444598+00:00",
  "dry_run": false,
  "selected": [
    {
      "symbol": "OCDO_CFD.UK",
      "selection_reason": "Large 1-day drop (-21.15%) with oversold conditions (distance_from_ma50_pct: -5.48%, distance_from_ma200_pct: -15.82%), high volatility (241.31%) suggests potential rebound.",
      "mean_reversion_score": 90
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Significant 1-day decline (-20.82%) with extreme oversold metrics (distance_from_ma50_pct: -24.30%, distance_from_ma200_pct: -37.68%), high volatility (153.59%).",
      "mean_reversion_score": 85
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "Sharp 1-day drop (-12.67%) with oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%), moderate volatility (87.83%).",
      "mean_reversion_score": 80
    },
    {
      "symbol": "ITRK_CFD.UK",
      "selection_reason": "Large 1-day decline (-12.26%) with oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%), moderate volatility (87.56%).",
      "mean_reversion_score": 75
    },
    {
      "symbol": "ANTO_CFD.UK",
      "selection_reason": "1-day drop (-7.46%) with near-term oversold conditions (distance_from_ma50_pct: -1.23%), high volatility (121.64%) and extended from ma200 (+36.79%) suggests pullback potential.",
      "mean_reversion_score": 70
    }
  ],
  "simulate_only": false,
  "strict_replay": false,
  "universe_symbols": [
    "JDW_CFD.UK",
    "UTG_CFD.UK",
    "KGF_CFD.UK",
    "RHIM_CFD.UK",
    "CBG_CFD.UK",
    "DOM_CFD.UK",
    "DLN_CFD.UK",
    "SGRO_CFD.UK",
    "OCDO_CFD.UK",
    "SMIN_CFD.UK",
    "CCC_CFD.UK",
    "ITV_CFD.UK",
    "IPR_CFD.PT",
    "ANTO_CFD.UK",
    "OSB_CFD.UK",
    "IPO_CFD.UK",
    "ATG_CFD.UK",
    "VIV_CFD.FR",
    "OLLI_CFD.US",
    "BME_CFD.UK",
    "ITRK_CFD.UK",
    "CTT_CFD.PT",
    "BYIT_CFD.UK",
    "ODET_CFD.FR",
    "XRAY_CFD.US",
    "PSN_CFD.UK",
    "FUTR_CFD.UK",
    "UBI_CFD.FR",
    "CAKE_CFD.US",
    "SAM_CFD.US",
    "DPLM_CFD.UK",
    "IP_CFD.US",
    "SEM_CFD.PT",
    "SMG_CFD.US",
    "IGG_CFD.UK",
    "REC_CFD.BE",
    "CTAS_CFD.US",
    "DKNG_CFD.US",
    "AAP_CFD.US",
    "EVR_CFD.US",
    "XRX_CFD.US"
  ]
}
Outputs
{
  "actions": {
    "buy": [
      {
        "reason": "Strong mean-reversion score (80) with sharp 1-day drop (-12.67%) and oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%).",
        "symbol": "BYIT_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "High mean-reversion score (75) with large 1-day decline (-12.26%) and oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%).",
        "symbol": "ITRK_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Moderate positive unrealized PnL (84.04); no strong mean-reversion signal to justify exit or increase.",
        "symbol": "ADS_CFD.DE"
      },
      {
        "reason": "Positive unrealized PnL (79.08); holding for further potential upside.",
        "symbol": "BLND_CFD.UK"
      },
      {
        "reason": "Strong positive unrealized PnL (130.65); no clear signal to exit or add.",
        "symbol": "EXPD_CFD.US"
      },
      {
        "reason": "Positive unrealized PnL (101.85); already held and performing well, no need to add further.",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Positive unrealized PnL (90.00); holding for further upside.",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; already held, no strong signal to add further despite high mean-reversion score.",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Strong positive unrealized PnL (374.89); holding for further upside.",
        "symbol": "OKTA_CFD.US"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Positive unrealized PnL (86.41); holding for further upside.",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "WIX_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "WKP_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Negative unrealized PnL (-150.84) with no signs of recovery; position has underperformed relative to other holdings and candidates.",
        "symbol": "VTY_CFD.UK"
      },
      {
        "reason": "Slight negative unrealized PnL (-20.10) with no improvement; better opportunities available in candidates with stronger mean-reversion signals.",
        "symbol": "EXM_CFD.BE"
      }
    ]
  },
  "portfolio_rationale": "Portfolio adjustments focus on reducing underperforming positions (VTY_CFD.UK, EXM_CFD.BE) to free up capital for high-conviction mean-reversion candidates (BYIT_CFD.UK, ITRK_CFD.UK). Existing holdings with positive PnL or neutral positions are retained to avoid overtrading. The strategy adheres to max_buys_per_run (2) and max_sells_per_run (2) constraints while targeting oversold assets with strong rebound potential."
}
Prompts & responses
#1179openroutermistralai/mistral-large-25122026-03-13T12:41:10.539392+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": "EU", "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": "JDW_CFD.UK", "name": "", "sector": "", "last_price": 748.5, "change_1d_pct": 9.750733137829904, "distance_from_ma200_pct": 6.242631058659898, "distance_from_ma50_pct": 5.290077328071208, "volatility_20d_pct": 98.2373545531062, "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": "UTG_CFD.UK", "name": "UNITE GROUP PLC/THE", "sector": "", "last_price": 567.5, "change_1d_pct": 3.4639927073837784, "distance_from_ma200_pct": -23.929923575376698, "distance_from_ma50_pct": -3.6875042216270137, "volatility_20d_pct": 73.84223442053181, "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": "KGF_CFD.UK", "name": "KINGFISHER PLC", "sector": "", "last_price": 347.0, "change_1d_pct": 2.6020106445890034, "distance_from_ma200_pct": 18.583930168759967, "distance_from_ma50_pct": 6.639688157278489, "volatility_20d_pct": 88.64906606382688, "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": "RHIM_CFD.UK", "name": "RHI MAGNESITA NV", "sector": "", "last_price": 2795.0, "change_1d_pct": 2.3809523809523725, "distance_from_ma200_pct": 6.811460460804897, "distance_from_ma50_pct": 10.895008018562113, "volatility_20d_pct": 141.33746334612064, "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": "CBG_CFD.UK", "name": "CLOSE BROTHERS GROUP PLC", "sector": "", "last_price": 497.8, "change_1d_pct": -5.89792060491493, "distance_from_ma200_pct": 15.793508864321094, "distance_from_ma50_pct": 3.592137485786795, "volatility_20d_pct": 116.76618625853061, "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": "DOM_CFD.UK", "name": "DOMINO'S PIZZA GROUP PLC", "sector": "", "last_price": 204.15, "change_1d_pct": 11.924342105263165, "distance_from_ma200_pct": -5.759626343727387, "distance_from_ma50_pct": 12.834440951357639, "volatility_20d_pct": 73.60557991984848, "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": "DLN_CFD.UK", "name": "DERWENT LONDON PLC", "sector": "", "last_price": 1953.0, "change_1d_pct": 10.401356698699837, "distance_from_ma200_pct": 5.069478604951705, "distance_from_ma50_pct": 12.150447212111025, "volatility_20d_pct": 115.39088732649292, "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": "SGRO_CFD.UK", "name": "SEGRO PLC", "sector": "", "last_price": 789.8, "change_1d_pct": 5.166444740346199, "distance_from_ma200_pct": 16.137238395282736, "distance_from_ma50_pct": 8.124180991500651, "volatility_20d_pct": 71.28658783635437, "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": "OCDO_CFD.UK", "name": "OCADO GROUP PLC", "sector": "", "last_price": 217.0, "change_1d_pct": -21.148255813953487, "distance_from_ma200_pct": -15.81606625159202, "distance_from_ma50_pct": -5.48311196636071, "volatility_20d_pct": 241.3119670937803, "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": "SMIN_CFD.UK", "name": "SMITHS GROUP PLC", "sector": "", "last_price": 2544.0, "change_1d_pct": 1.4333845019038671, "distance_from_ma200_pct": 14.948150770494873, "distance_from_ma50_pct": 4.167383226889343, "volatility_20d_pct": 72.718462979927, "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": 3126.0, "change_1d_pct": -1.821608040201006, "distance_from_ma200_pct": 22.396205247786227, "distance_from_ma50_pct": 6.426296215091432, "volatility_20d_pct": 111.01536155240576, "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": "ITV_CFD.UK", "name": "ITV PLC", "sector": "", "last_price": 86.0, "change_1d_pct": 3.92749244712991, "distance_from_ma200_pct": 7.871211807633016, "distance_from_ma50_pct": 5.417994606521215, "volatility_20d_pct": 139.7485078641958, "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": "IPR_CFD.PT", "name": "Impresa SGPS SA", "sector": "", "last_price": 0.191, "change_1d_pct": -1.5463917525773252, "distance_from_ma200_pct": 22.683623984327326, "distance_from_ma50_pct": -0.44824351089336467, "volatility_20d_pct": 231.53569936782804, "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": "ANTO_CFD.UK", "name": "ANTOFAGASTA PLC", "sector": "", "last_price": 3707.0, "change_1d_pct": -7.463804293559662, "distance_from_ma200_pct": 36.7903871819252, "distance_from_ma50_pct": -1.2297285141753767, "volatility_20d_pct": 121.63746831360574, "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": "OSB_CFD.UK", "name": "OSB GROUP PLC", "sector": "", "last_price": 575.5, "change_1d_pct": -8.50556438791733, "distance_from_ma200_pct": 7.26309045372473, "distance_from_ma50_pct": -3.1605502163448818, "volatility_20d_pct": 83.79306172690484, "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": "IPO_CFD.UK", "name": "IP GROUP PLC", "sector": "", "last_price": 57.6, "change_1d_pct": -1.873935264054516, "distance_from_ma200_pct": 10.233643652522883, "distance_from_ma50_pct": -2.027486732888828, "volatility_20d_pct": 89.82123635439407, "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": 305.0, "change_1d_pct": 4.2735042735042805, "distance_from_ma200_pct": -30.344980756373573, "distance_from_ma50_pct": -1.1704016694101371, "volatility_20d_pct": 159.9931345477538, "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": "VIV_CFD.FR", "name": "Vivendi", "sector": "", "last_price": 1.92, "change_1d_pct": -6.9316529326224, "distance_from_ma200_pct": -30.215188010096995, "distance_from_ma50_pct": -14.843036200580128, "volatility_20d_pct": 53.79526654753, "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": "OLLI_CFD.US", "name": "OLLIE'S BARGAIN OUTLET HOLDI", "sector": "", "last_price": 107.77, "change_1d_pct": 2.912528647822765, "distance_from_ma200_pct": -11.640178670986955, "distance_from_ma50_pct": -2.7736177921482863, "volatility_20d_pct": 83.55761586158985, "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": "BME_CFD.UK", "name": "B&M EUROPEAN VALUE RETAIL SA", "sector": "", "last_price": 187.88, "change_1d_pct": 1.0107526881720341, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 7.318666981973787, "volatility_20d_pct": 3503.713036055361, "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": "ITRK_CFD.UK", "name": "INTERTEK GROUP PLC", "sector": "", "last_price": 4052.0, "change_1d_pct": -12.256388046773491, "distance_from_ma200_pct": -14.431208382751315, "distance_from_ma50_pct": -13.55643708647305, "volatility_20d_pct": 87.55966250200157, "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": "CTT_CFD.PT", "name": "CTT Correios de Portugal SA", "sector": "", "last_price": 6.71, "change_1d_pct": -5.890603085553991, "distance_from_ma200_pct": -8.192423754218382, "distance_from_ma50_pct": -5.514250309789337, "volatility_20d_pct": 54.96528242138245, "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": 300.4, "change_1d_pct": -12.674418604651173, "distance_from_ma200_pct": -28.03446775272175, "distance_from_ma50_pct": -14.34777426817815, "volatility_20d_pct": 87.82535981934274, "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": "ODET_CFD.FR", "name": "Compagnie de L'Odet SA", "sector": "", "last_price": 1140.0, "change_1d_pct": -3.5532994923857864, "distance_from_ma200_pct": -17.193205593562645, "distance_from_ma50_pct": -11.999374670644148, "volatility_20d_pct": 51.445562252087285, "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": "XRAY_CFD.US", "name": "DENTSPLY SIRONA INC", "sector": "", "last_price": 12.11, "change_1d_pct": -2.41740531829171, "distance_from_ma200_pct": -9.395960601084107, "distance_from_ma50_pct": -4.4229069326935155, "volatility_20d_pct": 135.08491367502785, "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": "PSN_CFD.UK", "name": "PERSIMMON PLC", "sector": "", "last_price": 1215.0, "change_1d_pct": -4.028436018957349, "distance_from_ma200_pct": -3.99267973814893, "distance_from_ma50_pct": -13.258759187610803, "volatility_20d_pct": 5068.302850888294, "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": "FUTR_CFD.UK", "name": "FUTURE PLC", "sector": "", "last_price": 423.6, "change_1d_pct": -20.82242990654205, "distance_from_ma200_pct": -37.68377383888033, "distance_from_ma50_pct": -24.301477407850992, "volatility_20d_pct": 153.59085037557008, "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": "UBI_CFD.FR", "name": "UBISoft Entertainment", "sector": "", "last_price": 4.008, "change_1d_pct": -1.4749262536873031, "distance_from_ma200_pct": -47.12882336568307, "distance_from_ma50_pct": -15.871843095110162, "volatility_20d_pct": 88.0386039515485, "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": "CAKE_CFD.US", "name": "The Cheesecake Factory", "sector": "", "last_price": 58.67, "change_1d_pct": -0.03407735559719516, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 6.101899055807025, "volatility_20d_pct": 3746.4534566597217, "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": "SAM_CFD.US", "name": "BOSTON BEER COMPANY INC-A", "sector": "", "last_price": 233.94, "change_1d_pct": 2.421084891204406, "distance_from_ma200_pct": 9.731712202153254, "distance_from_ma50_pct": 4.95214031662401, "volatility_20d_pct": 79.36221137969785, "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": "DPLM_CFD.UK", "name": "DIPLOMA PLC", "sector": "", "last_price": 5220.0, "change_1d_pct": -5.434782608695654, "distance_from_ma200_pct": 4.8180942215069855, "distance_from_ma50_pct": -4.664614313757087, "volatility_20d_pct": 82.77890721911896, "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": "IP_CFD.US", "name": "", "sector": "", "last_price": 36.26, "change_1d_pct": -2.3694130317716833, "distance_from_ma200_pct": -19.028520897162203, "distance_from_ma50_pct": -15.584899335108847, "volatility_20d_pct": 99.695270598368, "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": "SEM_CFD.PT", "name": "Semapa-Sociedade de Investimento e Gestao SGPS SA", "sector": "", "last_price": 21.7, "change_1d_pct": -11.247443762781185, "distance_from_ma200_pct": 17.581463092695905, "distance_from_ma50_pct": -2.3880296236586385, "volatility_20d_pct": 136.98539315944544, "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": "SMG_CFD.US", "name": "", "sector": "", "last_price": 60.81, "change_1d_pct": -4.671578617338135, "distance_from_ma200_pct": -0.7161790504770282, "distance_from_ma50_pct": -6.188388402595435, "volatility_20d_pct": 69.24280317479517, "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": "IGG_CFD.UK", "name": "IG GROUP HOLDINGS PLC", "sector": "", "last_price": 1356.0, "change_1d_pct": 3.1963470319634757, "distance_from_ma200_pct": 21.69129359819437, "distance_from_ma50_pct": 9.822701129829392, "volatility_20d_pct": 89.02278066392904, "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": "REC_CFD.BE", "name": "Recticel SA", "sector": "", "last_price": 9.8, "change_1d_pct": -8.411214953271017, "distance_from_ma200_pct": -0.022443941156069513, "distance_from_ma50_pct": -4.895550082197397, "volatility_20d_pct": 71.52218560526227, "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": "CTAS_CFD.US", "name": "CINTAS CORP", "sector": "", "last_price": 197.13, "change_1d_pct": -1.3856928464232143, "distance_from_ma200_pct": -2.5164580435790507, "distance_from_ma50_pct": 1.210334513170741, "volatility_20d_pct": 49.60168477525219, "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": "DKNG_CFD.US", "name": "DraftKings Inc", "sector": "", "last_price": 26.1, "change_1d_pct": 5.030181086519114, "distance_from_ma200_pct": -27.536433071150324, "distance_from_ma50_pct": -7.996221147473948, "volatility_20d_pct": 116.9283844890445, "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": "AAP_CFD.US", "name": "Advance Auto Parts Inc", "sector": "", "last_price": 53.67, "change_1d_pct": 7.254196642685851, "distance_from_ma200_pct": 1.5046019391218302, "distance_from_ma50_pct": 8.765700806167253, "volatility_20d_pct": 99.65303829765425, "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": "EVR_CFD.US", "name": "Evercore Partners Inc", "sector": "", "last_price": 322.28, "change_1d_pct": 0.9744023561111481, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -8.484519776578203, "volatility_20d_pct": 4416.9338688993075, "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": "XRX_CFD.US", "name": "Xerox Corp", "sector": "", "last_price": 1.74, "change_1d_pct": -7.4468085106382915, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -20.85920923018666, "volatility_20d_pct": 8133.737948232948, "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": "OCDO_CFD.UK",
      "selection_reason": "Large 1-day drop (-21.15%) with oversold conditions (distance_from_ma50_pct: -5.48%, distance_from_ma200_pct: -15.82%), high volatility (241.31%) suggests potential rebound.",
      "mean_reversion_score": 90
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Significant 1-day decline (-20.82%) with extreme oversold metrics (distance_from_ma50_pct: -24.30%, distance_from_ma200_pct: -37.68%), high volatility (153.59%).",
      "mean_reversion_score": 85
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "Sharp 1-day drop (-12.67%) with oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%), moderate volatility (87.83%).",
      "mean_reversion_score": 80
    },
    {
      "symbol": "ITRK_CFD.UK",
      "selection_reason": "Large 1-day decline (-12.26%) with oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%), moderate volatility (87.56%).",
      "mean_reversion_score": 75
    },
    {
      "symbol": "ANTO_CFD.UK",
      "selection_reason": "1-day drop (-7.46%) with near-term oversold conditions (distance_from_ma50_pct: -1.23%), high volatility (121.64%) and extended from ma200 (+36.79%) suggests pullback potential.",
      "mean_reversion_score": 70
    }
  ],
  "rejected_common_reasons": [
    "No earnings date confirmation (unknown risk of binary events)",
    "Sector concentration (unknown sectors, assumed diverse)",
    "Insufficient deviation from mean (e.g., <5% from ma50/ma200)",
    "Low volatility (reduced mean-reversion potential)",
    "Missing or unreliable data (e.g., null distance_from_ma200_pct)"
  ]
}
#1180openroutermistralai/mistral-large-25122026-03-13T12:41:22.258330+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": "EU", "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": "ACM_CFD.US", "qty": 0.0, "avg_price": 88.42, "last_price": 97.88, "unrealized_pnl": 0.0, "opened_at": "2026-02-15T10:57:15.913854+00:00"}, {"symbol": "ADS_CFD.DE", "qty": 21.873860736419978, "avg_price": 137.15, "last_price": 140.992, "unrealized_pnl": 84.03937294932521, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "AIR_CFD.DE", "qty": 0.0, "avg_price": 200.984, "last_price": 187.12, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "AMCX_CFD.US", "qty": 0.0, "avg_price": 7.5, "last_price": 7.365, "unrealized_pnl": -53.999999999999915, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "AMH_CFD.US", "qty": 0.0, "avg_price": 29.595, "last_price": 29.485, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "ATG_CFD.UK", "qty": 0.0, "avg_price": 296.0, "last_price": 296.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "ATO_CFD.FR", "qty": 0.0, "avg_price": 35.106, "last_price": 38.024, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+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-28T10:51:05.818250+00:00"}, {"symbol": "BLND_CFD.UK", "qty": 8.237232289950576, "avg_price": 364.2, "last_price": 373.8, "unrealized_pnl": 79.07742998352572, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "BRBY_CFD.UK", "qty": 0.0, "avg_price": 1070.84, "last_price": 1070.84, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 0.0, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-15T10:57:15.913854+00:00"}, {"symbol": "CBG_CFD.UK", "qty": 0.0, "avg_price": 458.2, "last_price": 458.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 350.24, "last_price": 350.055, "unrealized_pnl": -1.5846276838739344, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "DOM_CFD.UK", "qty": 0.0, "avg_price": 199.3, "last_price": 189.21, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+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": "ESTC_CFD.US", "qty": 0.0, "avg_price": 58.085, "last_price": 54.045, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "EVT_CFD.DE", "qty": 0.0, "avg_price": 4.502, "last_price": 4.353, "unrealized_pnl": 0.0, "opened_at": "2026-03-11T10:11:17.665074+00:00"}, {"symbol": "EXM_CFD.BE", "qty": 300.0, "avg_price": 10.0, "last_price": 9.933, "unrealized_pnl": -20.10000000000005, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "EXPD_CFD.US", "qty": 22.01269398686576, "avg_price": 136.285, "last_price": 142.22, "unrealized_pnl": 130.64533881204832, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 405.2, "last_price": 394.1, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "FRVIA_CFD.FR", "qty": 0.0, "avg_price": 12.709, "last_price": 12.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 7.488766849725412, "avg_price": 400.6, "last_price": 414.2, "unrealized_pnl": 101.84722915626534, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "GO_CFD.US", "qty": 0.0, "avg_price": 6.53, "last_price": 6.35, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "GRI_CFD.UK", "qty": 0.0, "avg_price": 189.6, "last_price": 189.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1409.0, "last_price": 1408.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "JEF_CFD.US", "qty": 0.0, "avg_price": 47.46, "last_price": 44.27, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T18:07:22.382508+00:00"}, {"symbol": "JMAT_CFD.UK", "qty": 0.0, "avg_price": 1976.9999999999998, "last_price": 1964.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 12.0, "avg_price": 250.0, "last_price": 257.5, "unrealized_pnl": 90.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "NA9_CFD.DE", "qty": 0.0, "avg_price": 48.578, "last_price": 53.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 14.684287812041115, "avg_price": 204.3, "last_price": 204.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "OKTA_CFD.US", "qty": 42.747221430607006, "avg_price": 70.18, "last_price": 78.95, "unrealized_pnl": 374.8931319464233, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 0.0, "avg_price": 151.91, "last_price": 151.91, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 424.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 0.0, "avg_price": 18.4, "last_price": 18.34, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 16.260162601626018, "avg_price": 184.5, "last_price": 184.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "TRST_CFD.UK", "qty": 0.0, "avg_price": 134.3, "last_price": 139.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "TUI1_CFD.DE", "qty": 0.0, "avg_price": 7.398000000000001, "last_price": 6.95, "unrealized_pnl": -181.67072181670738, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 32.48511099079589, "avg_price": 92.35, "last_price": 95.01, "unrealized_pnl": 86.41039523551741, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 7.015902712815715, "avg_price": 427.6, "last_price": 406.1, "unrealized_pnl": -150.84190832553787, "opened_at": "2026-03-11T10:11:17.665074+00:00"}, {"symbol": "WIX_CFD.UK", "qty": 13.3630289532294, "avg_price": 224.5, "last_price": 224.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 1087.0, "last_price": 1064.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "WKP_CFD.UK", "qty": 7.2727272727272725, "avg_price": 412.5, "last_price": 412.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 263.4, "last_price": 257.0, "unrealized_pnl": -72.89293849658289, "opened_at": "2026-02-18T09:36:37.284518+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": "OCDO_CFD.UK", "mean_reversion_score": 90, "selection_reason": "Large 1-day drop (-21.15%) with oversold conditions (distance_from_ma50_pct: -5.48%, distance_from_ma200_pct: -15.82%), high volatility (241.31%) suggests potential rebound."}, {"symbol": "FUTR_CFD.UK", "mean_reversion_score": 85, "selection_reason": "Significant 1-day decline (-20.82%) with extreme oversold metrics (distance_from_ma50_pct: -24.30%, distance_from_ma200_pct: -37.68%), high volatility (153.59%)."}, {"symbol": "BYIT_CFD.UK", "mean_reversion_score": 80, "selection_reason": "Sharp 1-day drop (-12.67%) with oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%), moderate volatility (87.83%)."}, {"symbol": "ITRK_CFD.UK", "mean_reversion_score": 75, "selection_reason": "Large 1-day decline (-12.26%) with oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%), moderate volatility (87.56%)."}, {"symbol": "ANTO_CFD.UK", "mean_reversion_score": 70, "selection_reason": "1-day drop (-7.46%) with near-term oversold conditions (distance_from_ma50_pct: -1.23%), high volatility (121.64%) and extended from ma200 (+36.79%) suggests pullback potential."}], "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": "Strong mean-reversion score (80) with sharp 1-day drop (-12.67%) and oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%).",
        "symbol": "BYIT_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "High mean-reversion score (75) with large 1-day decline (-12.26%) and oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%).",
        "symbol": "ITRK_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Moderate positive unrealized PnL (84.04); no strong mean-reversion signal to justify exit or increase.",
        "symbol": "ADS_CFD.DE"
      },
      {
        "reason": "Positive unrealized PnL (79.08); holding for further potential upside.",
        "symbol": "BLND_CFD.UK"
      },
      {
        "reason": "Strong positive unrealized PnL (130.65); no clear signal to exit or add.",
        "symbol": "EXPD_CFD.US"
      },
      {
        "reason": "Positive unrealized PnL (101.85); already held and performing well, no need to add further.",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Positive unrealized PnL (90.00); holding for further upside.",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; already held, no strong signal to add further despite high mean-reversion score.",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Strong positive unrealized PnL (374.89); holding for further upside.",
        "symbol": "OKTA_CFD.US"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Positive unrealized PnL (86.41); holding for further upside.",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "WIX_CFD.UK"
      },
      {
        "reason": "No unrealized PnL; no strong signal to exit or add.",
        "symbol": "WKP_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Negative unrealized PnL (-150.84) with no signs of recovery; position has underperformed relative to other holdings and candidates.",
        "symbol": "VTY_CFD.UK"
      },
      {
        "reason": "Slight negative unrealized PnL (-20.10) with no improvement; better opportunities available in candidates with stronger mean-reversion signals.",
        "symbol": "EXM_CFD.BE"
      }
    ]
  },
  "portfolio_rationale": "Portfolio adjustments focus on reducing underperforming positions (VTY_CFD.UK, EXM_CFD.BE) to free up capital for high-conviction mean-reversion candidates (BYIT_CFD.UK, ITRK_CFD.UK). Existing holdings with positive PnL or neutral positions are retained to avoid overtrading. The strategy adheres to max_buys_per_run (2) and max_sells_per_run (2) constraints while targeting oversold assets with strong rebound potential."
}
Selection logs
#587stage12026-03-13T12:41:22.246521+00:00
{
  "selected_stocks": [
    {
      "symbol": "OCDO_CFD.UK",
      "selection_reason": "Large 1-day drop (-21.15%) with oversold conditions (distance_from_ma50_pct: -5.48%, distance_from_ma200_pct: -15.82%), high volatility (241.31%) suggests potential rebound.",
      "mean_reversion_score": 90
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Significant 1-day decline (-20.82%) with extreme oversold metrics (distance_from_ma50_pct: -24.30%, distance_from_ma200_pct: -37.68%), high volatility (153.59%).",
      "mean_reversion_score": 85
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "Sharp 1-day drop (-12.67%) with oversold conditions (distance_from_ma50_pct: -14.35%, distance_from_ma200_pct: -28.03%), moderate volatility (87.83%).",
      "mean_reversion_score": 80
    },
    {
      "symbol": "ITRK_CFD.UK",
      "selection_reason": "Large 1-day decline (-12.26%) with oversold metrics (distance_from_ma50_pct: -13.56%, distance_from_ma200_pct: -14.43%), moderate volatility (87.56%).",
      "mean_reversion_score": 75
    },
    {
      "symbol": "ANTO_CFD.UK",
      "selection_reason": "1-day drop (-7.46%) with near-term oversold conditions (distance_from_ma50_pct: -1.23%), high volatility (121.64%) and extended from ma200 (+36.79%) suggests pullback potential.",
      "mean_reversion_score": 70
    }
  ],
  "rejected_common_reasons": [
    "No earnings date confirmation (unknown risk of binary events)",
    "Sector concentration (unknown sectors, assumed diverse)",
    "Insufficient deviation from mean (e.g., <5% from ma50/ma200)",
    "Low volatility (reduced mean-reversion potential)",
    "Missing or unreliable data (e.g., null distance_from_ma200_pct)"
  ]
}