Arena run #811
meanrev-v1 • amazon • amazon/nova-premier-v1 • US • success
Run status
as_of: 2026-03-23T18:04:09.108429+00:00
started_at: 2026-03-23T18:13:32.351395+00:00
finished_at: 2026-03-23T18:14:22.389384+00:00
duration_ms: 50036
Inputs
{
"as_of": "2026-03-23T18:04:09.108429+00:00",
"dry_run": false,
"selected": [
{
"symbol": "DLN_CFD.UK",
"selection_reason": "Positive distance from MA200 (5.07%) and MA50 (12.15%) with moderate volatility",
"mean_reversion_score": 78
},
{
"symbol": "SAFE_CFD.UK",
"selection_reason": "Positive MA200 distance (7.08%) with slight negative MA50 (-2.54%)",
"mean_reversion_score": 72
},
{
"symbol": "IPO_CFD.UK",
"selection_reason": "Double-digit MA200 distance (10.23%) and low volatility",
"mean_reversion_score": 69
},
{
"symbol": "ABDN_CFD.UK",
"selection_reason": "Moderate MA200 distance (6.46%) with contained volatility",
"mean_reversion_score": 67
},
{
"symbol": "BT_CFD.UK",
"selection_reason": "Strong MA200 (12.49%) and MA50 (10.27%) alignment",
"mean_reversion_score": 65
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"CRST_CFD.UK",
"MSLH_CFD.UK",
"SPX_CFD.UK",
"ESNT_CFD.UK",
"JDW_CFD.UK",
"PAG_CFD.UK",
"INVP_CFD.UK",
"SAFE_CFD.UK",
"CBG_CFD.UK",
"DLN_CFD.UK",
"BT_CFD.UK",
"IWG_CFD.UK",
"MKS_CFD.UK",
"EMG_CFD.UK",
"MNG_CFD.UK",
"OCDO_CFD.UK",
"HWDN_CFD.UK",
"SBRY_CFD.UK",
"IMI_CFD.UK",
"DCC_CFD.UK",
"DOCS_CFD.UK",
"ABDN_CFD.UK",
"OPTU_CFD.US",
"SMIN_CFD.UK",
"BBY_CFD.UK",
"NAE_CFD.FR",
"KGF_CFD.UK",
"ABF_CFD.UK",
"HLMA_CFD.UK",
"DOM_CFD.UK",
"LAND_CFD.UK",
"IPO_CFD.UK",
"BTRW_CFD.UK",
"GROW_CFD.UK",
"BYIT_CFD.UK",
"OSB_CFD.UK",
"EXPN_CFD.UK",
"MNDI_CFD.UK",
"FUTR_CFD.UK",
"NSI_CFD.NL",
"INF_CFD.UK",
"ATG_CFD.UK",
"HMSO_CFD.UK",
"NXT_CFD.UK",
"EXE_CFD.FR",
"ACKB_CFD.BE",
"IPR_CFD.PT",
"SGRO_CFD.UK"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Highest candidate score (78) with technical indicators",
"symbol": "DLN_CFD.UK",
"position_size": 3000
},
{
"reason": "Second-highest score (72) with positive MA200 distance",
"symbol": "SAFE_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "No clear improvement opportunity",
"symbol": "BBY_CFD.UK"
},
{
"reason": "Marginal unrealized loss but no better candidates",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "CBG_CFD.UK"
},
{
"reason": "No clear improvement opportunity",
"symbol": "CRST_CFD.UK"
},
{
"reason": "Newly opened position with no price movement",
"symbol": "DCC_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "DLN_CFD.UK"
},
{
"reason": "No clear improvement opportunity",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Marginal loss but candidate list lacks replacements",
"symbol": "FICO_CFD.US"
},
{
"reason": "Flat position with no momentum",
"symbol": "HMSO_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "HWDN_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "JDW_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "KEX_CFD.US"
},
{
"reason": "Flat position with no momentum",
"symbol": "LIO_CFD.UK"
},
{
"reason": "Newly opened position with no price movement",
"symbol": "MAB_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "OCDO_CFD.UK"
},
{
"reason": "Profitable position with minor gain",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "PAG_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "TPK_CFD.UK"
},
{
"reason": "Strong profit position - maintain",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "UKW_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "UTG_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "WIZZ_CFD.UK"
}
],
"sell": [
{
"reason": "Lowest mean-reversion score in portfolio (67) and negative unrealized PnL",
"symbol": "ABDN_CFD.UK"
}
]
},
"portfolio_rationale": "Sell ABDN_CFD.UK due to underperformance and lowest score. Buy DLN_CFD.UK (score 78) and SAFE_CFD.UK (score 72) using freed capital. Maintain profitable positions like TRN/UKW/WIZZ. Hold flat positions without clear alternatives. Follow max 2 buys/sells per run rule."
}Prompts & responses
#1596 • openrouter • amazon/nova-premier-v1 • 2026-03-23T18:13:32.392929+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": "SPX_CFD.UK", "name": "SPIRAX-SARCO ENGINEERING PLC", "sector": "", "last_price": 7608.71, "change_1d_pct": 10.91413994169097, "distance_from_ma200_pct": 15.905097055024719, "distance_from_ma50_pct": 8.459177525660632, "volatility_20d_pct": 84.71063298478786, "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": "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": "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": "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": "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": "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": "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": "SBRY_CFD.UK", "name": "SAINSBURY (J) PLC", "sector": "", "last_price": 351.2, "change_1d_pct": -2.7685492801771905, "distance_from_ma200_pct": 11.845406209490061, "distance_from_ma50_pct": 5.259372040329446, "volatility_20d_pct": 82.11100213494068, "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": "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": "OPTU_CFD.US", "name": "Optimum Communications Inc.", "sector": "", "last_price": 1.3, "change_1d_pct": -9.090909090909083, "distance_from_ma200_pct": -36.82113090175686, "distance_from_ma50_pct": -18.25955734406437, "volatility_20d_pct": 127.6568567850477, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "SMIN_CFD.UK", "name": "SMITHS GROUP PLC", "sector": "", "last_price": 2544.0, "change_1d_pct": 1.4333845019038671, "distance_from_ma200_pct": 14.948150770494873, "distance_from_ma50_pct": 4.167383226889343, "volatility_20d_pct": 72.718462979927, "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": "NAE_CFD.FR", "name": "North Atlantic Energies", "sector": "", "last_price": 69.8, "change_1d_pct": -10.092097636375353, "distance_from_ma200_pct": -11.879140094429463, "distance_from_ma50_pct": 46.87810379947142, "volatility_20d_pct": 203.33273738036817, "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.598205649094723, "distance_from_ma50_pct": -4.786156349988369, "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": "ABF_CFD.UK", "name": "ASSOCIATED BRITISH FOODS PLC", "sector": "", "last_price": 1812.0, "change_1d_pct": -7.338276655586807, "distance_from_ma200_pct": -13.584918221859954, "distance_from_ma50_pct": -8.055924730074116, "volatility_20d_pct": 88.64957551561282, "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": "LAND_CFD.UK", "name": "LAND SECURITIES GROUP PLC", "sector": "", "last_price": 573.0, "change_1d_pct": -12.718964204112716, "distance_from_ma200_pct": -4.1906796091180425, "distance_from_ma50_pct": -7.877546912515177, "volatility_20d_pct": 82.80648854646886, "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": 257.9, "change_1d_pct": -33.51379221448827, "distance_from_ma200_pct": -34.13050996113215, "distance_from_ma50_pct": -29.89115867433124, "volatility_20d_pct": 128.7886348087035, "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": "OSB_CFD.UK", "name": "OSB GROUP PLC", "sector": "", "last_price": 558.5, "change_1d_pct": -10.568454763811053, "distance_from_ma200_pct": 3.9920567571329224, "distance_from_ma50_pct": -6.032210509384505, "volatility_20d_pct": 85.69536040288594, "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": 2702.0, "change_1d_pct": 6.587771203155812, "distance_from_ma200_pct": -22.541551032626185, "distance_from_ma50_pct": -4.661764498327514, "volatility_20d_pct": 112.48291373875551, "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": "MNDI_CFD.UK", "name": "MONDI PLC", "sector": "", "last_price": 808.6, "change_1d_pct": -14.433862433862432, "distance_from_ma200_pct": -17.991033882451624, "distance_from_ma50_pct": -8.75659133763108, "volatility_20d_pct": 110.5800999532644, "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": "FUTR_CFD.UK", "name": "FUTURE PLC", "sector": "", "last_price": 423.6, "change_1d_pct": -20.82242990654205, "distance_from_ma200_pct": -37.68377383888033, "distance_from_ma50_pct": -24.301477407850992, "volatility_20d_pct": 153.59085037557008, "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": "NSI_CFD.NL", "name": "NSI", "sector": "", "last_price": 18.16, "change_1d_pct": -0.219780219780219, "distance_from_ma200_pct": -14.63048302881268, "distance_from_ma50_pct": -4.781879194630867, "volatility_20d_pct": 50.037896931198276, "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": "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": "EXE_CFD.FR", "name": "Exel Industries SA", "sector": "", "last_price": 34.22, "change_1d_pct": -3.4941763727121544, "distance_from_ma200_pct": -10.789189797953947, "distance_from_ma50_pct": -9.229517224110262, "volatility_20d_pct": 91.0490859897984, "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": "ACKB_CFD.BE", "name": "Ackermans & Van Haaren NV", "sector": "", "last_price": 266.4, "change_1d_pct": 0.07513148009015147, "distance_from_ma200_pct": 14.750349823807163, "distance_from_ma50_pct": 1.0920905684950188, "volatility_20d_pct": 65.24858182953352, "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": "SGRO_CFD.UK", "name": "SEGRO PLC", "sector": "", "last_price": 735.4, "change_1d_pct": -2.051145444858815, "distance_from_ma200_pct": 8.121221031738735, "distance_from_ma50_pct": 0.6415109419246168, "volatility_20d_pct": 82.62107653630062, "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": "DLN_CFD.UK",
"selection_reason": "Positive distance from MA200 (5.07%) and MA50 (12.15%) with moderate volatility",
"mean_reversion_score": 78
},
{
"symbol": "SAFE_CFD.UK",
"selection_reason": "Positive MA200 distance (7.08%) with slight negative MA50 (-2.54%)",
"mean_reversion_score": 72
},
{
"symbol": "IPO_CFD.UK",
"selection_reason": "Double-digit MA200 distance (10.23%) and low volatility",
"mean_reversion_score": 69
},
{
"symbol": "ABDN_CFD.UK",
"selection_reason": "Moderate MA200 distance (6.46%) with contained volatility",
"mean_reversion_score": 67
},
{
"symbol": "BT_CFD.UK",
"selection_reason": "Strong MA200 (12.49%) and MA50 (10.27%) alignment",
"mean_reversion_score": 65
}
],
"rejected_common_reasons": [
"Extreme 1-day move >15%",
"Negative MA200 distance >10%",
"High volatility >120%"
]
}#1597 • openrouter • amazon/nova-premier-v1 • 2026-03-23T18:13:57.418827+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": "ABDN_CFD.UK", "qty": 14.807502467917079, "avg_price": 202.6, "last_price": 193.2, "unrealized_pnl": -139.19052319842064, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "ADBE_CFD.US", "qty": 0.0, "avg_price": 249.47, "last_price": 248.05, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "ADP_CFD.FR", "qty": 0.0, "avg_price": 117.5, "last_price": 115.1, "unrealized_pnl": -61.276595744680996, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "AKAM_CFD.US", "qty": 0.0, "avg_price": 97.455, "last_price": 107.67, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "BBY_CFD.UK", "qty": 4.129387474191328, "avg_price": 726.5, "last_price": 726.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-20T18:25:08.105367+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-21T17:32:49.140800+00:00"}, {"symbol": "BRBY_CFD.UK", "qty": 0.0, "avg_price": 1119.08, "last_price": 1067.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "BRNL_CFD.NL", "qty": 0.0, "avg_price": 7.05, "last_price": 6.68, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "BTRW_CFD.UK", "qty": 11.63241566498643, "avg_price": 257.9, "last_price": 250.8, "unrealized_pnl": -82.59015122140326, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "BT_CFD.UK", "qty": 0.0, "avg_price": 211.0, "last_price": 207.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+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": "CABO_CFD.US", "qty": 0.0, "avg_price": 94.6, "last_price": 111.495, "unrealized_pnl": 535.7822410147995, "opened_at": "2026-02-27T18:23:55.960577+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-04T10:26:53.527562+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 0.0, "avg_price": 1945.9999999999998, "last_price": 1842.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "CO_CFD.FR", "qty": 0.0, "avg_price": 0.171, "last_price": 0.165, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "CRST_CFD.UK", "qty": 25.246149962130776, "avg_price": 118.83, "last_price": 118.83, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "DCC_CFD.UK", "qty": 0.6651884700665188, "avg_price": 4510.0, "last_price": 4510.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-23T10:03:51.599067+00:00"}, {"symbol": "DLN_CFD.UK", "qty": 3.3112582781456954, "avg_price": 1812.0, "last_price": 1812.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+00:00"}, {"symbol": "DSY_CFD.FR", "qty": 0.0, "avg_price": 17.881, "last_price": 16.752, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 0.0, "avg_price": 47.4, "last_price": 46.329, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+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.355000000000004, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "EXE_CFD.FR", "qty": 0.0, "avg_price": 37.303, "last_price": 35.843, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 405.2, "last_price": 394.1, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "FBIN_CFD.US", "qty": 0.0, "avg_price": 42.790000000000006, "last_price": 41.445, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "FICO_CFD.US", "qty": 2.6609662855571625, "avg_price": 1127.4099999999999, "last_price": 1096.71, "unrealized_pnl": -81.6916649666044, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 29.709178385970056, "avg_price": 403.9155793573515, "last_price": 414.2, "unrealized_pnl": 305.5416874687975, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "GNRC_CFD.US", "qty": 0.0, "avg_price": 200.66, "last_price": 198.98, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "GO_CFD.US", "qty": 0.0, "avg_price": 6.53, "last_price": 6.35, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "HAIN_CFD.US", "qty": 0.0, "avg_price": 0.8, "last_price": 0.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "HELE_CFD.US", "qty": 0.0, "avg_price": 15.94, "last_price": 15.78, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T18:18:58.833148+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1409.0, "last_price": 1342.0, "unrealized_pnl": -142.65436479772887, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HMSO_CFD.UK", "qty": 8.600917431192661, "avg_price": 348.8, "last_price": 348.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "HWDN_CFD.UK", "qty": 3.7783375314861463, "avg_price": 794.0, "last_price": 794.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-20T10:26:40.341409+00:00"}, {"symbol": "IPO_CFD.UK", "qty": 0.0, "avg_price": 57.7, "last_price": 57.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "ITV_CFD.UK", "qty": 0.0, "avg_price": 82.85, "last_price": 78.75, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T10:07:39.444598+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-19T18:04:14.272849+00:00"}, {"symbol": "JDW_CFD.UK", "qty": 4.514672686230249, "avg_price": 664.5, "last_price": 664.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T10:35:48.762746+00:00"}, {"symbol": "KBCA_CFD.BE", "qty": 0.0, "avg_price": 75.3, "last_price": 75.1, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "KEX_CFD.US", "qty": 24.390243902439025, "avg_price": 123.0, "last_price": 130.96, "unrealized_pnl": 194.14634146341484, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "KGF_CFD.UK", "qty": 0.0, "avg_price": 315.6, "last_price": 298.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T10:03:26.036362+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 23.300970873786408, "avg_price": 257.5, "last_price": 257.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "LXS_CFD.DE", "qty": 0.0, "avg_price": 13.14, "last_price": 11.929, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "MAB_CFD.UK", "qty": 10.624734381640458, "avg_price": 282.36, "last_price": 282.36, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T17:59:11.913241+00:00"}, {"symbol": "NXST_CFD.US", "qty": 0.0, "avg_price": 233.02, "last_price": 226.38, "unrealized_pnl": -85.48622435842437, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 14.684287812041115, "avg_price": 204.3, "last_price": 204.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-01T10:30:13.622938+00:00"}, {"symbol": "OSB_CFD.UK", "qty": 0.0, "avg_price": 558.5, "last_price": 544.0, "unrealized_pnl": -155.7743957027753, "opened_at": "2026-03-13T10:07:39.444598+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 39.39490073936085, "avg_price": 152.3039755753258, "last_price": 152.7, "unrealized_pnl": 15.601342900401843, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "PAG_CFD.UK", "qty": 3.9190071848465053, "avg_price": 765.5, "last_price": 765.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-23T10:03:51.599067+00:00"}, {"symbol": "REC_CFD.BE", "qty": 0.0, "avg_price": 11.08, "last_price": 10.68, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "RHIM_CFD.UK", "qty": 0.0, "avg_price": 2795.0, "last_price": 2550.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 416.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "ROR_CFD.UK", "qty": 0.0, "avg_price": 315.64, "last_price": 309.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T10:03:26.036362+00:00"}, {"symbol": "SGE_CFD.UK", "qty": 0.0, "avg_price": 795.4, "last_price": 813.4, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "SGRO_CFD.UK", "qty": 0.0, "avg_price": 735.4, "last_price": 723.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T10:12:30.296045+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 0.0, "avg_price": 18.4, "last_price": 27.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "TPK_CFD.UK", "qty": 5.328975415660082, "avg_price": 562.96, "last_price": 562.96, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T10:00:02.317290+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 97.56097560975611, "avg_price": 184.5, "last_price": 211.4, "unrealized_pnl": 2624.39024390244, "opened_at": "2026-03-05T10:27:11.178069+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 64.97022198159178, "avg_price": 92.35, "last_price": 98.75, "unrealized_pnl": 415.80942068218775, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "UMG_CFD.NL", "qty": 0.0, "avg_price": 19.085, "last_price": 18.665, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 17.821782178217823, "avg_price": 504.99999999999994, "last_price": 505.0, "unrealized_pnl": 1.0130510292025192e-12, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 0.0, "avg_price": 427.6, "last_price": 406.1, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T18:24:41.570614+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 3.4403669724770642, "avg_price": 872.0, "last_price": 913.5, "unrealized_pnl": 142.77522935779817, "opened_at": "2026-02-25T17:57:28.313088+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-16T17:30:52.485845+00:00"}, {"symbol": "WTB_CFD.UK", "qty": 1.279317697228145, "avg_price": 2345.0, "last_price": 2308.0, "unrealized_pnl": -47.33475479744136, "opened_at": "2026-03-13T18:17:31.188931+00:00"}, {"symbol": "XRX_CFD.US", "qty": 0.0, "avg_price": 1.56, "last_price": 1.52, "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": "DLN_CFD.UK", "mean_reversion_score": 78, "selection_reason": "Positive distance from MA200 (5.07%) and MA50 (12.15%) with moderate volatility"}, {"symbol": "SAFE_CFD.UK", "mean_reversion_score": 72, "selection_reason": "Positive MA200 distance (7.08%) with slight negative MA50 (-2.54%)"}, {"symbol": "IPO_CFD.UK", "mean_reversion_score": 69, "selection_reason": "Double-digit MA200 distance (10.23%) and low volatility"}, {"symbol": "ABDN_CFD.UK", "mean_reversion_score": 67, "selection_reason": "Moderate MA200 distance (6.46%) with contained volatility"}, {"symbol": "BT_CFD.UK", "mean_reversion_score": 65, "selection_reason": "Strong MA200 (12.49%) and MA50 (10.27%) alignment"}], "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 candidate score (78) with technical indicators",
"symbol": "DLN_CFD.UK",
"position_size": 3000
},
{
"reason": "Second-highest score (72) with positive MA200 distance",
"symbol": "SAFE_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "No clear improvement opportunity",
"symbol": "BBY_CFD.UK"
},
{
"reason": "Marginal unrealized loss but no better candidates",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "CBG_CFD.UK"
},
{
"reason": "No clear improvement opportunity",
"symbol": "CRST_CFD.UK"
},
{
"reason": "Newly opened position with no price movement",
"symbol": "DCC_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "DLN_CFD.UK"
},
{
"reason": "No clear improvement opportunity",
"symbol": "ESNT_CFD.UK"
},
{
"reason": "Marginal loss but candidate list lacks replacements",
"symbol": "FICO_CFD.US"
},
{
"reason": "Flat position with no momentum",
"symbol": "HMSO_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "HWDN_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "JDW_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "KEX_CFD.US"
},
{
"reason": "Flat position with no momentum",
"symbol": "LIO_CFD.UK"
},
{
"reason": "Newly opened position with no price movement",
"symbol": "MAB_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "OCDO_CFD.UK"
},
{
"reason": "Profitable position with minor gain",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "PAG_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "TPK_CFD.UK"
},
{
"reason": "Strong profit position - maintain",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "UKW_CFD.UK"
},
{
"reason": "Flat position with no momentum",
"symbol": "UTG_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "WIZZ_CFD.UK"
}
],
"sell": [
{
"reason": "Lowest mean-reversion score in portfolio (67) and negative unrealized PnL",
"symbol": "ABDN_CFD.UK"
}
]
},
"portfolio_rationale": "Sell ABDN_CFD.UK due to underperformance and lowest score. Buy DLN_CFD.UK (score 78) and SAFE_CFD.UK (score 72) using freed capital. Maintain profitable positions like TRN/UKW/WIZZ. Hold flat positions without clear alternatives. Follow max 2 buys/sells per run rule."
}Selection logs
#790 • stage1 • 2026-03-23T18:13:57.416027+00:00
{
"selected_stocks": [
{
"symbol": "DLN_CFD.UK",
"selection_reason": "Positive distance from MA200 (5.07%) and MA50 (12.15%) with moderate volatility",
"mean_reversion_score": 78
},
{
"symbol": "SAFE_CFD.UK",
"selection_reason": "Positive MA200 distance (7.08%) with slight negative MA50 (-2.54%)",
"mean_reversion_score": 72
},
{
"symbol": "IPO_CFD.UK",
"selection_reason": "Double-digit MA200 distance (10.23%) and low volatility",
"mean_reversion_score": 69
},
{
"symbol": "ABDN_CFD.UK",
"selection_reason": "Moderate MA200 distance (6.46%) with contained volatility",
"mean_reversion_score": 67
},
{
"symbol": "BT_CFD.UK",
"selection_reason": "Strong MA200 (12.49%) and MA50 (10.27%) alignment",
"mean_reversion_score": 65
}
],
"rejected_common_reasons": [
"Extreme 1-day move >15%",
"Negative MA200 distance >10%",
"High volatility >120%"
]
}