Arena run #1102
meanrev-v1 • x-ai • x-ai/grok-4.1-fast • EU • success
Run status
as_of: 2026-04-07T10:08:43.931517+00:00
started_at: 2026-04-07T12:03:06.166439+00:00
finished_at: 2026-04-07T12:04:20.228219+00:00
duration_ms: 74060
Inputs
{
"as_of": "2026-04-07T10:08:43.931517+00:00",
"dry_run": false,
"selected": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "Extreme 1d drop -38.6%, far below MA50 (-31.9%) and MA200 (-37.4%), high vol 130%",
"mean_reversion_score": 98
},
"symbol",
"PAGE_CFD.UK",
"mean_reversion_score",
96,
"selection_reason",
"Extreme 1d drop -36.8%, far below MA50 (-31.7%) and MA200 (-40.6%), high vol 193%",
"symbol",
"VIRI_CFD.FR",
"mean_reversion_score",
95,
"selection_reason",
"Extreme 1d rise +32.3%, far above MA50 (+29.1%) and MA200 (+86.9%), very high vol 298%",
"symbol",
"IWG_CFD.UK",
"mean_reversion_score",
93,
"selection_reason",
"Large 1d drop -26.8%, below MA50 (-22.1%) and MA200 (-17.6%), high vol 154%",
"symbol",
"CBG_CFD.UK",
"mean_reversion_score",
91,
"selection_reason",
"Large 1d drop -26.6%, below MA50 (-22.1%) and MA200 (-13.4%), high vol 169%"
],
"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": [],
"hold": [
{
"reason": "Top score 98: extreme 1d drop -38.6% far below MAs, high vol 130%, hold oversold for reversion",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Score 96: extreme 1d drop -36.8% far below MAs, high vol 193%, hold oversold",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Score 93: large 1d drop -26.8% below MAs, high vol 154%, hold oversold",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Score 91: large 1d drop -26.6% below MAs, high vol 169%, hold oversold",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Profitable (+141), stable, no sell signal",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "MCG_CFD.UK"
}
],
"sell": [
{
"reason": "Persistent unrealized loss (-163, -5.4%), not in top mean-reversion candidates, clear underperformer to replace",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Top mean-reversion score 95: extreme 1d rise +32.3%, far above MA50 (+29.1%) & MA200 (+86.9%), very high vol 298%, initiate short for expected pullback",
"symbol": "VIRI_CFD.FR"
}
]
},
"portfolio_rationale": "Current portfolio already positioned in top oversold mean-reversion candidates (AUTO, PAGE, IWG, CBG). Sell underperformer ESNT to manage risk and free slot. Add short VIRI (overbought candidate) for balanced mean-reversion exposure. 2 sells max respected, 9 positions total, gross leverage ~2.7 <3.0, fixed size adhered, minimal trading."
}Prompts & responses
#2132 • openrouter • x-ai/grok-4.1-fast • 2026-04-07T12:03:06.210100+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": "Extreme 1d drop -38.6%, far below MA50 (-31.9%) and MA200 (-37.4%), high vol 130%",
"mean_reversion_score": 98
},
"symbol",
"PAGE_CFD.UK",
"mean_reversion_score",
96,
"selection_reason",
"Extreme 1d drop -36.8%, far below MA50 (-31.7%) and MA200 (-40.6%), high vol 193%",
"symbol",
"VIRI_CFD.FR",
"mean_reversion_score",
95,
"selection_reason",
"Extreme 1d rise +32.3%, far above MA50 (+29.1%) and MA200 (+86.9%), very high vol 298%",
"symbol",
"IWG_CFD.UK",
"mean_reversion_score",
93,
"selection_reason",
"Large 1d drop -26.8%, below MA50 (-22.1%) and MA200 (-17.6%), high vol 154%",
"symbol",
"CBG_CFD.UK",
"mean_reversion_score",
91,
"selection_reason",
"Large 1d drop -26.6%, below MA50 (-22.1%) and MA200 (-13.4%), high vol 169%"
],
"rejected_common_reasons": [
"Insufficient |1d change| (<20%) for short-term mean reversion",
"Moderate distance from MA50 (<15% deviation)",
"Low 20d volatility (<100%) indicating limited overshoot"
]
}#2133 • openrouter • x-ai/grok-4.1-fast • 2026-04-07T12:03:25.990894+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": 1846.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "ADBE_CFD.US", "qty": 0.0, "avg_price": 249.47, "last_price": 249.47, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "AMCX_CFD.US", "qty": 0.0, "avg_price": 7.07, "last_price": 6.93, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T18:18:58.833148+00:00"}, {"symbol": "AML_CFD.UK", "qty": 0.0, "avg_price": 39.78, "last_price": 39.78, "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": "AUTO_CFD.UK", "qty": 6.2137531068765535, "avg_price": 482.8, "last_price": 482.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-24T18:12:08.252730+00:00"}, {"symbol": "BEI_CFD.DE", "qty": 0.0, "avg_price": 72.36, "last_price": 73.18, "unrealized_pnl": 33.996683250414904, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.275, "last_price": 0.282, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "BLND_CFD.UK", "qty": 0.0, "avg_price": 364.2, "last_price": 361.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T10:41:24.306870+00:00"}, {"symbol": "BTRW_CFD.UK", "qty": 11.547344110854503, "avg_price": 259.8, "last_price": 259.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T10:00:02.317290+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": "CBG_CFD.UK", "qty": 8.748396127376648, "avg_price": 342.92, "last_price": 342.92, "unrealized_pnl": 0.0, "opened_at": "2026-03-18T17:58:33.497657+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 0.0, "avg_price": 1945.9999999999998, "last_price": 1858.65, "unrealized_pnl": 0.0, "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": "ESNT_CFD.UK", "qty": 31.413612565445025, "avg_price": 95.5, "last_price": 90.3, "unrealized_pnl": -163.35078534031422, "opened_at": "2026-03-20T10:26:40.341409+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": "EVT_CFD.DE", "qty": 0.0, "avg_price": 4.502, "last_price": 4.369, "unrealized_pnl": 0.0, "opened_at": "2026-03-11T10:11:17.665074+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": 0.0, "avg_price": 405.2, "last_price": 394.1, "unrealized_pnl": 0.0, "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": 1127.4099999999999, "last_price": 1127.4099999999999, "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": "FRVIA_CFD.FR", "qty": 0.0, "avg_price": 9.138, "last_price": 9.03, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+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-18T09:36:37.284518+00:00"}, {"symbol": "GO_CFD.US", "qty": 0.0, "avg_price": 5.71, "last_price": 6.05, "unrealized_pnl": 178.63397548161112, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "HAIN_CFD.US", "qty": 0.0, "avg_price": 0.6, "last_price": 0.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1236.0, "last_price": 1266.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HPP_CFD.US", "qty": 0.0, "avg_price": 5.65, "last_price": 5.89, "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": "ITRK_CFD.UK", "qty": 0.0, "avg_price": 3942.0, "last_price": 3760.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+00:00"}, {"symbol": "IWG_CFD.UK", "qty": 17.421602787456447, "avg_price": 172.2, "last_price": 172.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-17T10:04:29.123574+00:00"}, {"symbol": "JBLU_CFD.US", "qty": 0.0, "avg_price": 4.22, "last_price": 4.52, "unrealized_pnl": 213.27014218009467, "opened_at": "2026-03-09T18:18:45.954380+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": "KSS_CFD.US", "qty": 0.0, "avg_price": 12.71, "last_price": 12.36, "unrealized_pnl": -82.61211644374542, "opened_at": "2026-03-24T18:12:08.252730+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": 0.0, "avg_price": 199.34, "last_price": 216.7, "unrealized_pnl": 0.0, "opened_at": "2026-03-08T18:08:31.007911+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-30T17:49:05.858690+00:00"}, {"symbol": "MPT_CFD.US", "qty": 0.0, "avg_price": 4.8, "last_price": 4.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "NCLH_CFD.US", "qty": 0.0, "avg_price": 19.89, "last_price": 18.42, "unrealized_pnl": 0.0, "opened_at": "2026-03-26T17:55:26.602359+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": 0.0, "avg_price": 204.3, "last_price": 204.3, "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": "OPTU_CFD.US", "qty": 0.0, "avg_price": 1.24, "last_price": 1.24, "unrealized_pnl": 0.0, "opened_at": "2026-03-22T18:18:31.438015+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 22.57336343115124, "avg_price": 132.9, "last_price": 132.9, "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": 0.0, "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": 34.9, "last_price": 45.0, "unrealized_pnl": 0.0, "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": 0.0, "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": 151.8, "last_price": 173.4, "unrealized_pnl": 0.0, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "UAL_CFD.US", "qty": 0.0, "avg_price": 92.85, "last_price": 91.28, "unrealized_pnl": 0.0, "opened_at": "2026-03-26T17:55:26.602359+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": "ULTA_CFD.US", "qty": 0.0, "avg_price": 535.2, "last_price": 523.22, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 0.0, "avg_price": 505.0, "last_price": 461.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T18:17:31.188931+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 0.0, "avg_price": 385.0, "last_price": 376.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T18:24:41.570614+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 894.0, "last_price": 881.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+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": "XRX_CFD.US", "qty": 0.0, "avg_price": 1.35, "last_price": 1.3599999999999999, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T18:18:58.833148+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": "AUTO_CFD.UK", "mean_reversion_score": 98, "selection_reason": "Extreme 1d drop -38.6%, far below MA50 (-31.9%) and MA200 (-37.4%), high vol 130%"}, "symbol", "PAGE_CFD.UK", "mean_reversion_score", 96, "selection_reason", "Extreme 1d drop -36.8%, far below MA50 (-31.7%) and MA200 (-40.6%), high vol 193%", "symbol", "VIRI_CFD.FR", "mean_reversion_score", 95, "selection_reason", "Extreme 1d rise +32.3%, far above MA50 (+29.1%) and MA200 (+86.9%), very high vol 298%", "symbol", "IWG_CFD.UK", "mean_reversion_score", 93, "selection_reason", "Large 1d drop -26.8%, below MA50 (-22.1%) and MA200 (-17.6%), high vol 154%", "symbol", "CBG_CFD.UK", "mean_reversion_score", 91, "selection_reason", "Large 1d drop -26.6%, below MA50 (-22.1%) and MA200 (-13.4%), high vol 169%"], "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": [],
"hold": [
{
"reason": "Top score 98: extreme 1d drop -38.6% far below MAs, high vol 130%, hold oversold for reversion",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Score 96: extreme 1d drop -36.8% far below MAs, high vol 193%, hold oversold",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Score 93: large 1d drop -26.8% below MAs, high vol 154%, hold oversold",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Score 91: large 1d drop -26.6% below MAs, high vol 169%, hold oversold",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Profitable (+141), stable, no sell signal",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Stable at avg price, no strong signal",
"symbol": "MCG_CFD.UK"
}
],
"sell": [
{
"reason": "Persistent unrealized loss (-163, -5.4%), not in top mean-reversion candidates, clear underperformer to replace",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Top mean-reversion score 95: extreme 1d rise +32.3%, far above MA50 (+29.1%) & MA200 (+86.9%), very high vol 298%, initiate short for expected pullback",
"symbol": "VIRI_CFD.FR"
}
]
},
"portfolio_rationale": "Current portfolio already positioned in top oversold mean-reversion candidates (AUTO, PAGE, IWG, CBG). Sell underperformer ESNT to manage risk and free slot. Add short VIRI (overbought candidate) for balanced mean-reversion exposure. 2 sells max respected, 9 positions total, gross leverage ~2.7 <3.0, fixed size adhered, minimal trading."
}Selection logs
#1035 • stage1 • 2026-04-07T12:03:25.988055+00:00
{
"selected_stocks": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "Extreme 1d drop -38.6%, far below MA50 (-31.9%) and MA200 (-37.4%), high vol 130%",
"mean_reversion_score": 98
},
"symbol",
"PAGE_CFD.UK",
"mean_reversion_score",
96,
"selection_reason",
"Extreme 1d drop -36.8%, far below MA50 (-31.7%) and MA200 (-40.6%), high vol 193%",
"symbol",
"VIRI_CFD.FR",
"mean_reversion_score",
95,
"selection_reason",
"Extreme 1d rise +32.3%, far above MA50 (+29.1%) and MA200 (+86.9%), very high vol 298%",
"symbol",
"IWG_CFD.UK",
"mean_reversion_score",
93,
"selection_reason",
"Large 1d drop -26.8%, below MA50 (-22.1%) and MA200 (-17.6%), high vol 154%",
"symbol",
"CBG_CFD.UK",
"mean_reversion_score",
91,
"selection_reason",
"Large 1d drop -26.6%, below MA50 (-22.1%) and MA200 (-13.4%), high vol 169%"
],
"rejected_common_reasons": [
"Insufficient |1d change| (<20%) for short-term mean reversion",
"Moderate distance from MA50 (<15% deviation)",
"Low 20d volatility (<100%) indicating limited overshoot"
]
}