Arena run #522
meanrev-v1 • x-ai • x-ai/grok-4.1-fast • EU • success
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
#1029 • openrouter • x-ai/grok-4.1-fast • 2026-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"
]
}#1030 • openrouter • x-ai/grok-4.1-fast • 2026-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
#512 • stage1 • 2026-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"
]
}