Arena run #832
meanrev-v1 • x-ai • x-ai/grok-4.1-fast • US • success
Run status
as_of: 2026-03-24T18:12:08.252730+00:00
started_at: 2026-03-24T18:21:18.208142+00:00
finished_at: 2026-03-24T18:22:19.471469+00:00
duration_ms: 61262
Inputs
{
"as_of": "2026-03-24T18:12:08.252730+00:00",
"dry_run": false,
"selected": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "MA50 dev -31.9%; 1d chg -38.6%; vol 130%",
"mean_reversion_score": 99
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "MA50 dev -31.8%; 1d chg -33.2%; vol 128%",
"mean_reversion_score": 98
},
{
"symbol": "KSS_CFD.US",
"selection_reason": "MA50 dev -23.3%; 1d chg +6.7%; vol 144%",
"mean_reversion_score": 85
},
{
"symbol": "BLDR_CFD.US",
"selection_reason": "MA50 dev -22.9%; 1d chg +0.9%; vol 97%",
"mean_reversion_score": 82
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "MA50 dev -22.1%; 1d chg -26.6%; vol 169%",
"mean_reversion_score": 80
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"CRST_CFD.UK",
"MSLH_CFD.UK",
"LMP_CFD.UK",
"ESNT_CFD.UK",
"PAG_CFD.UK",
"INVP_CFD.UK",
"CBG_CFD.UK",
"DLN_CFD.UK",
"MCG_CFD.UK",
"BT_CFD.UK",
"IWG_CFD.UK",
"MKS_CFD.UK",
"EMG_CFD.UK",
"MNG_CFD.UK",
"PZC_CFD.UK",
"LTA_CFD.FR",
"OCDO_CFD.UK",
"HWDN_CFD.UK",
"LRE_CFD.UK",
"IMI_CFD.UK",
"BME_CFD.UK",
"DCC_CFD.UK",
"DOCS_CFD.UK",
"ABDN_CFD.UK",
"LIO_CFD.UK",
"BBY_CFD.UK",
"AB_CFD.FR",
"OSB_CFD.UK",
"MAB_CFD.UK",
"KGF_CFD.UK",
"HLMA_CFD.UK",
"DOM_CFD.UK",
"IPO_CFD.UK",
"BTRW_CFD.UK",
"GROW_CFD.UK",
"BYIT_CFD.UK",
"HIK_CFD.UK",
"HHFA_CFD.DE",
"INF_CFD.UK",
"ATG_CFD.UK",
"BLDR_CFD.US",
"HMSO_CFD.UK",
"NXT_CFD.UK",
"BRNK_CFD.DE",
"QDT_CFD.FR",
"KSS_CFD.US",
"OVH_CFD.FR",
"IPR_CFD.PT",
"DG_CFD.US",
"AUTO_CFD.UK"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Top mean-reversion score 99, extreme oversold: MA50 dev -31.9%, 1d chg -38.6%, high vol 130%, clear buy signal",
"symbol": "AUTO_CFD.UK",
"position_size": 3000
},
{
"reason": "Strong score 85 in US region, MA50 dev -23.3%, high vol 144%, diversification to US, improvement over rotated positions",
"symbol": "KSS_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "High mean-reversion score 98, strong signal MA50 dev -31.8%, retain for expected reversion",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "High mean-reversion score 80, strong oversold signal, retain position",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal, await reversion",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Slight positive PnL, stable mean-reversion hold",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "UTG_CFD.UK"
}
],
"sell": [
{
"reason": "Flat PnL since entry, not in top mean-reversion candidates (implied lower score), rotate to higher conviction opportunities to avoid stagnation",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Flat PnL since entry, older position not in top candidates (implied lower score), rotate to higher score signals",
"symbol": "OCDO_CFD.UK"
}
]
},
"portfolio_rationale": "Max 10 positions reached with flat UK mean-reversion longs. Conservative rotation: sell 2 oldest/flat non-top-candidate positions (FUTR, OCDO) to fund 2 highest conviction buys (AUTO #1 score, KSS strong US). Retains top-held candidates BTRW/CBG. Complies with max 2 buys/sells, fixed size 3000, leverage intact, avoids overtrading by limiting changes and prioritizing clear score improvements."
}Prompts & responses
#1638 • openrouter • x-ai/grok-4.1-fast • 2026-03-24T18:21:18.250164+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": "US", "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": "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": "LMP_CFD.UK", "name": "LONDONMETRIC PROPERTY PLC", "sector": "", "last_price": 214.0, "change_1d_pct": 11.57455683003128, "distance_from_ma200_pct": 12.507879494597773, "distance_from_ma50_pct": 10.77384329331672, "volatility_20d_pct": 54.89150861607771, "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": 108.4, "change_1d_pct": 4.230769230769238, "distance_from_ma200_pct": 7.40452119530135, "distance_from_ma50_pct": 9.771484932749797, "volatility_20d_pct": 98.9832071461764, "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": "INVP_CFD.UK", "name": "INVESTEC PLC", "sector": "", "last_price": 623.5, "change_1d_pct": 8.529155787641418, "distance_from_ma200_pct": 17.34715626999408, "distance_from_ma50_pct": 9.569618971869698, "volatility_20d_pct": 76.97154585310399, "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": "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": "MCG_CFD.UK", "name": "MOBICO GROUP PLC", "sector": "", "last_price": 25.72, "change_1d_pct": 2.9623698959167166, "distance_from_ma200_pct": -7.132760074308242, "distance_from_ma50_pct": 8.327577202351844, "volatility_20d_pct": 232.19808875565576, "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": "BT_CFD.UK", "name": "BT GROUP PLC", "sector": "", "last_price": 217.3, "change_1d_pct": 4.521404521404526, "distance_from_ma200_pct": 12.48931662093067, "distance_from_ma50_pct": 10.274676813493189, "volatility_20d_pct": 92.38992239372133, "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": 189.6, "change_1d_pct": -24.09927942353883, "distance_from_ma200_pct": -11.798015594910993, "distance_from_ma50_pct": -17.03351041019402, "volatility_20d_pct": 148.96998448946707, "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": "MKS_CFD.UK", "name": "MARKS & SPENCER GROUP PLC", "sector": "", "last_price": 346.1, "change_1d_pct": -7.43514308638672, "distance_from_ma200_pct": -3.8050775687949234, "distance_from_ma50_pct": -2.7644562367007075, "volatility_20d_pct": 113.7533392971785, "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": "EMG_CFD.UK", "name": "MAN GROUP PLC/JERSEY", "sector": "", "last_price": 269.6, "change_1d_pct": 2.353834472285521, "distance_from_ma200_pct": 42.186331073171914, "distance_from_ma50_pct": 15.516783354614262, "volatility_20d_pct": 86.92367167139048, "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": "MNG_CFD.UK", "name": "M&G PLC", "sector": "", "last_price": 279.6, "change_1d_pct": -11.937007874015737, "distance_from_ma200_pct": 3.6912374599800346, "distance_from_ma50_pct": -7.6737144159107595, "volatility_20d_pct": 91.15993052698488, "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": "PZC_CFD.UK", "name": "PZ CUSSONS PLC", "sector": "", "last_price": 77.7, "change_1d_pct": -13.858093126385807, "distance_from_ma200_pct": 2.9808107121248817, "distance_from_ma50_pct": 2.5905093876257723, "volatility_20d_pct": 92.73478468401771, "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": 26.58, "change_1d_pct": -3.3102946526009425, "distance_from_ma200_pct": -6.386926289741979, "distance_from_ma50_pct": -6.995167107780642, "volatility_20d_pct": 78.6048870937708, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "OCDO_CFD.UK", "name": "OCADO GROUP PLC", "sector": "", "last_price": 217.0, "change_1d_pct": -21.148255813953487, "distance_from_ma200_pct": -15.81606625159202, "distance_from_ma50_pct": -5.48311196636071, "volatility_20d_pct": 241.3119670937803, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "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": "LRE_CFD.UK", "name": "LANCASHIRE HOLDINGS LTD", "sector": "", "last_price": 611.0, "change_1d_pct": -7.424242424242422, "distance_from_ma200_pct": 0.4068944205071867, "distance_from_ma50_pct": -6.396619125545266, "volatility_20d_pct": 86.32350801127552, "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": "IMI_CFD.UK", "name": "IMI PLC", "sector": "", "last_price": 2676.0, "change_1d_pct": 1.5945330296127658, "distance_from_ma200_pct": 20.655603593859716, "distance_from_ma50_pct": 2.743599661176499, "volatility_20d_pct": 90.40898907393799, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BME_CFD.UK", "name": "B&M EUROPEAN VALUE RETAIL SA", "sector": "", "last_price": 168.5, "change_1d_pct": -5.123873873873874, "distance_from_ma200_pct": -22.143264248764517, "distance_from_ma50_pct": -2.809133288189092, "volatility_20d_pct": 127.41578734735941, "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": "DCC_CFD.UK", "name": "DCC PLC", "sector": "", "last_price": 4738.0, "change_1d_pct": 4.131868131868122, "distance_from_ma200_pct": -1.2358165497191043, "distance_from_ma50_pct": -1.6950365081147445, "volatility_20d_pct": 101.79870451788292, "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": "DOCS_CFD.UK", "name": "DR. MARTENS PLC", "sector": "", "last_price": 65.6, "change_1d_pct": -1.501501501501501, "distance_from_ma200_pct": -13.08259339811949, "distance_from_ma50_pct": -12.14348468939509, "volatility_20d_pct": 121.2025974369199, "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": 202.6, "change_1d_pct": -7.741347905282336, "distance_from_ma200_pct": 6.460345885775287, "distance_from_ma50_pct": -2.3285905331046353, "volatility_20d_pct": 82.55854119558269, "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": "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": "AB_CFD.FR", "name": "AB Science", "sector": "", "last_price": 1.174, "change_1d_pct": -3.9279869067103124, "distance_from_ma200_pct": -9.499123128216013, "distance_from_ma50_pct": -11.838034303565525, "volatility_20d_pct": 75.02950867710489, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "OSB_CFD.UK", "name": "OSB GROUP PLC", "sector": "", "last_price": 544.0, "change_1d_pct": -12.82051282051282, "distance_from_ma200_pct": 1.2037008184198061, "distance_from_ma50_pct": -8.431783193394438, "volatility_20d_pct": 87.0803157010617, "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": "MAB_CFD.UK", "name": "MITCHELLS & BUTLERS PLC", "sector": "", "last_price": 292.81, "change_1d_pct": 14.37890625, "distance_from_ma200_pct": 11.595067041457764, "distance_from_ma50_pct": 10.935906392690597, "volatility_20d_pct": 118.87119977937589, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "KGF_CFD.UK", "name": "KINGFISHER PLC", "sector": "", "last_price": 309.6, "change_1d_pct": -14.143094841930115, "distance_from_ma200_pct": 5.51507100114581, "distance_from_ma50_pct": -4.715827882807844, "volatility_20d_pct": 104.60870893174696, "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": "HLMA_CFD.UK", "name": "HALMA PLC", "sector": "", "last_price": 3658.0, "change_1d_pct": -5.478036175710599, "distance_from_ma200_pct": 8.890890613176584, "distance_from_ma50_pct": -0.8317338451695466, "volatility_20d_pct": 89.73890792125391, "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": 189.21, "change_1d_pct": 4.190528634361246, "distance_from_ma200_pct": -12.46581454882838, "distance_from_ma50_pct": 4.428944053991102, "volatility_20d_pct": 85.812071272284, "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": "BTRW_CFD.UK", "name": "Barratt Redrow Plc", "sector": "", "last_price": 250.8, "change_1d_pct": -33.21439032833594, "distance_from_ma200_pct": -35.943900342194425, "distance_from_ma50_pct": -31.82125861001269, "volatility_20d_pct": 128.21792815079814, "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": "BYIT_CFD.UK", "name": "BYTES TECHNOLOGY GROUP PLC", "sector": "", "last_price": 300.4, "change_1d_pct": -12.674418604651173, "distance_from_ma200_pct": -28.03446775272175, "distance_from_ma50_pct": -14.34777426817815, "volatility_20d_pct": 87.82535981934274, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "HIK_CFD.UK", "name": "HIKMA PHARMACEUTICALS PLC", "sector": "", "last_price": 1271.0, "change_1d_pct": -18.941326530612244, "distance_from_ma200_pct": -28.65732725032737, "distance_from_ma50_pct": -15.445606311549753, "volatility_20d_pct": 155.60111264077167, "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": "HHFA_CFD.DE", "name": "HAMBURGER HAFEN UND LOGISTIK", "sector": "", "last_price": 22.9, "change_1d_pct": 0.0, "distance_from_ma200_pct": 8.286007461804346, "distance_from_ma50_pct": 0.3750256416550135, "volatility_20d_pct": 55.586552774997564, "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": "INF_CFD.UK", "name": "INFORMA PLC", "sector": "", "last_price": 756.4, "change_1d_pct": -14.492425955234012, "distance_from_ma200_pct": -10.927806304012677, "distance_from_ma50_pct": -13.84600805409979, "volatility_20d_pct": 89.53684626030801, "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": "BLDR_CFD.US", "name": "Builders FirstSource Inc", "sector": "", "last_price": 83.95, "change_1d_pct": 0.9135713427094627, "distance_from_ma200_pct": -28.916834813562275, "distance_from_ma50_pct": -22.851702500725978, "volatility_20d_pct": 97.46952972265542, "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": "HMSO_CFD.UK", "name": "HAMMERSON PLC", "sector": "", "last_price": 355.4, "change_1d_pct": 14.129736673089276, "distance_from_ma200_pct": 22.516025502913806, "distance_from_ma50_pct": 10.006914897239172, "volatility_20d_pct": 87.54938293511039, "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": "NXT_CFD.UK", "name": "NEXT PLC", "sector": "", "last_price": 12560.0, "change_1d_pct": -6.478034251675357, "distance_from_ma200_pct": -1.3592309227407728, "distance_from_ma50_pct": -7.68316285245737, "volatility_20d_pct": 74.74482929593471, "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.331, "change_1d_pct": -10.910307898259708, "distance_from_ma200_pct": -30.535803287415288, "distance_from_ma50_pct": -25.291872474180522, "volatility_20d_pct": 173.33614285159015, "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": "QDT_CFD.FR", "name": "", "sector": "", "last_price": 12.8, "change_1d_pct": 0.0, "distance_from_ma200_pct": -14.516900275950128, "distance_from_ma50_pct": -11.265779786621932, "volatility_20d_pct": 73.68150412533132, "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": "KSS_CFD.US", "name": "KOHLS CORP", "sector": "", "last_price": 12.85, "change_1d_pct": 6.727574750830567, "distance_from_ma200_pct": -18.551806755446265, "distance_from_ma50_pct": -23.329355608591896, "volatility_20d_pct": 143.67670881245292, "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": "OVH_CFD.FR", "name": "OVH Groupe SA ", "sector": "", "last_price": 8.5, "change_1d_pct": -2.912621359223311, "distance_from_ma200_pct": -12.3012010092584, "distance_from_ma50_pct": -6.807646597053807, "volatility_20d_pct": 97.27402098995047, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "IPR_CFD.PT", "name": "Impresa SGPS SA", "sector": "", "last_price": 0.185, "change_1d_pct": -3.645833333333337, "distance_from_ma200_pct": 18.21086261980831, "distance_from_ma50_pct": -3.181913334728914, "volatility_20d_pct": 211.6528623619224, "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": "DG_CFD.US", "name": "Dollar General Corporation", "sector": "", "last_price": 121.02, "change_1d_pct": -4.392479064623167, "distance_from_ma200_pct": 0.5837046419604031, "distance_from_ma50_pct": -16.554044736188867, "volatility_20d_pct": 78.8686754657176, "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"}], "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": "MA50 dev -31.9%; 1d chg -38.6%; vol 130%",
"mean_reversion_score": 99
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "MA50 dev -31.8%; 1d chg -33.2%; vol 128%",
"mean_reversion_score": 98
},
{
"symbol": "KSS_CFD.US",
"selection_reason": "MA50 dev -23.3%; 1d chg +6.7%; vol 144%",
"mean_reversion_score": 85
},
{
"symbol": "BLDR_CFD.US",
"selection_reason": "MA50 dev -22.9%; 1d chg +0.9%; vol 97%",
"mean_reversion_score": 82
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "MA50 dev -22.1%; 1d chg -26.6%; vol 169%",
"mean_reversion_score": 80
}
],
"rejected_common_reasons": [
"MA50 deviation <20% abs",
"small 1d price change",
"low 20d volatility"
]
}#1639 • openrouter • x-ai/grok-4.1-fast • 2026-03-24T18:21:44.360071+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": "US", "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": "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.298, "last_price": 0.309, "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.961722488038276, "avg_price": 250.8, "last_price": 250.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": 95.5, "unrealized_pnl": 0.0, "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": 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": 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": 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": 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": 16.949152542372882, "avg_price": 177.0, "last_price": 177.0, "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": "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": "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": "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": 14.684287812041115, "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": 19.74853531696399, "avg_price": 151.91, "last_price": 152.7, "unrealized_pnl": 15.601342900401397, "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": 110.29411764705883, "avg_price": 27.2, "last_price": 27.2, "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": "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": 5.9405940594059405, "avg_price": 505.0, "last_price": 505.0, "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": 872.0, "last_price": 976.5, "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": 99, "selection_reason": "MA50 dev -31.9%; 1d chg -38.6%; vol 130%"}, {"symbol": "BTRW_CFD.UK", "mean_reversion_score": 98, "selection_reason": "MA50 dev -31.8%; 1d chg -33.2%; vol 128%"}, {"symbol": "KSS_CFD.US", "mean_reversion_score": 85, "selection_reason": "MA50 dev -23.3%; 1d chg +6.7%; vol 144%"}, {"symbol": "BLDR_CFD.US", "mean_reversion_score": 82, "selection_reason": "MA50 dev -22.9%; 1d chg +0.9%; vol 97%"}, {"symbol": "CBG_CFD.UK", "mean_reversion_score": 80, "selection_reason": "MA50 dev -22.1%; 1d chg -26.6%; 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": [
{
"reason": "Top mean-reversion score 99, extreme oversold: MA50 dev -31.9%, 1d chg -38.6%, high vol 130%, clear buy signal",
"symbol": "AUTO_CFD.UK",
"position_size": 3000
},
{
"reason": "Strong score 85 in US region, MA50 dev -23.3%, high vol 144%, diversification to US, improvement over rotated positions",
"symbol": "KSS_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "High mean-reversion score 98, strong signal MA50 dev -31.8%, retain for expected reversion",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "High mean-reversion score 80, strong oversold signal, retain position",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal, await reversion",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Slight positive PnL, stable mean-reversion hold",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "Stable hold, flat PnL, no sell signal",
"symbol": "UTG_CFD.UK"
}
],
"sell": [
{
"reason": "Flat PnL since entry, not in top mean-reversion candidates (implied lower score), rotate to higher conviction opportunities to avoid stagnation",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Flat PnL since entry, older position not in top candidates (implied lower score), rotate to higher score signals",
"symbol": "OCDO_CFD.UK"
}
]
},
"portfolio_rationale": "Max 10 positions reached with flat UK mean-reversion longs. Conservative rotation: sell 2 oldest/flat non-top-candidate positions (FUTR, OCDO) to fund 2 highest conviction buys (AUTO #1 score, KSS strong US). Retains top-held candidates BTRW/CBG. Complies with max 2 buys/sells, fixed size 3000, leverage intact, avoids overtrading by limiting changes and prioritizing clear score improvements."
}Selection logs
#811 • stage1 • 2026-03-24T18:21:44.355928+00:00
{
"selected_stocks": [
{
"symbol": "AUTO_CFD.UK",
"selection_reason": "MA50 dev -31.9%; 1d chg -38.6%; vol 130%",
"mean_reversion_score": 99
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "MA50 dev -31.8%; 1d chg -33.2%; vol 128%",
"mean_reversion_score": 98
},
{
"symbol": "KSS_CFD.US",
"selection_reason": "MA50 dev -23.3%; 1d chg +6.7%; vol 144%",
"mean_reversion_score": 85
},
{
"symbol": "BLDR_CFD.US",
"selection_reason": "MA50 dev -22.9%; 1d chg +0.9%; vol 97%",
"mean_reversion_score": 82
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "MA50 dev -22.1%; 1d chg -26.6%; vol 169%",
"mean_reversion_score": 80
}
],
"rejected_common_reasons": [
"MA50 deviation <20% abs",
"small 1d price change",
"low 20d volatility"
]
}