Arena run #522

meanrev-v1x-aix-ai/grok-4.1-fastEUsuccess
Arena
Run status
as_of: 2026-03-09T10:19:46.508085+00:00
started_at: 2026-03-09T13:29:23.674858+00:00
finished_at: 2026-03-09T13:30:10.007330+00:00
duration_ms: 46331
Inputs
{
  "as_of": "2026-03-09T10:19:46.508085+00:00",
  "dry_run": false,
  "selected": [
    {
      "symbol": "BIG_CFD.FR",
      "selection_reason": "Extreme 1d drop -31% with -62% from MA50",
      "mean_reversion_score": 98
    },
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Sharp 1d decline -36% and -28% from MA50",
      "mean_reversion_score": 95
    },
    {
      "symbol": "MCG_CFD.UK",
      "selection_reason": "Strong 1d rise +22% and +29% from MA50",
      "mean_reversion_score": 92
    },
    {
      "symbol": "AML_CFD.UK",
      "selection_reason": "1d drop -14% with -26% from MA50",
      "mean_reversion_score": 87
    },
    {
      "symbol": "TRN_CFD.UK",
      "selection_reason": "1d decline -10% and -22% from MA50",
      "mean_reversion_score": 84
    }
  ],
  "simulate_only": false,
  "strict_replay": false,
  "universe_symbols": [
    "MCG_CFD.UK",
    "TRN_CFD.UK",
    "WIX_CFD.UK",
    "WIZZ_CFD.UK",
    "CBG_CFD.UK",
    "DOM_CFD.UK",
    "DLN_CFD.UK",
    "MDM_CFD.FR",
    "STAN_CFD.UK",
    "SMIN_CFD.UK",
    "SGRO_CFD.UK",
    "RHIM_CFD.UK",
    "AAL_CFD.UK",
    "BRBY_CFD.UK",
    "AALB_CFD.NL",
    "CFEB_CFD.BE",
    "LIO_CFD.UK",
    "CCL_CFD.UK",
    "GLO_CFD.FR",
    "BARC_CFD.UK",
    "BBY_CFD.UK",
    "BAMNB_CFD.NL",
    "AAF_CFD.UK",
    "LAND_CFD.UK",
    "AML_CFD.UK",
    "ERA_CFD.FR",
    "BEKB_CFD.BE",
    "MTU_CFD.FR",
    "MRN_CFD.FR",
    "PRU_CFD.UK",
    "WEIR_CFD.UK",
    "CIEN_CFD.US",
    "DGE_CFD.UK",
    "BIG_CFD.FR",
    "SSE_CFD.UK",
    "SAVE_CFD.FR",
    "SHOP_CFD.US",
    "WHA_CFD.NL",
    "DPLM_CFD.UK",
    "ATG_CFD.UK",
    "SVXY_CFD.ETF",
    "ARG_CFD.FR",
    "AAP_CFD.US",
    "BCP_CFD.PT",
    "ELIOR_CFD.FR",
    "ODET_CFD.FR",
    "CMBT_CFD.BE",
    "SLIGR_CFD.NL"
  ]
}
Outputs
{
  "actions": {
    "buy": [
      {
        "reason": "Top score 98: Extreme 1d drop -31% with -62% from MA50; clear oversold mean reversion opportunity",
        "symbol": "BIG_CFD.FR",
        "position_size": 3000
      },
      {
        "reason": "Score 95: Sharp 1d decline -36% and -28% from MA50; strong oversold mean reversion buy",
        "symbol": "WIZZ_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "ABF_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "LRCX_CFD.US"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "RVTY_CFD.US"
      },
      {
        "reason": "Flat PnL and candidate with reversion score 84; strong hold",
        "symbol": "TRN_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Unrealized loss of -134; lower priority vs extreme oversold candidates to avoid overtrading while reallocating",
        "symbol": "CCL_CFD.UK"
      },
      {
        "reason": "Unrealized loss of -82; lower priority vs extreme oversold candidates to avoid overtrading while reallocating",
        "symbol": "EZJ_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Current 10 positions at max exposure ~30k (3x leverage). Sold 2 small losers (max 2 sells) to free capital for top 2 extreme oversold candidates (max 2 buys), improving portfolio via stronger mean-reversion signals while adhering to limits and avoiding overtrading."
}
Prompts & responses
#1029openrouterx-ai/grok-4.1-fast2026-03-09T13:29:23.717995+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": "MCG_CFD.UK", "name": "MOBICO GROUP PLC", "sector": "", "last_price": 30.54, "change_1d_pct": 21.867517956903427, "distance_from_ma200_pct": 10.17176911546931, "distance_from_ma50_pct": 28.667486813057195, "volatility_20d_pct": 211.42235702559637, "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": "TRN_CFD.UK", "name": "TRAINLINE PLC", "sector": "", "last_price": 184.5, "change_1d_pct": -10.436893203883491, "distance_from_ma200_pct": -30.640271123232875, "distance_from_ma50_pct": -21.68611284670343, "volatility_20d_pct": 4790.53876131341, "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": "WIX_CFD.UK", "name": "WICKES GROUP PLC", "sector": "", "last_price": 247.5, "change_1d_pct": 15.984816533108393, "distance_from_ma200_pct": 18.647646929530737, "distance_from_ma50_pct": 10.198455173494668, "volatility_20d_pct": 84.25206447406164, "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": "WIZZ_CFD.UK", "name": "WIZZ AIR HOLDINGS PLC", "sector": "", "last_price": 927.0, "change_1d_pct": -35.84775086505191, "distance_from_ma200_pct": -24.62689704221145, "distance_from_ma50_pct": -27.882954735701524, "volatility_20d_pct": 155.34645385957995, "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": 1812.0, "change_1d_pct": -7.219662058371734, "distance_from_ma200_pct": -2.516182676819012, "distance_from_ma50_pct": 4.053563926444004, "volatility_20d_pct": 7353.720365167649, "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": "MDM_CFD.FR", "name": "Maisons Du Monde", "sector": "", "last_price": 1.27, "change_1d_pct": -8.36940836940837, "distance_from_ma200_pct": -36.15315199823039, "distance_from_ma50_pct": -20.637896341844453, "volatility_20d_pct": 87.34671623562612, "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": "STAN_CFD.UK", "name": "STANDARD CHARTERED PLC", "sector": "", "last_price": 1842.0, "change_1d_pct": 0.3541269408880332, "distance_from_ma200_pct": 31.43986196388351, "distance_from_ma50_pct": 4.292113036344269, "volatility_20d_pct": 75.84142956557304, "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": 2546.0, "change_1d_pct": 1.5880616072141196, "distance_from_ma200_pct": 15.133719154897696, "distance_from_ma50_pct": 4.317618549229563, "volatility_20d_pct": 72.74895841967528, "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": 838.6, "change_1d_pct": 14.312977099236646, "distance_from_ma200_pct": 23.337223471135403, "distance_from_ma50_pct": 14.881685289390623, "volatility_20d_pct": 61.79400737887707, "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": 2960.0, "change_1d_pct": 9.023941068139973, "distance_from_ma200_pct": 12.939755835694466, "distance_from_ma50_pct": 17.95826987098712, "volatility_20d_pct": 137.0123103901981, "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": "AAL_CFD.UK", "name": "ANGLO AMERICAN PLC", "sector": "", "last_price": 3016.0, "change_1d_pct": -11.346266901822455, "distance_from_ma200_pct": 10.42506326741024, "distance_from_ma50_pct": -11.47634619205935, "volatility_20d_pct": 91.79381510156583, "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": 1051.57, "change_1d_pct": -11.202965615078032, "distance_from_ma200_pct": -11.939302038764655, "distance_from_ma50_pct": -12.947860274183986, "volatility_20d_pct": 127.47353020558727, "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": "AALB_CFD.NL", "name": "Aalberts", "sector": "", "last_price": 32.04, "change_1d_pct": -4.529201430274144, "distance_from_ma200_pct": 3.6363283499052157, "distance_from_ma50_pct": 1.556244853247435, "volatility_20d_pct": 71.15751217185847, "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": "CFEB_CFD.BE", "name": "Compagnie d'Entreprises CFE SA", "sector": "", "last_price": 11.3, "change_1d_pct": -7.186858316221767, "distance_from_ma200_pct": 29.7735566280696, "distance_from_ma50_pct": 15.534598011169031, "volatility_20d_pct": 136.83766929182127, "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": "LIO_CFD.UK", "name": "LIONTRUST ASSET MANAGEMENT", "sector": "", "last_price": 270.0, "change_1d_pct": 7.784431137724557, "distance_from_ma200_pct": -17.148878096081223, "distance_from_ma50_pct": 4.440258238208905, "volatility_20d_pct": 138.52252179896075, "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": "CCL_CFD.UK", "name": "CARNIVAL PLC", "sector": "", "last_price": 1946.0, "change_1d_pct": -5.990338164251208, "distance_from_ma200_pct": 3.0409496965573712, "distance_from_ma50_pct": -6.311188398763845, "volatility_20d_pct": 156.5318659045592, "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": "GLO_CFD.FR", "name": "GL Events", "sector": "", "last_price": 30.9, "change_1d_pct": -1.2779552715655007, "distance_from_ma200_pct": 4.055732115421029, "distance_from_ma50_pct": -2.910974076287476, "volatility_20d_pct": 73.56081040135827, "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": "BARC_CFD.UK", "name": "BARCLAYS PLC", "sector": "", "last_price": 417.0, "change_1d_pct": -3.1583836507199314, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -11.088466885897342, "volatility_20d_pct": 3907.6753760892493, "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": "BBY_CFD.UK", "name": "BALFOUR BEATTY PLC", "sector": "", "last_price": 722.5, "change_1d_pct": -1.0951403148528382, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -1.628407265201648, "volatility_20d_pct": 2239.4661443465884, "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": "BAMNB_CFD.NL", "name": "Royal BAM Group NV", "sector": "", "last_price": 8.835, "change_1d_pct": -3.7581699346405095, "distance_from_ma200_pct": 22.775433518179746, "distance_from_ma50_pct": -0.03982567217133415, "volatility_20d_pct": 84.60174657339485, "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": "AAF_CFD.UK", "name": "AIRTEL AFRICA PLC", "sector": "", "last_price": 327.0, "change_1d_pct": -4.664723032069973, "distance_from_ma200_pct": 24.82519224320223, "distance_from_ma50_pct": -6.312315203190533, "volatility_20d_pct": 93.75503285760438, "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": "LAND_CFD.UK", "name": "LAND SECURITIES GROUP PLC", "sector": "", "last_price": 611.5, "change_1d_pct": -5.559845559845556, "distance_from_ma200_pct": 2.451497634819644, "distance_from_ma50_pct": -2.727851457873287, "volatility_20d_pct": 76.33674409886991, "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": "AML_CFD.UK", "name": "ASTON MARTIN LAGONDA GLOBAL", "sector": "", "last_price": 43.56, "change_1d_pct": -13.998025666337599, "distance_from_ma200_pct": -36.966946717100825, "distance_from_ma50_pct": -25.91080722522706, "volatility_20d_pct": 126.2717296514231, "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": "ERA_CFD.FR", "name": "Eramet", "sector": "", "last_price": 55.55, "change_1d_pct": -2.8846153846153966, "distance_from_ma200_pct": -0.3105894919285701, "distance_from_ma50_pct": -16.346232327670997, "volatility_20d_pct": 170.11489606781797, "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": "BEKB_CFD.BE", "name": "Bekaert", "sector": "", "last_price": 38.9, "change_1d_pct": -6.687775858760325, "distance_from_ma200_pct": 2.533959431872246, "distance_from_ma50_pct": -5.804295711552898, "volatility_20d_pct": 54.153003583750895, "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": "MTU_CFD.FR", "name": "Manitou BF", "sector": "", "last_price": 20.05, "change_1d_pct": -6.088992974238883, "distance_from_ma200_pct": 1.8018159819204183, "distance_from_ma50_pct": -3.1699408588077627, "volatility_20d_pct": 73.08216454601505, "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": "MRN_CFD.FR", "name": "Mersen", "sector": "", "last_price": 24.607, "change_1d_pct": -4.624031007751938, "distance_from_ma200_pct": 4.266551525862816, "distance_from_ma50_pct": -3.996810167513032, "volatility_20d_pct": 57.40920257711812, "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": "PRU_CFD.UK", "name": "PRUDENTIAL PLC", "sector": "", "last_price": 1065.5, "change_1d_pct": -7.186411149825789, "distance_from_ma200_pct": 3.4232212649790705, "distance_from_ma50_pct": -7.391263610789867, "volatility_20d_pct": 71.530611412442, "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": "WEIR_CFD.UK", "name": "WEIR GROUP PLC/THE", "sector": "", "last_price": 3016.0, "change_1d_pct": -1.6949152542372836, "distance_from_ma200_pct": 15.684186619919394, "distance_from_ma50_pct": -0.307598656638286, "volatility_20d_pct": 124.47422864424635, "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": "CIEN_CFD.US", "name": "Ciena Corp", "sector": "", "last_price": 303.37, "change_1d_pct": -9.24673926050017, "distance_from_ma200_pct": 81.85731002004589, "distance_from_ma50_pct": 10.880199530996881, "volatility_20d_pct": 165.28670948773296, "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": "DGE_CFD.UK", "name": "DIAGEO PLC", "sector": "", "last_price": 1503.0, "change_1d_pct": -4.297994269340977, "distance_from_ma200_pct": -17.13860814362641, "distance_from_ma50_pct": -10.546906571570624, "volatility_20d_pct": 79.15893255350483, "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.311, "change_1d_pct": -31.34657836644592, "distance_from_ma200_pct": -71.72740123908528, "distance_from_ma50_pct": -61.93949481104367, "volatility_20d_pct": 294.7389443112979, "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": "SSE_CFD.UK", "name": "", "sector": "", "last_price": 2665.0, "change_1d_pct": 5.045329128892395, "distance_from_ma200_pct": 32.81821793486013, "distance_from_ma50_pct": 9.679068755976772, "volatility_20d_pct": 67.85485731094869, "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": "SAVE_CFD.FR", "name": "", "sector": "", "last_price": 59.6, "change_1d_pct": -1.9736842105263053, "distance_from_ma200_pct": -3.788652727159869, "distance_from_ma50_pct": -0.9944739633739319, "volatility_20d_pct": 59.91371274305013, "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": "SHOP_CFD.US", "name": "SHOPIFY INC - CLASS A", "sector": "", "last_price": 134.49, "change_1d_pct": 14.703624733475484, "distance_from_ma200_pct": -3.6860547805704913, "distance_from_ma50_pct": -3.1780130794992867, "volatility_20d_pct": 158.063076280182, "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": "WHA_CFD.NL", "name": "", "sector": "", "last_price": 20.6, "change_1d_pct": -4.629629629629628, "distance_from_ma200_pct": 15.254136770293748, "distance_from_ma50_pct": 0.799743205314396, "volatility_20d_pct": 54.899431440206634, "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": 5510.0, "change_1d_pct": 0.7312614259597838, "distance_from_ma200_pct": 11.035071455048428, "distance_from_ma50_pct": 0.39717925834363843, "volatility_20d_pct": 72.46279741195445, "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": 313.0, "change_1d_pct": 0.3205128205128194, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 0.8343803356850588, "volatility_20d_pct": 2871.9337920464413, "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": "SVXY_CFD.ETF", "name": "PROSHARES SHORT VIX ST FUTUR", "sector": "", "last_price": 48.15, "change_1d_pct": -3.815421494206961, "distance_from_ma200_pct": -1.3709741843902057, "distance_from_ma50_pct": -10.793686082703434, "volatility_20d_pct": 79.78689636404471, "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": "ARG_CFD.FR", "name": "ARGAN", "sector": "", "last_price": 65.9, "change_1d_pct": -1.6417910447761086, "distance_from_ma200_pct": 0.7025108008791303, "distance_from_ma50_pct": -1.2830507042607797, "volatility_20d_pct": 45.69256218887273, "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": 51.76, "change_1d_pct": 0.7984420642648482, "distance_from_ma200_pct": -1.6922755503219422, "distance_from_ma50_pct": 6.908574166790582, "volatility_20d_pct": 102.27640546670942, "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": "BCP_CFD.PT", "name": "Banco Comercial Portugues SA", "sector": "", "last_price": 0.791, "change_1d_pct": -6.721698113207541, "distance_from_ma200_pct": 1.260313254091705, "distance_from_ma50_pct": -11.209393170644088, "volatility_20d_pct": 62.534267192414575, "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": "ELIOR_CFD.FR", "name": "Elior Group SCA", "sector": "", "last_price": 2.534, "change_1d_pct": -2.837423312883447, "distance_from_ma200_pct": -5.872039463908962, "distance_from_ma50_pct": -8.662961280881243, "volatility_20d_pct": 54.486651821590684, "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": 1186.0, "change_1d_pct": -6.022187004754354, "distance_from_ma200_pct": -14.242558314843423, "distance_from_ma50_pct": -9.507464695664991, "volatility_20d_pct": 48.67270304500695, "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": "CMBT_CFD.BE", "name": "Euronav", "sector": "", "last_price": 11.34, "change_1d_pct": -7.804878048780495, "distance_from_ma200_pct": 30.107418933841966, "distance_from_ma50_pct": 8.273054331304074, "volatility_20d_pct": 77.43631274293911, "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": "SLIGR_CFD.NL", "name": "", "sector": "", "last_price": 13.2, "change_1d_pct": -3.9301310043668214, "distance_from_ma200_pct": 9.460859657495323, "distance_from_ma50_pct": 8.646804055488877, "volatility_20d_pct": 75.72544992772063, "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": "BIG_CFD.FR",
      "selection_reason": "Extreme 1d drop -31% with -62% from MA50",
      "mean_reversion_score": 98
    },
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Sharp 1d decline -36% and -28% from MA50",
      "mean_reversion_score": 95
    },
    {
      "symbol": "MCG_CFD.UK",
      "selection_reason": "Strong 1d rise +22% and +29% from MA50",
      "mean_reversion_score": 92
    },
    {
      "symbol": "AML_CFD.UK",
      "selection_reason": "1d drop -14% with -26% from MA50",
      "mean_reversion_score": 87
    },
    {
      "symbol": "TRN_CFD.UK",
      "selection_reason": "1d decline -10% and -22% from MA50",
      "mean_reversion_score": 84
    }
  ],
  "rejected_common_reasons": [
    "Insufficient 1d price deviation",
    "Proximity to MA50/MA200",
    "High volatility without extreme move",
    "Unknown earnings risk",
    "Non-EU symbols prioritized out"
  ]
}
#1030openrouterx-ai/grok-4.1-fast2026-03-09T13:29:43.153704+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": "ABF_CFD.UK", "qty": 1.6055659620016056, "avg_price": 1868.5, "last_price": 1868.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "AML_CFD.UK", "qty": 0.0, "avg_price": 39.92, "last_price": 42.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "ARCAD_CFD.NL", "qty": 0.0, "avg_price": 29.7, "last_price": 28.06, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.312, "last_price": 0.311, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "BXP_CFD.US", "qty": 0.0, "avg_price": 60.835, "last_price": 59.405, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T17:33:48.338981+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-25T17:57:28.313088+00:00"}, {"symbol": "CABO_CFD.US", "qty": 0.0, "avg_price": 94.6, "last_price": 96.44, "unrealized_pnl": 58.3509513742073, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "CAR_CFD.US", "qty": 0.0, "avg_price": 92.465, "last_price": 97.54, "unrealized_pnl": 164.65689720434767, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 1.5416238437821173, "avg_price": 1945.9999999999998, "last_price": 1858.65, "unrealized_pnl": -134.66084275436745, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "COIN_CFD.US", "qty": 0.0, "avg_price": 168.575, "last_price": 171.13, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "CO_CFD.FR", "qty": 0.0, "avg_price": 0.171, "last_price": 0.2196, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 350.79999999999995, "last_price": 350.055, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "DKNG_CFD.US", "qty": 0.0, "avg_price": 25.185000000000002, "last_price": 25.115000000000002, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "ESTC_CFD.US", "qty": 0.0, "avg_price": 58.085, "last_price": 55.28, "unrealized_pnl": -144.87389171042437, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "EXPO_CFD.US", "qty": 0.0, "avg_price": 66.815, "last_price": 70.025, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 7.403751233958539, "avg_price": 405.2, "last_price": 394.1, "unrealized_pnl": -82.18163869693953, "opened_at": "2026-03-08T10:05:58.226220+00:00"}, {"symbol": "FBIN_CFD.US", "qty": 0.0, "avg_price": 50.974999999999994, "last_price": 54.35, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "FICO_CFD.US", "qty": 0.0, "avg_price": 1208.505, "last_price": 1405.2800000000002, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "FLO_CFD.US", "qty": 0.0, "avg_price": 9.875, "last_price": 10.055, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 7.24287783679382, "avg_price": 414.2, "last_price": 414.2, "unrealized_pnl": 0.0, "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": "HAIN_CFD.US", "qty": 0.0, "avg_price": 0.8, "last_price": 0.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1275.0, "last_price": 1342.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HPP_CFD.US", "qty": 0.0, "avg_price": 7.59, "last_price": 7.47, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "ICG_CFD.UK", "qty": 0.0, "avg_price": 1700.0, "last_price": 1719.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "JUN3_CFD.DE", "qty": 0.0, "avg_price": 31.51, "last_price": 30.167, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "LMND_CFD.US", "qty": 0.0, "avg_price": 61.5, "last_price": 59.89, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "LPX_CFD.US", "qty": 0.0, "avg_price": 86.45, "last_price": 86.15, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "LRCX_CFD.US", "qty": 15.04966389083977, "avg_price": 199.34, "last_price": 199.34, "unrealized_pnl": 0.0, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "NET_CFD.US", "qty": 0.0, "avg_price": 176.96, "last_price": 164.32, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 13.824884792626728, "avg_price": 217.0, "last_price": 217.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "OKTA_CFD.US", "qty": 0.0, "avg_price": 70.18, "last_price": 80.05, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 19.74853531696399, "avg_price": 151.91, "last_price": 151.91, "unrealized_pnl": 0.0, "opened_at": "2026-03-07T10:14:47.113218+00:00"}, {"symbol": "PAYC_CFD.US", "qty": 0.0, "avg_price": 121.22, "last_price": 119.79, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "PROX_CFD.BE", "qty": 0.0, "avg_price": 6.98, "last_price": 7.68, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 417.16, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "RVTY_CFD.US", "qty": 32.86590709903593, "avg_price": 91.28, "last_price": 91.28, "unrealized_pnl": 0.0, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 0.0, "avg_price": 18.4, "last_price": 18.48, "unrealized_pnl": 13.043478260869868, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "THG_CFD.UK", "qty": 0.0, "avg_price": 34.98, "last_price": 34.98, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+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-18T09:36:37.284518+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 0.0, "avg_price": 92.35, "last_price": 94.79, "unrealized_pnl": 79.26367081754236, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 263.4, "last_price": 240.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+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": "BIG_CFD.FR", "mean_reversion_score": 98, "selection_reason": "Extreme 1d drop -31% with -62% from MA50"}, {"symbol": "WIZZ_CFD.UK", "mean_reversion_score": 95, "selection_reason": "Sharp 1d decline -36% and -28% from MA50"}, {"symbol": "MCG_CFD.UK", "mean_reversion_score": 92, "selection_reason": "Strong 1d rise +22% and +29% from MA50"}, {"symbol": "AML_CFD.UK", "mean_reversion_score": 87, "selection_reason": "1d drop -14% with -26% from MA50"}, {"symbol": "TRN_CFD.UK", "mean_reversion_score": 84, "selection_reason": "1d decline -10% and -22% from MA50"}], "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 score 98: Extreme 1d drop -31% with -62% from MA50; clear oversold mean reversion opportunity",
        "symbol": "BIG_CFD.FR",
        "position_size": 3000
      },
      {
        "reason": "Score 95: Sharp 1d decline -36% and -28% from MA50; strong oversold mean reversion buy",
        "symbol": "WIZZ_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "ABF_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "LRCX_CFD.US"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "Flat PnL; hold for mean reversion",
        "symbol": "RVTY_CFD.US"
      },
      {
        "reason": "Flat PnL and candidate with reversion score 84; strong hold",
        "symbol": "TRN_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Unrealized loss of -134; lower priority vs extreme oversold candidates to avoid overtrading while reallocating",
        "symbol": "CCL_CFD.UK"
      },
      {
        "reason": "Unrealized loss of -82; lower priority vs extreme oversold candidates to avoid overtrading while reallocating",
        "symbol": "EZJ_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Current 10 positions at max exposure ~30k (3x leverage). Sold 2 small losers (max 2 sells) to free capital for top 2 extreme oversold candidates (max 2 buys), improving portfolio via stronger mean-reversion signals while adhering to limits and avoiding overtrading."
}
Selection logs
#512stage12026-03-09T13:29:43.150365+00:00
{
  "selected_stocks": [
    {
      "symbol": "BIG_CFD.FR",
      "selection_reason": "Extreme 1d drop -31% with -62% from MA50",
      "mean_reversion_score": 98
    },
    {
      "symbol": "WIZZ_CFD.UK",
      "selection_reason": "Sharp 1d decline -36% and -28% from MA50",
      "mean_reversion_score": 95
    },
    {
      "symbol": "MCG_CFD.UK",
      "selection_reason": "Strong 1d rise +22% and +29% from MA50",
      "mean_reversion_score": 92
    },
    {
      "symbol": "AML_CFD.UK",
      "selection_reason": "1d drop -14% with -26% from MA50",
      "mean_reversion_score": 87
    },
    {
      "symbol": "TRN_CFD.UK",
      "selection_reason": "1d decline -10% and -22% from MA50",
      "mean_reversion_score": 84
    }
  ],
  "rejected_common_reasons": [
    "Insufficient 1d price deviation",
    "Proximity to MA50/MA200",
    "High volatility without extreme move",
    "Unknown earnings risk",
    "Non-EU symbols prioritized out"
  ]
}