Arena run #1117
meanrev-v1 • mistralai • mistralai/mistral-large-2512 • EU • success
Run status
as_of: 2026-04-08T10:08:21.944296+00:00
started_at: 2026-04-08T11:40:49.375136+00:00
finished_at: 2026-04-08T11:41:50.884764+00:00
duration_ms: 61506
Inputs
{
"as_of": "2026-04-08T10:08:21.944296+00:00",
"dry_run": false,
"selected": [
{
"symbol": "HAS_CFD.UK",
"selection_reason": "Large 1-day drop (-17.2%), deeply below MA50 (-12.9%) and MA200 (-26.5%), high volatility (118%), no earnings date known.",
"mean_reversion_score": 85
},
{
"symbol": "THG_CFD.UK",
"selection_reason": "Sharp 1-day decline (-21.5%), below MA50 (-18.7%), near MA200 (+2.7%), high volatility (150.5%), no earnings date known.",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Extreme 1-day drop (-36.8%), deeply below MA50 (-31.7%) and MA200 (-40.6%), high volatility (193.2%), no earnings date known.",
"mean_reversion_score": 75
},
{
"symbol": "OCDO_CFD.UK",
"selection_reason": "Large 1-day decline (-27.7%), below MA50 (-16.5%) and MA200 (-25.4%), high volatility (249%), no earnings date known.",
"mean_reversion_score": 70
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Significant 1-day drop (-26.6%), below MA50 (-22.1%) and MA200 (-13.4%), high volatility (169%), no earnings date known.",
"mean_reversion_score": 65
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"HAS_CFD.UK",
"RS1_CFD.UK",
"JUP_CFD.UK",
"BOY_CFD.UK",
"THG_CFD.UK",
"CRST_CFD.UK",
"PAGE_CFD.UK",
"FGP_CFD.UK",
"JDW_CFD.UK",
"SHC_CFD.UK",
"PAG_CFD.UK",
"SAFE_CFD.UK",
"RHIM_CFD.UK",
"HBR_CFD.UK",
"PNN_CFD.UK",
"CBG_CFD.UK",
"RSW_CFD.UK",
"DLN_CFD.UK",
"TPK_CFD.UK",
"DOM_CFD.UK",
"MAB_CFD.UK",
"CNA_CFD.UK",
"HUBS_CFD.US",
"OCDO_CFD.UK",
"ESNT_CFD.UK",
"IPO_CFD.UK",
"VXXB_CFD.ETF",
"GROW_CFD.UK",
"SMG_CFD.US",
"BME_CFD.UK",
"IWG_CFD.UK",
"COTY_CFD.US",
"ATG_CFD.UK",
"CABO_CFD.US"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Highest mean-reversion score (85) with large 1-day drop (-17.2%) and deeply below MA50 (-12.9%) and MA200 (-26.5%). High volatility suggests potential for rebound.",
"symbol": "HAS_CFD.UK",
"position_size": 3000
},
{
"reason": "Strong mean-reversion score (70) with large 1-day decline (-27.7%) and below MA50 (-16.5%) and MA200 (-25.4%). High volatility (249%) suggests potential for rebound.",
"symbol": "OCDO_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "BOY_CFD.UK"
},
{
"reason": "Modest unrealized gain (50.24). No strong mean-reversion signal to justify selling.",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Modest unrealized gain (182.60). No strong mean-reversion signal to justify selling.",
"symbol": "EXPD_CFD.US"
},
{
"reason": "Modest unrealized gain (141.45). No strong mean-reversion signal to justify selling.",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Strong unrealized gain (432.04) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "HIK_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "ICG_CFD.UK"
},
{
"reason": "Modest unrealized gain (127.90). No strong mean-reversion signal to justify selling.",
"symbol": "INF_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Strong unrealized gain (257.85) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "JMAT_CFD.UK"
},
{
"reason": "Modest unrealized gain (14.74). No strong mean-reversion signal to justify selling.",
"symbol": "KGF_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "PAG_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Modest unrealized loss (-44.26). No strong mean-reversion signal to justify selling.",
"symbol": "STJ_CFD.UK"
},
{
"reason": "Strong unrealized gain (992.84) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "THG_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "TPK_CFD.UK"
},
{
"reason": "Modest unrealized gain (329.72). No strong mean-reversion signal to justify selling.",
"symbol": "UKW_CFD.UK"
}
],
"sell": [
{
"reason": "Significant unrealized loss (-389.55) with no clear mean-reversion signal in current candidates. Prefer to reallocate capital to stronger mean-reversion opportunities.",
"symbol": "CRST_CFD.UK"
}
]
},
"portfolio_rationale": "Reallocating capital from underperforming position (CRST_CFD.UK) to stronger mean-reversion opportunities (HAS_CFD.UK, OCDO_CFD.UK). Holding existing positions with gains or stable prices to avoid overtrading. Strategy adheres to max 2 buys/sells per run and fixed position size of 3000.0."
}Prompts & responses
#2160 • openrouter • mistralai/mistral-large-2512 • 2026-04-08T11:40:49.413125+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": "HAS_CFD.UK", "name": "HAYS PLC", "sector": "", "last_price": 47.66, "change_1d_pct": -17.213826645822483, "distance_from_ma200_pct": -26.546854506980832, "distance_from_ma50_pct": -12.888674431016456, "volatility_20d_pct": 117.95597135078918, "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": "JUP_CFD.UK", "name": "JUPITER FUND MANAGEMENT", "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": "CRST_CFD.UK", "name": "CREST NICHOLSON HOLDINGS", "sector": "", "last_price": 118.83, "change_1d_pct": -12.817314746881891, "distance_from_ma200_pct": -28.150055914529826, "distance_from_ma50_pct": -15.848139991077058, "volatility_20d_pct": 236.5351415372937, "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": "FGP_CFD.UK", "name": "FIRSTGROUP PLC", "sector": "", "last_price": 193.2, "change_1d_pct": 1.3109596224436304, "distance_from_ma200_pct": -4.044842646206826, "distance_from_ma50_pct": 1.7250076083144883, "volatility_20d_pct": 88.3516119820011, "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": 664.5, "change_1d_pct": -2.9927007299270114, "distance_from_ma200_pct": -5.6847404935860375, "distance_from_ma50_pct": -6.433911223030586, "volatility_20d_pct": 119.51576459001842, "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": "RHIM_CFD.UK", "name": "RHI MAGNESITA NV", "sector": "", "last_price": 2550.0, "change_1d_pct": -6.764168190127973, "distance_from_ma200_pct": -2.35709026809392, "distance_from_ma50_pct": 0.9429816244979738, "volatility_20d_pct": 151.25590362229855, "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": "HBR_CFD.UK", "name": "HARBOUR ENERGY PLC", "sector": "", "last_price": 293.4, "change_1d_pct": -2.3172193367958616, "distance_from_ma200_pct": 32.20661812632039, "distance_from_ma50_pct": 13.726219824177853, "volatility_20d_pct": 156.34190016756523, "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": "PNN_CFD.UK", "name": "PENNON GROUP PLC", "sector": "", "last_price": 599.27, "change_1d_pct": 16.58722592945663, "distance_from_ma200_pct": 23.75684537859759, "distance_from_ma50_pct": 16.983140154106113, "volatility_20d_pct": 84.07433118596934, "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": "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": "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": "CNA_CFD.UK", "name": "CENTRICA PLC", "sector": "", "last_price": 219.4, "change_1d_pct": 8.452792881858628, "distance_from_ma200_pct": 26.974463027947415, "distance_from_ma50_pct": 12.919213868167589, "volatility_20d_pct": 108.05347024816936, "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": "HUBS_CFD.US", "name": "HubSpot Inc", "sector": "", "last_price": 209.29, "change_1d_pct": -9.76934684199181, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -39.141166091198976, "volatility_20d_pct": 7372.220885228378, "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": 191.8, "change_1d_pct": -27.731725697061027, "distance_from_ma200_pct": -25.425914067168765, "distance_from_ma50_pct": -16.54505218327368, "volatility_20d_pct": 249.00720326714767, "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.1, "change_1d_pct": -10.61507936507937, "distance_from_ma200_pct": -10.657490467074904, "distance_from_ma50_pct": -8.545188421272742, "volatility_20d_pct": 126.22890829663649, "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": "VXXB_CFD.ETF", "name": "IPATH SERIES B S&P 500 VIX", "sector": "", "last_price": 36.18, "change_1d_pct": 5.4810495626822275, "distance_from_ma200_pct": 4.488258788941213, "distance_from_ma50_pct": 16.413761149079107, "volatility_20d_pct": 169.75949201361448, "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": "SMG_CFD.US", "name": "", "sector": "", "last_price": 63.15, "change_1d_pct": 4.001976284584985, "distance_from_ma200_pct": 2.9045480877108565, "distance_from_ma50_pct": -3.3721069012054516, "volatility_20d_pct": 87.1544710211987, "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": 183.5, "change_1d_pct": -5.534105534105538, "distance_from_ma200_pct": -13.158231617644445, "distance_from_ma50_pct": 5.595587888329945, "volatility_20d_pct": 140.16230415606387, "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": 172.2, "change_1d_pct": -2.7118644067796627, "distance_from_ma200_pct": -19.879269877746097, "distance_from_ma50_pct": -24.25375432175879, "volatility_20d_pct": 8127.791425139084, "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": "COTY_CFD.US", "name": "Coty Inc", "sector": "", "last_price": 2.65, "change_1d_pct": -0.7490636704119868, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -12.425644415069403, "volatility_20d_pct": 7661.46272234243, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ATG_CFD.UK", "name": "AUCTION TECHNOLOGY GROUP", "sector": "", "last_price": 313.0, "change_1d_pct": 0.3205128205128194, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 0.8343803356850588, "volatility_20d_pct": 2871.9337920464413, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CABO_CFD.US", "name": "Cable One Inc", "sector": "", "last_price": 109.96, "change_1d_pct": -4.7222944285590485, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 10.582579924977598, "volatility_20d_pct": 9205.89183144133, "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": "HAS_CFD.UK",
"selection_reason": "Large 1-day drop (-17.2%), deeply below MA50 (-12.9%) and MA200 (-26.5%), high volatility (118%), no earnings date known.",
"mean_reversion_score": 85
},
{
"symbol": "THG_CFD.UK",
"selection_reason": "Sharp 1-day decline (-21.5%), below MA50 (-18.7%), near MA200 (+2.7%), high volatility (150.5%), no earnings date known.",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Extreme 1-day drop (-36.8%), deeply below MA50 (-31.7%) and MA200 (-40.6%), high volatility (193.2%), no earnings date known.",
"mean_reversion_score": 75
},
{
"symbol": "OCDO_CFD.UK",
"selection_reason": "Large 1-day decline (-27.7%), below MA50 (-16.5%) and MA200 (-25.4%), high volatility (249%), no earnings date known.",
"mean_reversion_score": 70
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Significant 1-day drop (-26.6%), below MA50 (-22.1%) and MA200 (-13.4%), high volatility (169%), no earnings date known.",
"mean_reversion_score": 65
}
],
"rejected_common_reasons": [
"No MA200 data available (e.g., ATG_CFD.UK, HUBS_CFD.US)",
"Price above MA50/MA200 (e.g., RS1_CFD.UK, JUP_CFD.UK)",
"Low volatility or insufficient deviation from moving averages (e.g., SHC_CFD.UK, PAG_CFD.UK)",
"ETF or non-equity instrument (e.g., VXXB_CFD.ETF)"
]
}#2161 • openrouter • mistralai/mistral-large-2512 • 2026-04-08T11:41:11.790168+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": "AAL_CFD.UK", "qty": 0.0, "avg_price": 2913.0, "last_price": 2900.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "ACM_CFD.US", "qty": 0.0, "avg_price": 88.42, "last_price": 97.88, "unrealized_pnl": 0.0, "opened_at": "2026-02-15T10:57:15.913854+00:00"}, {"symbol": "ADS_CFD.DE", "qty": 0.0, "avg_price": 137.15, "last_price": 138.55, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "AIR_CFD.DE", "qty": 0.0, "avg_price": 200.984, "last_price": 187.12, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "AMCX_CFD.US", "qty": 0.0, "avg_price": 7.5, "last_price": 7.365, "unrealized_pnl": -53.999999999999915, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "AMH_CFD.US", "qty": 0.0, "avg_price": 29.595, "last_price": 29.485, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "ATG_CFD.UK", "qty": 0.0, "avg_price": 296.0, "last_price": 296.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "ATO_CFD.FR", "qty": 0.0, "avg_price": 35.106, "last_price": 38.024, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+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-19T18:04:14.272849+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.453, "last_price": 0.453, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+00:00"}, {"symbol": "BLND_CFD.UK", "qty": 0.0, "avg_price": 364.2, "last_price": 364.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "BOY_CFD.UK", "qty": 4.73186119873817, "avg_price": 634.0, "last_price": 634.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-31T17:54:15.044829+00:00"}, {"symbol": "BRBY_CFD.UK", "qty": 0.0, "avg_price": 1070.84, "last_price": 1070.84, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "BTRW_CFD.UK", "qty": 11.961722488038276, "avg_price": 250.8, "last_price": 255.0, "unrealized_pnl": 50.23923444976062, "opened_at": "2026-03-23T18:04:09.108429+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 0.0, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-15T10:57:15.913854+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": "CRST_CFD.UK", "qty": 25.246149962130776, "avg_price": 118.83, "last_price": 103.4, "unrealized_pnl": -389.54809391567767, "opened_at": "2026-03-18T17:58:33.497657+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 350.24, "last_price": 350.055, "unrealized_pnl": -1.5846276838739344, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "DLTR_CFD.US", "qty": 0.0, "avg_price": 112.12, "last_price": 107.655, "unrealized_pnl": 0.0, "opened_at": "2026-03-17T18:12:35.221859+00:00"}, {"symbol": "DOM_CFD.UK", "qty": 0.0, "avg_price": 199.3, "last_price": 189.21, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+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": "ESNT_CFD.UK", "qty": 0.0, "avg_price": 95.5, "last_price": 90.3, "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": 54.045, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "EVT_CFD.DE", "qty": 0.0, "avg_price": 4.502, "last_price": 4.353, "unrealized_pnl": 0.0, "opened_at": "2026-03-11T10:11:17.665074+00:00"}, {"symbol": "EXM_CFD.BE", "qty": 0.0, "avg_price": 10.0, "last_price": 9.933, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "EXPD_CFD.US", "qty": 22.01269398686576, "avg_price": 136.285, "last_price": 144.57999999999998, "unrealized_pnl": 182.5952966210512, "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-20T17:33:34.647633+00:00"}, {"symbol": "FRVIA_CFD.FR", "qty": 0.0, "avg_price": 12.709, "last_price": 12.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+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": 6.53, "last_price": 6.35, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "GRI_CFD.UK", "qty": 0.0, "avg_price": 189.6, "last_price": 189.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 4.854368932038835, "avg_price": 1236.0, "last_price": 1325.0, "unrealized_pnl": 432.0388349514563, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "ICG_CFD.UK", "qty": 2.0053475935828877, "avg_price": 1496.0, "last_price": 1496.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "INF_CFD.UK", "qty": 4.0474905558553695, "avg_price": 741.2, "last_price": 772.8, "unrealized_pnl": 127.90070156502931, "opened_at": "2026-03-21T10:00:02.317290+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-13T10:07:39.444598+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-16T18:18:58.833148+00:00"}, {"symbol": "JDW_CFD.UK", "qty": 0.0, "avg_price": 664.5, "last_price": 664.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T10:35:48.762746+00:00"}, {"symbol": "JEF_CFD.US", "qty": 0.0, "avg_price": 47.46, "last_price": 44.27, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T18:07:22.382508+00:00"}, {"symbol": "JMAT_CFD.UK", "qty": 1.6528925619834711, "avg_price": 1815.0, "last_price": 1971.0, "unrealized_pnl": 257.8512396694215, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "KGF_CFD.UK", "qty": 10.526315789473685, "avg_price": 285.0, "last_price": 286.4, "unrealized_pnl": 14.73684210526292, "opened_at": "2026-03-27T09:59:46.331143+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 0.0, "avg_price": 250.0, "last_price": 257.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "MCG_CFD.UK", "qty": 0.0, "avg_price": 17.39, "last_price": 17.39, "unrealized_pnl": 0.0, "opened_at": "2026-03-27T18:04:13.865611+00:00"}, {"symbol": "MSLH_CFD.UK", "qty": 0.0, "avg_price": 140.8, "last_price": 140.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T17:59:11.913241+00:00"}, {"symbol": "NA9_CFD.DE", "qty": 0.0, "avg_price": 48.578, "last_price": 53.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 0.0, "avg_price": 204.3, "last_price": 187.73, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "OKTA_CFD.US", "qty": 0.0, "avg_price": 70.18, "last_price": 79.26, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 67.72009029345372, "avg_price": 132.9, "last_price": 132.9, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "PAG_CFD.UK", "qty": 3.9190071848465053, "avg_price": 765.5, "last_price": 765.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-22T18:18:31.438015+00:00"}, {"symbol": "PSN_CFD.UK", "qty": 0.0, "avg_price": 1068.0, "last_price": 1066.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-21T10:00:02.317290+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 424.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "SOI_CFD.FR", "qty": 0.0, "avg_price": 57.5, "last_price": 54.96, "unrealized_pnl": 0.0, "opened_at": "2026-03-19T10:09:24.325041+00:00"}, {"symbol": "STJ_CFD.UK", "qty": 2.459016393442623, "avg_price": 1220.0, "last_price": 1202.0, "unrealized_pnl": -44.26229508196722, "opened_at": "2026-03-15T10:35:48.762746+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 85.9598853868195, "avg_price": 34.9, "last_price": 46.45, "unrealized_pnl": 992.8366762177656, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "THG_CFD.UK", "qty": 103.8781163434903, "avg_price": 28.88, "last_price": 28.88, "unrealized_pnl": 0.0, "opened_at": "2026-04-07T10:08:43.931517+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-22T18:18:31.438015+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 0.0, "avg_price": 184.50000000000003, "last_price": 211.4, "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": 224.82, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "TUI1_CFD.DE", "qty": 0.0, "avg_price": 7.398000000000001, "last_price": 6.95, "unrealized_pnl": -181.67072181670738, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 32.48511099079589, "avg_price": 92.35, "last_price": 102.5, "unrealized_pnl": 329.72387655657843, "opened_at": "2026-02-20T09:33:44.817899+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": 505.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-26T17:55:26.602359+00:00"}, {"symbol": "VSVS_CFD.UK", "qty": 0.0, "avg_price": 425.0, "last_price": 421.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T18:18:58.833148+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 0.0, "avg_price": 385.0, "last_price": 385.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-11T10:11:17.665074+00:00"}, {"symbol": "WEIR_CFD.UK", "qty": 0.0, "avg_price": 2890.0, "last_price": 2842.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T10:03:26.036362+00:00"}, {"symbol": "WIX_CFD.UK", "qty": 0.0, "avg_price": 224.5, "last_price": 222.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 1087.0, "last_price": 1064.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "WKP_CFD.UK", "qty": 0.0, "avg_price": 412.5, "last_price": 412.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 263.4, "last_price": 257.0, "unrealized_pnl": -72.89293849658289, "opened_at": "2026-02-18T09:36:37.284518+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": "HAS_CFD.UK", "mean_reversion_score": 85, "selection_reason": "Large 1-day drop (-17.2%), deeply below MA50 (-12.9%) and MA200 (-26.5%), high volatility (118%), no earnings date known."}, {"symbol": "THG_CFD.UK", "mean_reversion_score": 80, "selection_reason": "Sharp 1-day decline (-21.5%), below MA50 (-18.7%), near MA200 (+2.7%), high volatility (150.5%), no earnings date known."}, {"symbol": "PAGE_CFD.UK", "mean_reversion_score": 75, "selection_reason": "Extreme 1-day drop (-36.8%), deeply below MA50 (-31.7%) and MA200 (-40.6%), high volatility (193.2%), no earnings date known."}, {"symbol": "OCDO_CFD.UK", "mean_reversion_score": 70, "selection_reason": "Large 1-day decline (-27.7%), below MA50 (-16.5%) and MA200 (-25.4%), high volatility (249%), no earnings date known."}, {"symbol": "CBG_CFD.UK", "mean_reversion_score": 65, "selection_reason": "Significant 1-day drop (-26.6%), below MA50 (-22.1%) and MA200 (-13.4%), high volatility (169%), no earnings date known."}], "output_schema": {"actions": {"sell": [{"symbol": "string", "reason": "string"}], "hold": [{"symbol": "string", "reason": "string"}], "buy": [{"symbol": "string", "position_size": "number (currency amount)", "reason": "string"}]}, "portfolio_rationale": "string"}}Output JSON
{
"actions": {
"buy": [
{
"reason": "Highest mean-reversion score (85) with large 1-day drop (-17.2%) and deeply below MA50 (-12.9%) and MA200 (-26.5%). High volatility suggests potential for rebound.",
"symbol": "HAS_CFD.UK",
"position_size": 3000
},
{
"reason": "Strong mean-reversion score (70) with large 1-day decline (-27.7%) and below MA50 (-16.5%) and MA200 (-25.4%). High volatility (249%) suggests potential for rebound.",
"symbol": "OCDO_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "BOY_CFD.UK"
},
{
"reason": "Modest unrealized gain (50.24). No strong mean-reversion signal to justify selling.",
"symbol": "BTRW_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "CBG_CFD.UK"
},
{
"reason": "Modest unrealized gain (182.60). No strong mean-reversion signal to justify selling.",
"symbol": "EXPD_CFD.US"
},
{
"reason": "Modest unrealized gain (141.45). No strong mean-reversion signal to justify selling.",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "Strong unrealized gain (432.04) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "HIK_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "ICG_CFD.UK"
},
{
"reason": "Modest unrealized gain (127.90). No strong mean-reversion signal to justify selling.",
"symbol": "INF_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Strong unrealized gain (257.85) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "JMAT_CFD.UK"
},
{
"reason": "Modest unrealized gain (14.74). No strong mean-reversion signal to justify selling.",
"symbol": "KGF_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "PAG_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Modest unrealized loss (-44.26). No strong mean-reversion signal to justify selling.",
"symbol": "STJ_CFD.UK"
},
{
"reason": "Strong unrealized gain (992.84) but no clear exit signal. Holding to avoid overtrading.",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "Already held; candidate list suggests potential but current position is stable. Prefer to avoid doubling down without stronger confirmation.",
"symbol": "THG_CFD.UK"
},
{
"reason": "No significant price movement or mean-reversion signal. Holding to avoid overtrading.",
"symbol": "TPK_CFD.UK"
},
{
"reason": "Modest unrealized gain (329.72). No strong mean-reversion signal to justify selling.",
"symbol": "UKW_CFD.UK"
}
],
"sell": [
{
"reason": "Significant unrealized loss (-389.55) with no clear mean-reversion signal in current candidates. Prefer to reallocate capital to stronger mean-reversion opportunities.",
"symbol": "CRST_CFD.UK"
}
]
},
"portfolio_rationale": "Reallocating capital from underperforming position (CRST_CFD.UK) to stronger mean-reversion opportunities (HAS_CFD.UK, OCDO_CFD.UK). Holding existing positions with gains or stable prices to avoid overtrading. Strategy adheres to max 2 buys/sells per run and fixed position size of 3000.0."
}Selection logs
#1048 • stage1 • 2026-04-08T11:41:11.784349+00:00
{
"selected_stocks": [
{
"symbol": "HAS_CFD.UK",
"selection_reason": "Large 1-day drop (-17.2%), deeply below MA50 (-12.9%) and MA200 (-26.5%), high volatility (118%), no earnings date known.",
"mean_reversion_score": 85
},
{
"symbol": "THG_CFD.UK",
"selection_reason": "Sharp 1-day decline (-21.5%), below MA50 (-18.7%), near MA200 (+2.7%), high volatility (150.5%), no earnings date known.",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Extreme 1-day drop (-36.8%), deeply below MA50 (-31.7%) and MA200 (-40.6%), high volatility (193.2%), no earnings date known.",
"mean_reversion_score": 75
},
{
"symbol": "OCDO_CFD.UK",
"selection_reason": "Large 1-day decline (-27.7%), below MA50 (-16.5%) and MA200 (-25.4%), high volatility (249%), no earnings date known.",
"mean_reversion_score": 70
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "Significant 1-day drop (-26.6%), below MA50 (-22.1%) and MA200 (-13.4%), high volatility (169%), no earnings date known.",
"mean_reversion_score": 65
}
],
"rejected_common_reasons": [
"No MA200 data available (e.g., ATG_CFD.UK, HUBS_CFD.US)",
"Price above MA50/MA200 (e.g., RS1_CFD.UK, JUP_CFD.UK)",
"Low volatility or insufficient deviation from moving averages (e.g., SHC_CFD.UK, PAG_CFD.UK)",
"ETF or non-equity instrument (e.g., VXXB_CFD.ETF)"
]
}