Arena run #1099
meanrev-v1 • minimax • minimax/minimax-m2.1 • EU • success
Run status
as_of: 2026-04-07T10:08:43.931517+00:00
started_at: 2026-04-07T11:58:02.344521+00:00
finished_at: 2026-04-07T11:58:53.290471+00:00
duration_ms: 50944
Inputs
{
"as_of": "2026-04-07T10:08:43.931517+00:00",
"dry_run": false,
"selected": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "Largest negative deviation at -38.63% 1d, -31.90% from MA50, extreme move suggests strong mean reversion potential",
"mean_reversion_score": 95
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative deviation at -36.80% 1d, -31.73% from MA50, high volatility 193% supports reversion opportunity",
"mean_reversion_score": 92
},
{
"symbol": "VIRI_CFD.FR",
"selection_reason": "Largest positive deviation at +32.26% 1d, +29.10% from MA50, extreme overextension likely to revert",
"mean_reversion_score": 88
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Strong negative move at -26.63% 1d, -22.13% from MA50, substantial deviation from mean",
"mean_reversion_score": 85
},
{
"symbol": "IWG_CFD.UK",
"selection_reason": "Notable negative deviation at -26.79% 1d, -22.14% from MA50, high volatility 154% enhances reversion potential",
"mean_reversion_score": 82
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"CRST_CFD.UK",
"RS1_CFD.UK",
"MSLH_CFD.UK",
"JUP_CFD.UK",
"BOY_CFD.UK",
"THG_CFD.UK",
"PAGE_CFD.UK",
"ICG_CFD.UK",
"JDW_CFD.UK",
"SHC_CFD.UK",
"PAG_CFD.UK",
"SAFE_CFD.UK",
"UTG_CFD.UK",
"OCDO_CFD.UK",
"CBG_CFD.UK",
"RSW_CFD.UK",
"VCT_CFD.UK",
"DLN_CFD.UK",
"TPK_CFD.UK",
"DOM_CFD.UK",
"HWDN_CFD.UK",
"ESNT_CFD.UK",
"BBY_CFD.UK",
"IEP_CFD.BE",
"BRNK_CFD.DE",
"SAMS_CFD.FR",
"IPO_CFD.UK",
"CMCX_CFD.UK",
"GROW_CFD.UK",
"VBK_CFD.DE",
"IWG_CFD.UK",
"VIRI_CFD.FR",
"WKP_CFD.UK",
"HAIN_CFD.US",
"UBI_CFD.FR",
"LTA_CFD.FR",
"ATG_CFD.UK",
"ROR_CFD.UK",
"XRX_CFD.US",
"AUTO_CFD.UK",
"PRU_CFD.UK",
"ABDN_CFD.UK",
"EXE_CFD.FR",
"TTK_CFD.DE",
"EXPN_CFD.UK",
"MOH_CFD.US",
"S30_CFD.FR"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Highest mean reversion score 88 among non-held candidates; largest positive deviation at +32.26% 1d, +29.10% from MA50 suggests overextension about to reverse downward",
"symbol": "VIRI_CFD.FR",
"position_size": 3000
}
],
"hold": [
{
"reason": "Already held with highest mean reversion score 95; strong negative deviation at -38.63% 1d suggests continued mean reversion potential, maintain position",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Already held with high mean reversion score 92; maintain position",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Flat performance, maintain for now",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "In profit (+141.45), maintain position",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Maintain position",
"symbol": "ICG_CFD.UK"
},
{
"reason": "In profit (+36.85), maintain position",
"symbol": "IHG_CFD.UK"
},
{
"reason": "Mean reversion candidate score 82, high volatility 154%, maintain for reversion opportunity",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Maintain position",
"symbol": "MCG_CFD.UK"
}
],
"sell": [
{
"reason": "Significant negative deviation from mean (-87.29 unrealized loss), extreme underperformance suggests mean reversion target; close to free capital for higher-conviction mean reversion candidates",
"symbol": "GO_CFD.US"
}
]
},
"portfolio_rationale": "Mean reversion strategy: Portfolio at max 10 positions. Closing GO_CFD.US (significant loser with -87.29 unrealized loss) to free capital. Adding VIRI_CFD.FR (score 88) as highest-conviction mean reversion buy candidate - extreme positive deviation likely to reverse downward. Holding existing mean reversion leaders AUTO (95) and PAGE (92) despite being at max positions as they show strongest reversion potential. Keeping IWG despite score 82 as it also shows high volatility 154% enhancing reversion potential. Adhering to max 2 buys and 2 sells per run to avoid overtrading."
}Prompts & responses
#2126 • openrouter • minimax/minimax-m2.1 • 2026-04-07T11:58:02.389200+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": "CRST_CFD.UK", "name": "CREST NICHOLSON HOLDINGS", "sector": "", "last_price": 167.8, "change_1d_pct": 24.85119047619049, "distance_from_ma200_pct": 1.2720261375977815, "distance_from_ma50_pct": 17.82963155418549, "volatility_20d_pct": 158.46878099582966, "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": "RS1_CFD.UK", "name": "RS GROUP PLC", "sector": "", "last_price": 725.5, "change_1d_pct": 23.91118701964132, "distance_from_ma200_pct": 26.42587431420933, "distance_from_ma50_pct": 23.74236481466445, "volatility_20d_pct": 102.67597620645313, "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": "MSLH_CFD.UK", "name": "MARSHALLS PLC", "sector": "", "last_price": 179.0, "change_1d_pct": 2.052451539338662, "distance_from_ma200_pct": -18.41965657865713, "distance_from_ma50_pct": 4.539832012082234, "volatility_20d_pct": 102.90810964969117, "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": "JUP_CFD.UK", "name": "", "sector": "", "last_price": 193.6, "change_1d_pct": 22.06809583858764, "distance_from_ma200_pct": 57.65825374753912, "distance_from_ma50_pct": 19.274691586205538, "volatility_20d_pct": 96.15961444303547, "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": "BOY_CFD.UK", "name": "BODYCOTE PLC", "sector": "", "last_price": 775.4, "change_1d_pct": 24.163330664531625, "distance_from_ma200_pct": 28.652243313347768, "distance_from_ma50_pct": 18.63612217470385, "volatility_20d_pct": 103.46484337510964, "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": "THG_CFD.UK", "name": "THG PLC", "sector": "", "last_price": 34.98, "change_1d_pct": -21.463852716659193, "distance_from_ma200_pct": 2.6990050116409536, "distance_from_ma50_pct": -18.650784422253118, "volatility_20d_pct": 150.5308117928466, "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": "PAGE_CFD.UK", "name": "PAGEGROUP PLC", "sector": "", "last_price": 152.7, "change_1d_pct": -36.79635761589404, "distance_from_ma200_pct": -40.61156091058385, "distance_from_ma50_pct": -31.72721647345812, "volatility_20d_pct": 193.22753953431183, "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": "ICG_CFD.UK", "name": "ICG Plc", "sector": "", "last_price": 1693.0, "change_1d_pct": -15.18545979199647, "distance_from_ma200_pct": -16.18296530905513, "distance_from_ma50_pct": -12.256151916578562, "volatility_20d_pct": 73.10253575454833, "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": "JDW_CFD.UK", "name": "WETHERSPOON (J.D.) PLC", "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": "SHC_CFD.UK", "name": "SHAFTESBURY CAPITAL PLC", "sector": "", "last_price": 140.4, "change_1d_pct": -2.9045643153526868, "distance_from_ma200_pct": 0.26963533347688085, "distance_from_ma50_pct": -0.771073778544229, "volatility_20d_pct": 63.75522821252001, "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": "PAG_CFD.UK", "name": "PARAGON BANKING GROUP PLC", "sector": "", "last_price": 852.5, "change_1d_pct": -3.399433427762044, "distance_from_ma200_pct": -1.3404962254783492, "distance_from_ma50_pct": 0.699141440891915, "volatility_20d_pct": 71.52779356208148, "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": "SAFE_CFD.UK", "name": "SAFESTORE HOLDINGS PLC", "sector": "", "last_price": 708.0, "change_1d_pct": 0.14144271570013522, "distance_from_ma200_pct": 7.079918522466522, "distance_from_ma50_pct": -2.535991476029087, "volatility_20d_pct": 107.99712610776675, "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": 505.0, "change_1d_pct": -8.265213442325159, "distance_from_ma200_pct": -32.12786599325862, "distance_from_ma50_pct": -13.548388422126267, "volatility_20d_pct": 98.87339279796446, "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": 204.3, "change_1d_pct": -22.701475595913735, "distance_from_ma200_pct": -20.568439154277442, "distance_from_ma50_pct": -11.11950272166612, "volatility_20d_pct": 243.85373637169891, "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": 372.74, "change_1d_pct": -26.625984251968504, "distance_from_ma200_pct": -13.365429078084645, "distance_from_ma50_pct": -22.129222788055436, "volatility_20d_pct": 169.0552301316783, "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": "RSW_CFD.UK", "name": "RENISHAW PLC", "sector": "", "last_price": 4100.0, "change_1d_pct": 18.155619596541793, "distance_from_ma200_pct": 36.779911314574385, "distance_from_ma50_pct": 14.333028240759926, "volatility_20d_pct": 92.61568245477878, "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": "VCT_CFD.UK", "name": "VICTREX PLC", "sector": "", "last_price": 635.0, "change_1d_pct": -9.285714285714286, "distance_from_ma200_pct": -11.261564295119154, "distance_from_ma50_pct": -2.9181133396627645, "volatility_20d_pct": 130.4010909373053, "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": "TPK_CFD.UK", "name": "TRAVIS PERKINS PLC", "sector": "", "last_price": 601.57, "change_1d_pct": -1.21029986533977, "distance_from_ma200_pct": 0.5267641208837714, "distance_from_ma50_pct": -4.983077425595306, "volatility_20d_pct": 108.19399806448348, "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": 183.13, "change_1d_pct": -0.3102885138813294, "distance_from_ma200_pct": -15.070952368916624, "distance_from_ma50_pct": 1.0777282376278619, "volatility_20d_pct": 87.92203351330001, "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": "HWDN_CFD.UK", "name": "HOWDEN JOINERY GROUP PLC", "sector": "", "last_price": 843.0, "change_1d_pct": -2.686229466563539, "distance_from_ma200_pct": 2.9144756901175572, "distance_from_ma50_pct": 0.6796292983215046, "volatility_20d_pct": 44.16384759940265, "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": "ESNT_CFD.UK", "name": "ESSENTRA PLC", "sector": "", "last_price": 90.3, "change_1d_pct": -5.445026178010471, "distance_from_ma200_pct": -10.472044325756846, "distance_from_ma50_pct": -8.39611023305734, "volatility_20d_pct": 6047.44391622699, "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": 759.18, "change_1d_pct": 5.222453222453205, "distance_from_ma200_pct": 33.313724414201815, "distance_from_ma50_pct": 8.832962232591, "volatility_20d_pct": 54.25956465831767, "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": "IEP_CFD.BE", "name": "IEP Invest NV", "sector": "", "last_price": 5.4, "change_1d_pct": 0.0, "distance_from_ma200_pct": 0.9951765451794659, "distance_from_ma50_pct": 0.5657756042326989, "volatility_20d_pct": 138.39532879660115, "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": "BRNK_CFD.DE", "name": "Branicks Group AG", "sector": "", "last_price": 1.355, "change_1d_pct": 8.226837060702863, "distance_from_ma200_pct": -28.463954808225324, "distance_from_ma50_pct": -20.11178454354644, "volatility_20d_pct": 191.00170149364772, "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": "SAMS_CFD.FR", "name": "", "sector": "", "last_price": 124.0, "change_1d_pct": 2.0576131687242816, "distance_from_ma200_pct": -7.174494545472221, "distance_from_ma50_pct": 0.7489711011326339, "volatility_20d_pct": 62.75863980857495, "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": "CMCX_CFD.UK", "name": "CMC MARKETS PLC", "sector": "", "last_price": 336.5, "change_1d_pct": 6.487341772151889, "distance_from_ma200_pct": 33.727269096422944, "distance_from_ma50_pct": 13.399699398122245, "volatility_20d_pct": 207.2492443353413, "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": "GROW_CFD.UK", "name": "MOLTEN VENTURES PLC", "sector": "", "last_price": 465.0, "change_1d_pct": 1.572739187418093, "distance_from_ma200_pct": 22.569628774815076, "distance_from_ma50_pct": -4.275686024250158, "volatility_20d_pct": 115.72658030340939, "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": "VBK_CFD.DE", "name": "VERBIO Vereinigte BioEnergie AG", "sector": "", "last_price": 43.815, "change_1d_pct": -3.76674719964859, "distance_from_ma200_pct": 134.95899143792593, "distance_from_ma50_pct": 43.44062379893234, "volatility_20d_pct": 113.13600852659475, "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": "IWG_CFD.UK", "name": "IWG PLC", "sector": "", "last_price": 177.0, "change_1d_pct": -26.786896095301127, "distance_from_ma200_pct": -17.645939421376646, "distance_from_ma50_pct": -22.14236071400294, "volatility_20d_pct": 154.02502086657427, "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": "VIRI_CFD.FR", "name": "VIRIDIEN", "sector": "", "last_price": 127.1, "change_1d_pct": 32.258064516129025, "distance_from_ma200_pct": 86.88026988392838, "distance_from_ma50_pct": 29.097132641971314, "volatility_20d_pct": 297.97668648307325, "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": "WKP_CFD.UK", "name": "WORKSPACE GROUP PLC", "sector": "", "last_price": 423.0, "change_1d_pct": 3.6764705882353033, "distance_from_ma200_pct": 1.8640028868691871, "distance_from_ma50_pct": 5.808194506978848, "volatility_20d_pct": 70.2233148398582, "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": "HAIN_CFD.US", "name": "The Hain Celestial Group Inc", "sector": "", "last_price": 0.83, "change_1d_pct": 27.692307692307683, "distance_from_ma200_pct": -36.18330001537752, "distance_from_ma50_pct": -2.9920523609163197, "volatility_20d_pct": 178.14656506500853, "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.105, "change_1d_pct": 3.4265558075082136, "distance_from_ma200_pct": -42.553989454004004, "distance_from_ma50_pct": -0.8204959700021108, "volatility_20d_pct": 107.20527616761109, "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": "LTA_CFD.FR", "name": "ALTAMIR", "sector": "", "last_price": 24.3, "change_1d_pct": -4.929577464788726, "distance_from_ma200_pct": -14.049752813455784, "distance_from_ma50_pct": -12.866748516941861, "volatility_20d_pct": 84.77436865385725, "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": 326.5, "change_1d_pct": 12.006861063464846, "distance_from_ma200_pct": -24.987260470422935, "distance_from_ma50_pct": 5.84429056770146, "volatility_20d_pct": 172.45012969704524, "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": "ROR_CFD.UK", "name": "ROTORK PLC", "sector": "", "last_price": 309.4, "change_1d_pct": -1.976935749588138, "distance_from_ma200_pct": -5.349048328121276, "distance_from_ma50_pct": -9.294951475437518, "volatility_20d_pct": 6791.987772084985, "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.24, "change_1d_pct": -2.3622047244094557, "distance_from_ma200_pct": -61.24333869883887, "distance_from_ma50_pct": -30.555555555555557, "volatility_20d_pct": 137.27800610777865, "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": "AUTO_CFD.UK", "name": "AUTOTRADER GROUP PLC", "sector": "", "last_price": 490.4, "change_1d_pct": -38.63326367424575, "distance_from_ma200_pct": -37.426260695289436, "distance_from_ma50_pct": -31.896720766000808, "volatility_20d_pct": 130.06763966702516, "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": 1088.5, "change_1d_pct": 3.56803044719316, "distance_from_ma200_pct": 3.8457610441779533, "distance_from_ma50_pct": -2.7186408601012735, "volatility_20d_pct": 107.76980419166637, "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": "ABDN_CFD.UK", "name": "Aberdeen Group Plc", "sector": "", "last_price": 193.2, "change_1d_pct": -11.780821917808225, "distance_from_ma200_pct": 1.3805491026614547, "distance_from_ma50_pct": -6.772144752169284, "volatility_20d_pct": 87.08429925175024, "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": "EXE_CFD.FR", "name": "Exel Industries SA", "sector": "", "last_price": 32.97, "change_1d_pct": -4.710982658959539, "distance_from_ma200_pct": -13.640640290347672, "distance_from_ma50_pct": -10.965958589044034, "volatility_20d_pct": 87.01047353695816, "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": "TTK_CFD.DE", "name": "TAKKT AG", "sector": "", "last_price": 2.555, "change_1d_pct": 6.458333333333344, "distance_from_ma200_pct": -41.481558674757714, "distance_from_ma50_pct": -18.06275334804248, "volatility_20d_pct": 128.96417437650825, "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": "EXPN_CFD.UK", "name": "EXPERIAN PLC", "sector": "", "last_price": 2630.0, "change_1d_pct": -2.66469282013323, "distance_from_ma200_pct": -23.735371889742517, "distance_from_ma50_pct": -3.814856398872113, "volatility_20d_pct": 116.50608780776388, "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": "MOH_CFD.US", "name": "", "sector": "", "last_price": 144.74, "change_1d_pct": 8.33832335329343, "distance_from_ma200_pct": -16.760766566973974, "distance_from_ma50_pct": -3.741537315616561, "volatility_20d_pct": 85.67922753915235, "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": "S30_CFD.FR", "name": "", "sector": "", "last_price": 0.546, "change_1d_pct": -4.712041884816742, "distance_from_ma200_pct": -53.41336678014692, "distance_from_ma50_pct": -34.30393454457946, "volatility_20d_pct": 136.14897695621627, "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": "AUTO_CFD.UK",
"selection_reason": "Largest negative deviation at -38.63% 1d, -31.90% from MA50, extreme move suggests strong mean reversion potential",
"mean_reversion_score": 95
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative deviation at -36.80% 1d, -31.73% from MA50, high volatility 193% supports reversion opportunity",
"mean_reversion_score": 92
},
{
"symbol": "VIRI_CFD.FR",
"selection_reason": "Largest positive deviation at +32.26% 1d, +29.10% from MA50, extreme overextension likely to revert",
"mean_reversion_score": 88
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Strong negative move at -26.63% 1d, -22.13% from MA50, substantial deviation from mean",
"mean_reversion_score": 85
},
{
"symbol": "IWG_CFD.UK",
"selection_reason": "Notable negative deviation at -26.79% 1d, -22.14% from MA50, high volatility 154% enhances reversion potential",
"mean_reversion_score": 82
}
],
"rejected_common_reasons": [
"Insufficient deviation from moving averages for mean reversion signal",
"Price movement within normal range (<10% from MA50)",
"Lower volatility reducing mean reversion probability",
"Moderate daily change not indicating significant dislocation"
]
}#2127 • openrouter • minimax/minimax-m2.1 • 2026-04-07T11:58:28.398598+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": 0.0, "avg_price": 1868.5, "last_price": 1849.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "AEO_CFD.US", "qty": 0.0, "avg_price": 22.265, "last_price": 18.64, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T21:11:27.888829+00:00"}, {"symbol": "AGFB_CFD.BE", "qty": 0.0, "avg_price": 0.465, "last_price": 0.452, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T21:11:27.888829+00:00"}, {"symbol": "AML_CFD.UK", "qty": 0.0, "avg_price": 36.92, "last_price": 36.04, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "ATG_CFD.UK", "qty": 0.0, "avg_price": 296.0, "last_price": 326.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "ATO_CFD.FR", "qty": 0.0, "avg_price": 40.34, "last_price": 39.505, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "AUTO_CFD.UK", "qty": 18.64125932062966, "avg_price": 482.79999999999995, "last_price": 482.8, "unrealized_pnl": 1.0596329116554933e-12, "opened_at": "2026-03-19T18:04:14.272849+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.453, "last_price": 0.296, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "BTRW_CFD.UK", "qty": 0.0, "avg_price": 250.8, "last_price": 272.44, "unrealized_pnl": 0.0, "opened_at": "2026-03-23T18:04:09.108429+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 20.505809979494188, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "CBG_CFD.UK", "qty": 0.0, "avg_price": 342.91999999999996, "last_price": 342.92, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T18:17:31.188931+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 0.0, "avg_price": 1945.9999999999998, "last_price": 1989.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "CRST_CFD.UK", "qty": 0.0, "avg_price": 118.83, "last_price": 118.83, "unrealized_pnl": 0.0, "opened_at": "2026-03-23T10:03:51.599067+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 349.265, "last_price": 365.38, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "DKNG_CFD.US", "qty": 0.0, "avg_price": 25.28, "last_price": 24.91, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "DSY_CFD.FR", "qty": 0.0, "avg_price": 17.881, "last_price": 17.133, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "DT_CFD.US", "qty": 0.0, "avg_price": 34.105000000000004, "last_price": 35.864999999999995, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 0.0, "avg_price": 47.4, "last_price": 48.88, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 10.55594651653765, "avg_price": 284.2, "last_price": 297.6, "unrealized_pnl": 141.44968332160488, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "GO_CFD.US", "qty": 0.0, "avg_price": 6.53, "last_price": 6.34, "unrealized_pnl": -87.28943338437996, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "HAIN_CFD.US", "qty": 0.0, "avg_price": 0.63, "last_price": 0.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-20T18:25:08.105367+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1409.0, "last_price": 1244.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HYQ_CFD.DE", "qty": 0.0, "avg_price": 82.3, "last_price": 77.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "ICG_CFD.UK", "qty": 2.0053475935828877, "avg_price": 1496.0, "last_price": 1496.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-31T17:54:15.044829+00:00"}, {"symbol": "IHG_CFD.UK", "qty": 23.032629558541267, "avg_price": 130.25, "last_price": 131.85, "unrealized_pnl": 36.8522072936659, "opened_at": "2026-04-02T18:04:13.492519+00:00"}, {"symbol": "INF_CFD.UK", "qty": 0.0, "avg_price": 795.2, "last_price": 785.85, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "IWG_CFD.UK", "qty": 34.84320557491289, "avg_price": 172.2, "last_price": 172.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-28T18:06:26.607078+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 0.0, "avg_price": 250.0, "last_price": 250.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "LMND_CFD.US", "qty": 0.0, "avg_price": 48.96, "last_price": 52.07, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T11:23:36.694156+00:00"}, {"symbol": "LMP_CFD.UK", "qty": 0.0, "avg_price": 181.3, "last_price": 181.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-23T10:03:51.599067+00:00"}, {"symbol": "LPE_CFD.FR", "qty": 0.0, "avg_price": 88.414, "last_price": 86.679, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "LXS_CFD.DE", "qty": 0.0, "avg_price": 13.14, "last_price": 13.24, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "MAN_CFD.US", "qty": 0.0, "avg_price": 25.68, "last_price": 27.94, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "MCG_CFD.UK", "qty": 172.51293847038528, "avg_price": 17.39, "last_price": 17.39, "unrealized_pnl": 0.0, "opened_at": "2026-03-31T10:31:52.715854+00:00"}, {"symbol": "MDB_CFD.US", "qty": 0.0, "avg_price": 252.01, "last_price": 263.69, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 0.0, "avg_price": 204.3, "last_price": 204.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 67.72009029345372, "avg_price": 132.9, "last_price": 132.9, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "PBB_CFD.DE", "qty": 0.0, "avg_price": 2.826, "last_price": 2.7640000000000002, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "PROX_CFD.BE", "qty": 0.0, "avg_price": 6.98, "last_price": 7.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-01T10:30:13.622938+00:00"}, {"symbol": "RCO_CFD.FR", "qty": 0.0, "avg_price": 44.34, "last_price": 43.58, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "RIVN_CFD.US", "qty": 0.0, "avg_price": 15.62, "last_price": 15.1, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+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-19T00:47:27.070066+00:00"}, {"symbol": "RSW_CFD.UK", "qty": 0.0, "avg_price": 3790.0000000000005, "last_price": 3790.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+00:00"}, {"symbol": "SGRO_CFD.UK", "qty": 0.0, "avg_price": 789.8, "last_price": 735.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 0.0, "avg_price": 27.2, "last_price": 34.9, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T10:00:02.317290+00:00"}, {"symbol": "TCAP_CFD.UK", "qty": 0.0, "avg_price": 247.99999999999997, "last_price": 255.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 0.0, "avg_price": 184.5, "last_price": 204.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "TRST_CFD.UK", "qty": 0.0, "avg_price": 151.8, "last_price": 224.82, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 0.0, "avg_price": 92.35, "last_price": 94.79, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 0.0, "avg_price": 461.2, "last_price": 461.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T18:24:41.570614+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 0.0, "avg_price": 385.0, "last_price": 354.1, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T18:24:41.570614+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 908.5, "last_price": 878.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 263.4, "last_price": 257.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "WTB_CFD.UK", "qty": 0.0, "avg_price": 2345.0, "last_price": 2308.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T18:17:31.188931+00:00"}], "candidates": [{"symbol": "AUTO_CFD.UK", "mean_reversion_score": 95, "selection_reason": "Largest negative deviation at -38.63% 1d, -31.90% from MA50, extreme move suggests strong mean reversion potential"}, {"symbol": "PAGE_CFD.UK", "mean_reversion_score": 92, "selection_reason": "Significant negative deviation at -36.80% 1d, -31.73% from MA50, high volatility 193% supports reversion opportunity"}, {"symbol": "VIRI_CFD.FR", "mean_reversion_score": 88, "selection_reason": "Largest positive deviation at +32.26% 1d, +29.10% from MA50, extreme overextension likely to revert"}, {"symbol": "CBG_CFD.UK", "mean_reversion_score": 85, "selection_reason": "Strong negative move at -26.63% 1d, -22.13% from MA50, substantial deviation from mean"}, {"symbol": "IWG_CFD.UK", "mean_reversion_score": 82, "selection_reason": "Notable negative deviation at -26.79% 1d, -22.14% from MA50, high volatility 154% enhances reversion 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": "Highest mean reversion score 88 among non-held candidates; largest positive deviation at +32.26% 1d, +29.10% from MA50 suggests overextension about to reverse downward",
"symbol": "VIRI_CFD.FR",
"position_size": 3000
}
],
"hold": [
{
"reason": "Already held with highest mean reversion score 95; strong negative deviation at -38.63% 1d suggests continued mean reversion potential, maintain position",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Already held with high mean reversion score 92; maintain position",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Flat performance, maintain for now",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "In profit (+141.45), maintain position",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Maintain position",
"symbol": "ICG_CFD.UK"
},
{
"reason": "In profit (+36.85), maintain position",
"symbol": "IHG_CFD.UK"
},
{
"reason": "Mean reversion candidate score 82, high volatility 154%, maintain for reversion opportunity",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Maintain position",
"symbol": "MCG_CFD.UK"
}
],
"sell": [
{
"reason": "Significant negative deviation from mean (-87.29 unrealized loss), extreme underperformance suggests mean reversion target; close to free capital for higher-conviction mean reversion candidates",
"symbol": "GO_CFD.US"
}
]
},
"portfolio_rationale": "Mean reversion strategy: Portfolio at max 10 positions. Closing GO_CFD.US (significant loser with -87.29 unrealized loss) to free capital. Adding VIRI_CFD.FR (score 88) as highest-conviction mean reversion buy candidate - extreme positive deviation likely to reverse downward. Holding existing mean reversion leaders AUTO (95) and PAGE (92) despite being at max positions as they show strongest reversion potential. Keeping IWG despite score 82 as it also shows high volatility 154% enhancing reversion potential. Adhering to max 2 buys and 2 sells per run to avoid overtrading."
}Selection logs
#1032 • stage1 • 2026-04-07T11:58:28.395732+00:00
{
"selected_stocks": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "Largest negative deviation at -38.63% 1d, -31.90% from MA50, extreme move suggests strong mean reversion potential",
"mean_reversion_score": 95
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative deviation at -36.80% 1d, -31.73% from MA50, high volatility 193% supports reversion opportunity",
"mean_reversion_score": 92
},
{
"symbol": "VIRI_CFD.FR",
"selection_reason": "Largest positive deviation at +32.26% 1d, +29.10% from MA50, extreme overextension likely to revert",
"mean_reversion_score": 88
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Strong negative move at -26.63% 1d, -22.13% from MA50, substantial deviation from mean",
"mean_reversion_score": 85
},
{
"symbol": "IWG_CFD.UK",
"selection_reason": "Notable negative deviation at -26.79% 1d, -22.14% from MA50, high volatility 154% enhances reversion potential",
"mean_reversion_score": 82
}
],
"rejected_common_reasons": [
"Insufficient deviation from moving averages for mean reversion signal",
"Price movement within normal range (<10% from MA50)",
"Lower volatility reducing mean reversion probability",
"Moderate daily change not indicating significant dislocation"
]
}