Arena run #1036
meanrev-v1 • openai • openai/gpt-5.2-pro • US • success
Run status
as_of: 2026-04-03T18:06:55.972569+00:00
started_at: 2026-04-03T19:26:13.700720+00:00
finished_at: 2026-04-03T19:28:27.405975+00:00
duration_ms: 133703
Inputs
{
"as_of": "2026-04-03T18:06:55.972569+00:00",
"dry_run": false,
"selected": [
{
"symbol": "EEFT_CFD.US",
"selection_reason": "-21.6% vs MA200 and -8.3% vs MA50 with a -3.1% 1d drop (oversold dislocation for short-horizon reversion)",
"mean_reversion_score": 78
},
{
"symbol": "CLX_CFD.US",
"selection_reason": "Deeply below trend: -11.8% vs MA200 and -11.2% vs MA50 with muted 1d move (potential snapback mean reversion)",
"mean_reversion_score": 70
},
{
"symbol": "AMT_CFD.US",
"selection_reason": "Below longer/medium trend (-8.2% vs MA200, -2.8% vs MA50) with modest 1d uptick (reversion-to-mean setup without extreme volatility)",
"mean_reversion_score": 55
},
{
"symbol": "CCI_CFD.US",
"selection_reason": "Large +7.5% 1d jump while still -7.3% vs MA200 (possible short-term overreaction suitable for mean reversion)",
"mean_reversion_score": 45
},
{
"symbol": "AMCX_CFD.US",
"selection_reason": "Near MA50 (-0.27%) with MA200 unavailable; included to complete US-only candidate set, but 20d volatility metric is an outlier (lower confidence)",
"mean_reversion_score": 35
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"CRST_CFD.UK",
"FUTR_CFD.UK",
"PHP_CFD.UK",
"SPX_CFD.UK",
"PAGE_CFD.UK",
"ICG_CFD.UK",
"JDW_CFD.UK",
"MCG_CFD.UK",
"SHC_CFD.UK",
"PAG_CFD.UK",
"LIO_CFD.UK",
"UTG_CFD.UK",
"CBG_CFD.UK",
"DLN_CFD.UK",
"DOM_CFD.UK",
"OCDO_CFD.UK",
"HWDN_CFD.UK",
"STJ_CFD.UK",
"BBY_CFD.UK",
"IEP_CFD.BE",
"MAB_CFD.UK",
"IPO_CFD.UK",
"CMCX_CFD.UK",
"GROW_CFD.UK",
"IWG_CFD.UK",
"SRP_CFD.UK",
"BYIT_CFD.UK",
"VIRI_CFD.FR",
"UKW_CFD.UK",
"CCI_CFD.US",
"ATG_CFD.UK",
"BTRW_CFD.UK",
"CO_CFD.FR",
"ITV_CFD.UK",
"DOCS_CFD.UK",
"AUTO_CFD.UK",
"EEFT_CFD.US",
"GRI_CFD.UK",
"ABDN_CFD.UK",
"ALTR_CFD.PT",
"KGF_CFD.UK",
"AMCX_CFD.US",
"LPE_CFD.FR",
"AMT_CFD.US",
"SBS_CFD.DE",
"BRBY_CFD.UK",
"PHARM_CFD.NL",
"CLX_CFD.US",
"DECB_CFD.BE"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Highest mean-reversion score (78): large dislocation vs MA200/MA50 and recent down move indicates an oversold setup suitable for reversion.",
"symbol": "EEFT_CFD.US",
"position_size": 3000
},
{
"reason": "Second-highest score (70): deeply below MA200/MA50 with muted 1d move, consistent with a snapback mean-reversion candidate.",
"symbol": "CLX_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "Maintain existing position; currently down modestly vs entry and no new risk/edge information provided to justify trimming under the avoid-overtrading rule.",
"symbol": "ADBE_CFD.US"
},
{
"reason": "Recently opened and flat; avoid immediate churn without a clear improvement signal.",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Small unrealized gain; keep exposure and avoid unnecessary turnover.",
"symbol": "COTY_CFD.US"
},
{
"reason": "Maintain position despite drawdown; no provided risk event or superior replacement signal that clearly dominates after accounting for turnover limits.",
"symbol": "FICO_CFD.US"
},
{
"reason": "Hold to avoid selling into weakness; already down vs entry and no forced risk event indicated.",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Hold to avoid selling into a large drawdown without a forced risk event; keep within sell limit while rotating out flatter positions instead.",
"symbol": "PSN_CFD.UK"
},
{
"reason": "Near flat/slightly positive; keep position and avoid churning.",
"symbol": "ULTA_CFD.US"
},
{
"reason": "Hold; position is meaningfully down and the strategy is mean-reversion oriented, so avoid realizing losses without a clear risk trigger.",
"symbol": "ZS_CFD.US"
}
],
"sell": [
{
"reason": "Rotation to a US-only mean-reversion candidate set while at the 10-position cap; PAGE is flat vs entry and provides a low-friction slot to redeploy into higher-scoring US setups.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Rotation to US-only candidates and to stay within the 10-position limit and ~3.0x gross leverage cap; UTG is approximately flat and is a suitable source of funds versus holding higher-conviction (oversold) US candidates.",
"symbol": "UTG_CFD.UK"
}
]
},
"portfolio_rationale": "The portfolio is already at the 10-position maximum and near the 3.0x gross leverage limit, so any additions require offsetting sells. To improve alignment with the US-only candidate set without overtrading, the plan sells two approximately flat UK positions (PAGE, UTG) and reallocates that exposure into the two highest-scoring US mean-reversion candidates (EEFT, CLX), respecting the max 2 sells and max 2 buys per run and the fixed $3,000 position sizing rule."
}Prompts & responses
#2009 • openrouter • openai/gpt-5.2-pro • 2026-04-03T19:26:13.748028+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": "FUTR_CFD.UK", "name": "FUTURE PLC", "sector": "", "last_price": 368.42, "change_1d_pct": -30.74812030075188, "distance_from_ma200_pct": -45.17933560634293, "distance_from_ma50_pct": -32.26659626501075, "volatility_20d_pct": 170.38116786538166, "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": "PHP_CFD.UK", "name": "PRIMARY HEALTH PROPERTIES", "sector": "", "last_price": 107.7, "change_1d_pct": 10.518214468958442, "distance_from_ma200_pct": 11.915056783642308, "distance_from_ma50_pct": 10.278080977082226, "volatility_20d_pct": 53.84238650296991, "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": "PAGE_CFD.UK", "name": "PAGEGROUP PLC", "sector": "", "last_price": 152.7, "change_1d_pct": -36.79635761589404, "distance_from_ma200_pct": -40.61156091058385, "distance_from_ma50_pct": -31.72721647345812, "volatility_20d_pct": 193.22753953431183, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ICG_CFD.UK", "name": "ICG Plc", "sector": "", "last_price": 1693.0, "change_1d_pct": -15.18545979199647, "distance_from_ma200_pct": -16.18296530905513, "distance_from_ma50_pct": -12.256151916578562, "volatility_20d_pct": 73.10253575454833, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "JDW_CFD.UK", "name": "WETHERSPOON (J.D.) PLC", "sector": "", "last_price": 748.5, "change_1d_pct": 9.750733137829904, "distance_from_ma200_pct": 6.242631058659898, "distance_from_ma50_pct": 5.290077328071208, "volatility_20d_pct": 98.2373545531062, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "MCG_CFD.UK", "name": "MOBICO GROUP PLC", "sector": "", "last_price": 19.51, "change_1d_pct": -21.646586345381515, "distance_from_ma200_pct": -29.294942649537013, "distance_from_ma50_pct": -17.188746837807088, "volatility_20d_pct": 260.52106739031456, "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": 765.5, "change_1d_pct": -10.205278592375366, "distance_from_ma200_pct": -11.408973443523374, "distance_from_ma50_pct": -9.577486483281216, "volatility_20d_pct": 5056.817807070409, "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": 257.5, "change_1d_pct": 3.8306451612903247, "distance_from_ma200_pct": -20.8874735683513, "distance_from_ma50_pct": 0.10846703807232405, "volatility_20d_pct": 141.21527367452939, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "UTG_CFD.UK", "name": "UNITE GROUP PLC/THE", "sector": "", "last_price": 505.0, "change_1d_pct": -8.265213442325159, "distance_from_ma200_pct": -32.12786599325862, "distance_from_ma50_pct": -13.548388422126267, "volatility_20d_pct": 98.87339279796446, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "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": "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": "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": "STJ_CFD.UK", "name": "ST JAMES'S PLACE PLC", "sector": "", "last_price": 1280.0, "change_1d_pct": -14.836992681304062, "distance_from_ma200_pct": 4.633703562254432, "distance_from_ma50_pct": -6.669417974449299, "volatility_20d_pct": 125.87476157380789, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BBY_CFD.UK", "name": "BALFOUR BEATTY PLC", "sector": "", "last_price": 759.18, "change_1d_pct": 5.222453222453205, "distance_from_ma200_pct": 33.313724414201815, "distance_from_ma50_pct": 8.832962232591, "volatility_20d_pct": 54.25956465831767, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "IEP_CFD.BE", "name": "IEP Invest NV", "sector": "", "last_price": 5.4, "change_1d_pct": 0.0, "distance_from_ma200_pct": 0.9951765451794659, "distance_from_ma50_pct": 0.5657756042326989, "volatility_20d_pct": 138.39532879660115, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "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": "IPO_CFD.UK", "name": "IP GROUP PLC", "sector": "", "last_price": 57.6, "change_1d_pct": -1.873935264054516, "distance_from_ma200_pct": 10.233643652522883, "distance_from_ma50_pct": -2.027486732888828, "volatility_20d_pct": 89.82123635439407, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "CMCX_CFD.UK", "name": "CMC MARKETS PLC", "sector": "", "last_price": 336.5, "change_1d_pct": 6.487341772151889, "distance_from_ma200_pct": 33.727269096422944, "distance_from_ma50_pct": 13.399699398122245, "volatility_20d_pct": 207.2492443353413, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "GROW_CFD.UK", "name": "MOLTEN VENTURES PLC", "sector": "", "last_price": 465.0, "change_1d_pct": 1.572739187418093, "distance_from_ma200_pct": 22.569628774815076, "distance_from_ma50_pct": -4.275686024250158, "volatility_20d_pct": 115.72658030340939, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "IWG_CFD.UK", "name": "IWG PLC", "sector": "", "last_price": 177.0, "change_1d_pct": -26.786896095301127, "distance_from_ma200_pct": -17.645939421376646, "distance_from_ma50_pct": -22.14236071400294, "volatility_20d_pct": 154.02502086657427, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "SRP_CFD.UK", "name": "SERCO GROUP PLC", "sector": "", "last_price": 300.0, "change_1d_pct": -0.3984063745019917, "distance_from_ma200_pct": 34.11120814305375, "distance_from_ma50_pct": 6.89280433272168, "volatility_20d_pct": 77.89780733903845, "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": "VIRI_CFD.FR", "name": "VIRIDIEN", "sector": "", "last_price": 127.1, "change_1d_pct": 32.258064516129025, "distance_from_ma200_pct": 86.88026988392838, "distance_from_ma50_pct": 29.097132641971314, "volatility_20d_pct": 297.97668648307325, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "UKW_CFD.UK", "name": "GREENCOAT UK WIND PLC", "sector": "", "last_price": 98.75, "change_1d_pct": -0.05060728744938903, "distance_from_ma200_pct": -11.408996180942744, "distance_from_ma50_pct": -4.589556348683388, "volatility_20d_pct": 64.15684506219812, "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": "CCI_CFD.US", "name": "Crown Castle", "sector": "", "last_price": 86.64, "change_1d_pct": 7.533821521658202, "distance_from_ma200_pct": -7.285087120877709, "distance_from_ma50_pct": 1.1468918111177562, "volatility_20d_pct": 60.76128339441084, "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": "BTRW_CFD.UK", "name": "Barratt Redrow Plc", "sector": "", "last_price": 265.0, "change_1d_pct": -24.458380843785633, "distance_from_ma200_pct": -31.60081201451096, "distance_from_ma50_pct": -26.246873145735073, "volatility_20d_pct": 135.16950343577923, "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": "CO_CFD.FR", "name": "Casino Guichard Perrachon", "sector": "", "last_price": 0.161, "change_1d_pct": 0.6250000000000089, "distance_from_ma200_pct": -54.63319103371514, "distance_from_ma50_pct": -21.973441892022873, "volatility_20d_pct": 159.06564182763353, "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": "ITV_CFD.UK", "name": "ITV PLC", "sector": "", "last_price": 77.2, "change_1d_pct": -8.313539192399045, "distance_from_ma200_pct": -3.1613066700786008, "distance_from_ma50_pct": -5.057064147973234, "volatility_20d_pct": 145.60286782433963, "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": 64.4, "change_1d_pct": -3.7369207772795177, "distance_from_ma200_pct": -14.81943439575366, "distance_from_ma50_pct": -12.617301774248702, "volatility_20d_pct": 126.3056770096304, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "AUTO_CFD.UK", "name": "AUTOTRADER GROUP PLC", "sector": "", "last_price": 490.4, "change_1d_pct": -38.63326367424575, "distance_from_ma200_pct": -37.426260695289436, "distance_from_ma50_pct": -31.896720766000808, "volatility_20d_pct": 130.06763966702516, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "EEFT_CFD.US", "name": "Euronet Worldwide Inc", "sector": "", "last_price": 64.79, "change_1d_pct": -3.124999999999989, "distance_from_ma200_pct": -21.62251909989893, "distance_from_ma50_pct": -8.277791305431137, "volatility_20d_pct": 71.85042530060264, "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": "GRI_CFD.UK", "name": "GRAINGER PLC", "sector": "", "last_price": 192.4, "change_1d_pct": 0.08322929671245038, "distance_from_ma200_pct": -4.9312468607917275, "distance_from_ma50_pct": 0.9128310349964197, "volatility_20d_pct": 71.43116862190418, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ABDN_CFD.UK", "name": "Aberdeen Group Plc", "sector": "", "last_price": 193.2, "change_1d_pct": -11.780821917808225, "distance_from_ma200_pct": 1.3805491026614547, "distance_from_ma50_pct": -6.772144752169284, "volatility_20d_pct": 87.08429925175024, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ALTR_CFD.PT", "name": "Altri SGPS SA", "sector": "", "last_price": 4.615, "change_1d_pct": 0.654307524536546, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 0.7136154332976874, "volatility_20d_pct": 2215.5809254008673, "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": 288.9, "change_1d_pct": -19.683069224353634, "distance_from_ma200_pct": -1.601320156743069, "distance_from_ma50_pct": -11.033453146133033, "volatility_20d_pct": 108.51503014907387, "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": "AMCX_CFD.US", "name": "AMC Networks Inc", "sector": "", "last_price": 8.28, "change_1d_pct": 1.2224938875305513, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -0.2686002673958021, "volatility_20d_pct": 6812.335365586905, "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": "LPE_CFD.FR", "name": "Laurent-Perrier SA", "sector": "", "last_price": 84.0, "change_1d_pct": -1.6393442622950838, "distance_from_ma200_pct": -8.489031348226206, "distance_from_ma50_pct": -5.312616034316509, "volatility_20d_pct": 63.15525857156119, "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": "AMT_CFD.US", "name": "American Tower Corp", "sector": "", "last_price": 175.65, "change_1d_pct": 2.145847871598039, "distance_from_ma200_pct": -8.19536069057576, "distance_from_ma50_pct": -2.8459794884161838, "volatility_20d_pct": 48.076552267548955, "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": "SBS_CFD.DE", "name": "Stratec SE", "sector": "", "last_price": 17.74, "change_1d_pct": 4.004221140880571, "distance_from_ma200_pct": -26.531612941700722, "distance_from_ma50_pct": -11.33635209564079, "volatility_20d_pct": 86.48165309892673, "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": "BRBY_CFD.UK", "name": "BURBERRY GROUP PLC", "sector": "", "last_price": 1106.0, "change_1d_pct": 5.786704925872788, "distance_from_ma200_pct": -7.436242527422432, "distance_from_ma50_pct": -2.755466927626671, "volatility_20d_pct": 136.53537118978804, "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": "PHARM_CFD.NL", "name": "Pharming Group", "sector": "", "last_price": 1.456, "change_1d_pct": 5.583756345177671, "distance_from_ma200_pct": 35.78732869206771, "distance_from_ma50_pct": 5.19319134179117, "volatility_20d_pct": 78.16774316488151, "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": "CLX_CFD.US", "name": "The Clorox Company", "sector": "", "last_price": 101.93, "change_1d_pct": 0.07854688267061594, "distance_from_ma200_pct": -11.750407677099817, "distance_from_ma50_pct": -11.171184360969333, "volatility_20d_pct": 69.23160342148947, "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": "DECB_CFD.BE", "name": "Deceuninck Sa", "sector": "", "last_price": 2.055, "change_1d_pct": 0.24390243902441266, "distance_from_ma200_pct": -4.7886005777547975, "distance_from_ma50_pct": -7.404069715047834, "volatility_20d_pct": 61.673824465603, "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": "EEFT_CFD.US",
"selection_reason": "-21.6% vs MA200 and -8.3% vs MA50 with a -3.1% 1d drop (oversold dislocation for short-horizon reversion)",
"mean_reversion_score": 78
},
{
"symbol": "CLX_CFD.US",
"selection_reason": "Deeply below trend: -11.8% vs MA200 and -11.2% vs MA50 with muted 1d move (potential snapback mean reversion)",
"mean_reversion_score": 70
},
{
"symbol": "AMT_CFD.US",
"selection_reason": "Below longer/medium trend (-8.2% vs MA200, -2.8% vs MA50) with modest 1d uptick (reversion-to-mean setup without extreme volatility)",
"mean_reversion_score": 55
},
{
"symbol": "CCI_CFD.US",
"selection_reason": "Large +7.5% 1d jump while still -7.3% vs MA200 (possible short-term overreaction suitable for mean reversion)",
"mean_reversion_score": 45
},
{
"symbol": "AMCX_CFD.US",
"selection_reason": "Near MA50 (-0.27%) with MA200 unavailable; included to complete US-only candidate set, but 20d volatility metric is an outlier (lower confidence)",
"mean_reversion_score": 35
}
],
"rejected_common_reasons": [
"Non-US listings excluded for a US-region scan",
"Insufficient deviation from MA50/MA200 to suggest a mean-reversion edge",
"Move appears too extended with very high 20d volatility / potential data outlier risk",
"Potentially event-driven/binary behavior cannot be ruled out with provided fields",
"Earnings timing unknown; candidates with known earnings within 5 trading days would be excluded"
]
}#2010 • openrouter • openai/gpt-5.2-pro • 2026-04-03T19:27:10.140025+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": "ADBE_CFD.US", "qty": 12.025494047380446, "avg_price": 249.47, "last_price": 242.93, "unrealized_pnl": -78.64673106986803, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "AMH_CFD.US", "qty": 0.0, "avg_price": 29.674999999999997, "last_price": 28.435000000000002, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "ARCAD_CFD.NL", "qty": 0.0, "avg_price": 28.6, "last_price": 30.0, "unrealized_pnl": 146.8531468531467, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "AUTO_CFD.UK", "qty": 6.2137531068765535, "avg_price": 482.8, "last_price": 482.8, "unrealized_pnl": 0.0, "opened_at": "2026-04-03T10:08:21.824313+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-16T09:30:55.514112+00:00"}, {"symbol": "CABO_CFD.US", "qty": 0.0, "avg_price": 94.325, "last_price": 108.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "CBG_CFD.UK", "qty": 0.0, "avg_price": 342.92, "last_price": 342.92, "unrealized_pnl": 0.0, "opened_at": "2026-03-20T10:26:40.341409+00:00"}, {"symbol": "COTY_CFD.US", "qty": 1496.2593516209477, "avg_price": 2.005, "last_price": 2.04, "unrealized_pnl": 52.36907730673338, "opened_at": "2026-03-29T18:14:52.152268+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 350.45000000000005, "last_price": 382.96500000000003, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "CSGP_CFD.US", "qty": 0.0, "avg_price": 47.235, "last_price": 40.870000000000005, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "DSY_CFD.FR", "qty": 0.0, "avg_price": 17.881, "last_price": 17.45, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "ETSY_CFD.US", "qty": 0.0, "avg_price": 44.13, "last_price": 50.769999999999996, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 437.5, "last_price": 348.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "FBIN_CFD.US", "qty": 0.0, "avg_price": 50.974999999999994, "last_price": 54.185, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "FICO_CFD.US", "qty": 2.6609662855571625, "avg_price": 1127.4099999999999, "last_price": 1086.08, "unrealized_pnl": -109.97773658207733, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "FLO_CFD.US", "qty": 0.0, "avg_price": 9.875, "last_price": 9.885000000000002, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 0.0, "avg_price": 284.2, "last_price": 284.2, "unrealized_pnl": 0.0, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1236.0, "last_price": 1236.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-28T10:05:22.022266+00:00"}, {"symbol": "ITRK_CFD.UK", "qty": 0.0, "avg_price": 3620.0, "last_price": 3620.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-28T10:05:22.022266+00:00"}, {"symbol": "IWG_CFD.UK", "qty": 16.216216216216218, "avg_price": 185.0, "last_price": 172.2, "unrealized_pnl": -207.56756756756778, "opened_at": "2026-03-17T10:04:29.123574+00:00"}, {"symbol": "MLCO_CFD.US", "qty": 0.0, "avg_price": 5.51, "last_price": 6.06, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 0.0, "avg_price": 204.3, "last_price": 204.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 22.57336343115124, "avg_price": 132.9, "last_price": 132.9, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T10:27:11.178069+00:00"}, {"symbol": "PAYC_CFD.US", "qty": 0.0, "avg_price": 121.22, "last_price": 134.24, "unrealized_pnl": 322.2240554363969, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "PSN_CFD.UK", "qty": 2.4691358024691357, "avg_price": 1215.0, "last_price": 1066.5, "unrealized_pnl": -366.66666666666663, "opened_at": "2026-03-12T18:01:52.554929+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-18T09:36:37.284518+00:00"}, {"symbol": "TMV_CFD.DE", "qty": 0.0, "avg_price": 4.781, "last_price": 4.467, "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": 204.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T10:27:11.178069+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 0.0, "avg_price": 92.35, "last_price": 92.35, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "ULTA_CFD.US", "qty": 5.605381165919282, "avg_price": 535.2, "last_price": 537.38, "unrealized_pnl": 12.219730941703755, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 6.504770164787511, "avg_price": 461.2, "last_price": 461.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-30T10:23:56.039732+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 232.09999999999997, "last_price": 232.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+00:00"}, {"symbol": "ZS_CFD.US", "qty": 18.778167250876315, "avg_price": 159.76, "last_price": 138.82, "unrealized_pnl": -393.21482223335, "opened_at": "2026-02-21T17:32:49.140800+00:00"}], "candidates": [{"symbol": "EEFT_CFD.US", "mean_reversion_score": 78, "selection_reason": "-21.6% vs MA200 and -8.3% vs MA50 with a -3.1% 1d drop (oversold dislocation for short-horizon reversion)"}, {"symbol": "CLX_CFD.US", "mean_reversion_score": 70, "selection_reason": "Deeply below trend: -11.8% vs MA200 and -11.2% vs MA50 with muted 1d move (potential snapback mean reversion)"}, {"symbol": "AMT_CFD.US", "mean_reversion_score": 55, "selection_reason": "Below longer/medium trend (-8.2% vs MA200, -2.8% vs MA50) with modest 1d uptick (reversion-to-mean setup without extreme volatility)"}, {"symbol": "CCI_CFD.US", "mean_reversion_score": 45, "selection_reason": "Large +7.5% 1d jump while still -7.3% vs MA200 (possible short-term overreaction suitable for mean reversion)"}, {"symbol": "AMCX_CFD.US", "mean_reversion_score": 35, "selection_reason": "Near MA50 (-0.27%) with MA200 unavailable; included to complete US-only candidate set, but 20d volatility metric is an outlier (lower confidence)"}], "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 (78): large dislocation vs MA200/MA50 and recent down move indicates an oversold setup suitable for reversion.",
"symbol": "EEFT_CFD.US",
"position_size": 3000
},
{
"reason": "Second-highest score (70): deeply below MA200/MA50 with muted 1d move, consistent with a snapback mean-reversion candidate.",
"symbol": "CLX_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "Maintain existing position; currently down modestly vs entry and no new risk/edge information provided to justify trimming under the avoid-overtrading rule.",
"symbol": "ADBE_CFD.US"
},
{
"reason": "Recently opened and flat; avoid immediate churn without a clear improvement signal.",
"symbol": "AUTO_CFD.UK"
},
{
"reason": "Small unrealized gain; keep exposure and avoid unnecessary turnover.",
"symbol": "COTY_CFD.US"
},
{
"reason": "Maintain position despite drawdown; no provided risk event or superior replacement signal that clearly dominates after accounting for turnover limits.",
"symbol": "FICO_CFD.US"
},
{
"reason": "Hold to avoid selling into weakness; already down vs entry and no forced risk event indicated.",
"symbol": "IWG_CFD.UK"
},
{
"reason": "Hold to avoid selling into a large drawdown without a forced risk event; keep within sell limit while rotating out flatter positions instead.",
"symbol": "PSN_CFD.UK"
},
{
"reason": "Near flat/slightly positive; keep position and avoid churning.",
"symbol": "ULTA_CFD.US"
},
{
"reason": "Hold; position is meaningfully down and the strategy is mean-reversion oriented, so avoid realizing losses without a clear risk trigger.",
"symbol": "ZS_CFD.US"
}
],
"sell": [
{
"reason": "Rotation to a US-only mean-reversion candidate set while at the 10-position cap; PAGE is flat vs entry and provides a low-friction slot to redeploy into higher-scoring US setups.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Rotation to US-only candidates and to stay within the 10-position limit and ~3.0x gross leverage cap; UTG is approximately flat and is a suitable source of funds versus holding higher-conviction (oversold) US candidates.",
"symbol": "UTG_CFD.UK"
}
]
},
"portfolio_rationale": "The portfolio is already at the 10-position maximum and near the 3.0x gross leverage limit, so any additions require offsetting sells. To improve alignment with the US-only candidate set without overtrading, the plan sells two approximately flat UK positions (PAGE, UTG) and reallocates that exposure into the two highest-scoring US mean-reversion candidates (EEFT, CLX), respecting the max 2 sells and max 2 buys per run and the fixed $3,000 position sizing rule."
}Selection logs
#978 • stage1 • 2026-04-03T19:27:10.137629+00:00
{
"selected_stocks": [
{
"symbol": "EEFT_CFD.US",
"selection_reason": "-21.6% vs MA200 and -8.3% vs MA50 with a -3.1% 1d drop (oversold dislocation for short-horizon reversion)",
"mean_reversion_score": 78
},
{
"symbol": "CLX_CFD.US",
"selection_reason": "Deeply below trend: -11.8% vs MA200 and -11.2% vs MA50 with muted 1d move (potential snapback mean reversion)",
"mean_reversion_score": 70
},
{
"symbol": "AMT_CFD.US",
"selection_reason": "Below longer/medium trend (-8.2% vs MA200, -2.8% vs MA50) with modest 1d uptick (reversion-to-mean setup without extreme volatility)",
"mean_reversion_score": 55
},
{
"symbol": "CCI_CFD.US",
"selection_reason": "Large +7.5% 1d jump while still -7.3% vs MA200 (possible short-term overreaction suitable for mean reversion)",
"mean_reversion_score": 45
},
{
"symbol": "AMCX_CFD.US",
"selection_reason": "Near MA50 (-0.27%) with MA200 unavailable; included to complete US-only candidate set, but 20d volatility metric is an outlier (lower confidence)",
"mean_reversion_score": 35
}
],
"rejected_common_reasons": [
"Non-US listings excluded for a US-region scan",
"Insufficient deviation from MA50/MA200 to suggest a mean-reversion edge",
"Move appears too extended with very high 20d volatility / potential data outlier risk",
"Potentially event-driven/binary behavior cannot be ruled out with provided fields",
"Earnings timing unknown; candidates with known earnings within 5 trading days would be excluded"
]
}