Arena run #207
meanrev-v1 • amazon • amazon/nova-premier-v1 • US • success
Run status
as_of: 2026-02-20T17:33:34.647633+00:00
started_at: 2026-02-20T17:36:54.671475+00:00
finished_at: 2026-02-20T17:37:34.965853+00:00
duration_ms: 40292
Inputs
{
"dry_run": false,
"selected": [
{
"symbol": "UKW_CFD.UK",
"selection_reason": "Negative 1D change (-2.16%) and significant distance from MA50 (-6.85%)",
"mean_reversion_score": 78
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "-12.67% 1D change and -14.35% from MA50",
"mean_reversion_score": 82
},
{
"symbol": "ESTC_CFD.US",
"selection_reason": "-11.71% deviation from MA50 and -22.85% from MA200",
"mean_reversion_score": 75
},
{
"symbol": "ETSY_CFD.US",
"selection_reason": "-7.49% from MA50 despite +12.39% 1D gain",
"mean_reversion_score": 71
},
{
"symbol": "CBRE_CFD.US",
"selection_reason": "-8.57% from MA50 with moderate volatility",
"mean_reversion_score": 68
}
],
"universe_symbols": [
"UKW_CFD.UK",
"FUTR_CFD.UK",
"BIG_CFD.FR",
"LIO_CFD.UK",
"ATG_CFD.UK",
"EZJ_CFD.UK",
"BYIT_CFD.UK",
"WKP_CFD.UK",
"PZC_CFD.UK",
"AMH_CFD.US",
"OCDO_CFD.UK",
"COIN_CFD.US",
"FSLR_CFD.US",
"PNN_CFD.UK",
"HMSO_CFD.UK",
"MSLH_CFD.UK",
"PAGE_CFD.UK",
"ESTC_CFD.US",
"RMV_CFD.UK",
"RHK_CFD.DE",
"EXM_CFD.BE",
"IPR_CFD.PT",
"GRI_CFD.UK",
"GMM_CFD.DE",
"THG_CFD.UK",
"ETSY_CFD.US",
"CBRE_CFD.US",
"FLEX_CFD.US",
"DOM_CFD.UK",
"CC_CFD.US",
"LYV_CFD.US",
"FIVE_CFD.US",
"AMD_CFD.US",
"AYI_CFD.US",
"CW_CFD.US",
"MCG_CFD.UK",
"CRWD_CFD.US",
"MKS_CFD.UK",
"AEO_CFD.US",
"KSS_CFD.US",
"CGNX_CFD.US",
"CE_CFD.US",
"TFF_CFD.FR",
"RS1_CFD.UK",
"FND_CFD.US",
"MNDI_CFD.UK",
"IGG_CFD.UK",
"AAF_CFD.UK",
"EME_CFD.US",
"CRST_CFD.UK"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "High mean-reversion score (75) and significant deviation from MAs",
"symbol": "ESTC_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "No significant price movement",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "No position and low score",
"symbol": "DSY_CFD.FR"
},
{
"reason": "No position and low score",
"symbol": "ERA_CFD.FR"
},
{
"reason": "No price movement since entry",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "No price change",
"symbol": "RMV_CFD.UK"
},
{
"reason": "Positive unrealized PnL",
"symbol": "SGE_CFD.UK"
},
{
"reason": "No price movement",
"symbol": "UKW_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "UMG_CFD.NL"
},
{
"reason": "No position and low score",
"symbol": "WPP_CFD.FR"
}
],
"sell": [
{
"reason": "Marginal unrealized loss with no recovery signs",
"symbol": "IPO_CFD.UK"
}
]
},
"portfolio_rationale": "Maintained core holdings while trimming marginal loss position. Added ESTC_CFD.US for mean-reversion opportunity within 2-buy limit. Preserved existing profits and avoided overtrading per Arena v1 rules."
}Prompts & responses
#401 • openrouter • amazon/nova-premier-v1 • 2026-02-20T17:36:54.769763+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": "UKW_CFD.UK", "name": "GREENCOAT UK WIND PLC", "sector": "", "last_price": 98.15, "change_1d_pct": -2.163078149920239, "distance_from_ma200_pct": -12.46829595436757, "distance_from_ma50_pct": -6.845149398930528, "volatility_20d_pct": 32.62462101640031, "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": 422.0, "change_1d_pct": -13.70143149284253, "distance_from_ma200_pct": -38.122509366851766, "distance_from_ma50_pct": -25.139370269544393, "volatility_20d_pct": 146.49494054552733, "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": "BIG_CFD.FR", "name": "Bigben Interactive", "sector": "", "last_price": 0.473, "change_1d_pct": -40.65244667503137, "distance_from_ma200_pct": -57.481044006670004, "distance_from_ma50_pct": -45.84258856396987, "volatility_20d_pct": 245.7660340614924, "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": 259.0, "change_1d_pct": 0.19342359767891004, "distance_from_ma200_pct": -20.670350849922237, "distance_from_ma50_pct": -0.35817197640911624, "volatility_20d_pct": 128.03912578370827, "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": 305.0, "change_1d_pct": 4.2735042735042805, "distance_from_ma200_pct": -30.344980756373573, "distance_from_ma50_pct": -1.1704016694101371, "volatility_20d_pct": 159.9931345477538, "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": "EZJ_CFD.UK", "name": "EASYJET PLC", "sector": "", "last_price": 487.6, "change_1d_pct": -1.6142050040355072, "distance_from_ma200_pct": -2.529174031700998, "distance_from_ma50_pct": -0.5931384801188377, "volatility_20d_pct": 77.17417093400987, "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": "WKP_CFD.UK", "name": "WORKSPACE GROUP PLC", "sector": "", "last_price": 423.0, "change_1d_pct": 3.6764705882353033, "distance_from_ma200_pct": 1.8640028868691871, "distance_from_ma50_pct": 5.808194506978848, "volatility_20d_pct": 70.2233148398582, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "PZC_CFD.UK", "name": "PZ CUSSONS PLC", "sector": "", "last_price": 88.8, "change_1d_pct": -1.442841287458374, "distance_from_ma200_pct": 17.468164209381708, "distance_from_ma50_pct": 17.734408145948244, "volatility_20d_pct": 83.4578314576364, "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": "AMH_CFD.US", "name": "American Homes 4 Rent", "sector": "", "last_price": 30.66, "change_1d_pct": -3.005378044922491, "distance_from_ma200_pct": -9.378685370243932, "distance_from_ma50_pct": -2.371611982881605, "volatility_20d_pct": 45.16643539940158, "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": 221.9, "change_1d_pct": -21.312056737588648, "distance_from_ma200_pct": -14.06664037160078, "distance_from_ma50_pct": -3.1767959417158487, "volatility_20d_pct": 240.9598068877464, "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": "COIN_CFD.US", "name": "Coinbase Global Inc", "sector": "", "last_price": 171.33, "change_1d_pct": 4.189978107516423, "distance_from_ma200_pct": -40.710631511539766, "distance_from_ma50_pct": -21.46316061615642, "volatility_20d_pct": 143.33354663970158, "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": "FSLR_CFD.US", "name": "", "sector": "", "last_price": 243.46, "change_1d_pct": 7.902317954172777, "distance_from_ma200_pct": 14.390693128852817, "distance_from_ma50_pct": -1.313176024606444, "volatility_20d_pct": 122.09693651594414, "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": 555.5, "change_1d_pct": 7.728110152235046, "distance_from_ma200_pct": 15.15330418465657, "distance_from_ma50_pct": 10.049118953291236, "volatility_20d_pct": 59.72600720990832, "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": "", "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": "MSLH_CFD.UK", "name": "", "sector": "", "last_price": 182.32, "change_1d_pct": 0.8407079646017612, "distance_from_ma200_pct": -17.111863069088763, "distance_from_ma50_pct": 6.139091576985178, "volatility_20d_pct": 102.4204512350097, "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": 209.6, "change_1d_pct": -10.960067969413767, "distance_from_ma200_pct": -19.313052268665963, "distance_from_ma50_pct": -8.41066281665177, "volatility_20d_pct": 112.6882126676479, "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": "ESTC_CFD.US", "name": "Elastic NV", "sector": "", "last_price": 62.58, "change_1d_pct": 1.6404092902387424, "distance_from_ma200_pct": -22.854221228896023, "distance_from_ma50_pct": -11.705696943702149, "volatility_20d_pct": 108.59624685520227, "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": "RMV_CFD.UK", "name": "RIGHTMOVE PLC", "sector": "", "last_price": 431.4, "change_1d_pct": -14.810426540284361, "distance_from_ma200_pct": -37.284210035093366, "distance_from_ma50_pct": -17.526388114623416, "volatility_20d_pct": 137.79982108268825, "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": "RHK_CFD.DE", "name": "", "sector": "", "last_price": 13.1, "change_1d_pct": 0.7769828448342064, "distance_from_ma200_pct": 3.706805818505954, "distance_from_ma50_pct": 1.545034835373027, "volatility_20d_pct": 112.66428846887368, "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": "EXM_CFD.BE", "name": "EXMAR NV", "sector": "", "last_price": 10.16, "change_1d_pct": 3.1472081218274273, "distance_from_ma200_pct": -8.5278841401216, "distance_from_ma50_pct": 0.656845358986291, "volatility_20d_pct": 89.98945159197974, "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.198, "change_1d_pct": 3.125, "distance_from_ma200_pct": 30.576713819368862, "distance_from_ma50_pct": -1.1680143755615324, "volatility_20d_pct": 421.9087433253912, "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": "", "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": "GMM_CFD.DE", "name": "", "sector": "", "last_price": 7.5600000000000005, "change_1d_pct": 0.8000000000000007, "distance_from_ma200_pct": 13.48412010402711, "distance_from_ma50_pct": 16.356741149346043, "volatility_20d_pct": 188.43585385392208, "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": 35.48, "change_1d_pct": -20.090090090090097, "distance_from_ma200_pct": 4.031971945380275, "distance_from_ma50_pct": -18.256005234564732, "volatility_20d_pct": 150.3458448856807, "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": "ETSY_CFD.US", "name": "Etsy, Inc.", "sector": "", "last_price": 51.43, "change_1d_pct": 12.39073426573427, "distance_from_ma200_pct": -11.637084934406461, "distance_from_ma50_pct": -7.491015314437011, "volatility_20d_pct": 121.10078386667593, "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": "CBRE_CFD.US", "name": "CBRE Group Inc Class A", "sector": "", "last_price": 148.56, "change_1d_pct": 4.553452037441064, "distance_from_ma200_pct": -2.4026514734696636, "distance_from_ma50_pct": -8.574410681580979, "volatility_20d_pct": 100.1448297136033, "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": "FLEX_CFD.US", "name": "", "sector": "", "last_price": 67.01, "change_1d_pct": 4.360691481077739, "distance_from_ma200_pct": 19.979087363969384, "distance_from_ma50_pct": 4.225641280881964, "volatility_20d_pct": 110.75865941087355, "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": 202.0, "change_1d_pct": 8.58463688652369, "distance_from_ma200_pct": -7.069225606016771, "distance_from_ma50_pct": 12.253653245130858, "volatility_20d_pct": 71.7523831897994, "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": "CC_CFD.US", "name": "Chemours Co", "sector": "", "last_price": 16.56, "change_1d_pct": -19.14062500000001, "distance_from_ma200_pct": 21.448582366487233, "distance_from_ma50_pct": 9.958699087661515, "volatility_20d_pct": 152.9193005750538, "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": "LYV_CFD.US", "name": "", "sector": "", "last_price": 167.6, "change_1d_pct": 5.975339867214657, "distance_from_ma200_pct": 12.608261992931059, "distance_from_ma50_pct": 15.120643136996303, "volatility_20d_pct": 70.86027677201129, "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": "FIVE_CFD.US", "name": "", "sector": "", "last_price": 215.26, "change_1d_pct": 4.474859250630936, "distance_from_ma200_pct": 40.74427870845581, "distance_from_ma50_pct": 11.005797301743314, "volatility_20d_pct": 65.36321035808058, "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": "AMD_CFD.US", "name": "Advanced Micro Devices Inc", "sector": "", "last_price": 202.27, "change_1d_pct": -2.379343629343622, "distance_from_ma200_pct": 9.918385856627898, "distance_from_ma50_pct": -7.978781482020669, "volatility_20d_pct": 134.54360367478918, "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": "AYI_CFD.US", "name": "Acuity Brands Inc", "sector": "", "last_price": 312.89, "change_1d_pct": 2.2583175370939124, "distance_from_ma200_pct": -3.4408736210798874, "distance_from_ma50_pct": -7.159426809084135, "volatility_20d_pct": 52.54050072312177, "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": "CW_CFD.US", "name": "Curtiss-Wright Corporation", "sector": "", "last_price": 707.75, "change_1d_pct": 3.5388261454736947, "distance_from_ma200_pct": 33.6648435493375, "distance_from_ma50_pct": 14.77225552009549, "volatility_20d_pct": 92.4041036430213, "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": "", "sector": "", "last_price": 23.34, "change_1d_pct": -10.437452033768224, "distance_from_ma200_pct": -15.963814753139205, "distance_from_ma50_pct": -0.07192766132346762, "volatility_20d_pct": 137.63902050046556, "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": "CRWD_CFD.US", "name": "Crowdstrike Holdings Inc", "sector": "", "last_price": 427.32, "change_1d_pct": -0.5654450261780131, "distance_from_ma200_pct": -9.375169661762307, "distance_from_ma50_pct": -6.25386660020868, "volatility_20d_pct": 99.65784899807545, "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": 402.7, "change_1d_pct": 11.181667586968524, "distance_from_ma200_pct": 11.557658785096358, "distance_from_ma50_pct": 15.11180451974623, "volatility_20d_pct": 99.86569172703864, "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": "AEO_CFD.US", "name": "AMERICAN EAGLE OUTFITTERS", "sector": "", "last_price": 24.67, "change_1d_pct": -2.912239275875639, "distance_from_ma200_pct": 45.30141060753306, "distance_from_ma50_pct": -3.043498765936714, "volatility_20d_pct": 78.78284949587598, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "KSS_CFD.US", "name": "", "sector": "", "last_price": 18.66, "change_1d_pct": -5.375253549695735, "distance_from_ma200_pct": 24.171937541382317, "distance_from_ma50_pct": -6.560775555577802, "volatility_20d_pct": 101.88329470634108, "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": "CGNX_CFD.US", "name": "Cognex Corporation", "sector": "", "last_price": 55.86, "change_1d_pct": -4.967676080299421, "distance_from_ma200_pct": 43.27099531791618, "distance_from_ma50_pct": 36.59905999501143, "volatility_20d_pct": 229.84501783533221, "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": "CE_CFD.US", "name": "Celanese Corporation", "sector": "", "last_price": 54.06, "change_1d_pct": -8.029942157196324, "distance_from_ma200_pct": 13.42071721924125, "distance_from_ma50_pct": 14.820950681789213, "volatility_20d_pct": 120.28648029834686, "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": "TFF_CFD.FR", "name": "", "sector": "", "last_price": 18.2, "change_1d_pct": 7.058823529411762, "distance_from_ma200_pct": -4.619432847233096, "distance_from_ma50_pct": 2.10401594169074, "volatility_20d_pct": 84.68971432641365, "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": "", "sector": "", "last_price": 733.5, "change_1d_pct": 25.384615384615383, "distance_from_ma200_pct": 27.719246802948703, "distance_from_ma50_pct": 25.132468113824658, "volatility_20d_pct": 102.39099316712235, "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": "FND_CFD.US", "name": "", "sector": "", "last_price": 68.94, "change_1d_pct": -1.7808804673030365, "distance_from_ma200_pct": -5.786015085990426, "distance_from_ma50_pct": 2.246637755616576, "volatility_20d_pct": 101.52514971280668, "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": "", "sector": "", "last_price": 939.6, "change_1d_pct": 9.817671809256655, "distance_from_ma200_pct": -6.625801707825607, "distance_from_ma50_pct": 4.970291932704618, "volatility_20d_pct": 90.09877279472504, "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": "IGG_CFD.UK", "name": "", "sector": "", "last_price": 1372.0, "change_1d_pct": 11.81744091279544, "distance_from_ma200_pct": 25.343736010743754, "distance_from_ma50_pct": 15.973880518163174, "volatility_20d_pct": 82.27265742988861, "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": "AAF_CFD.UK", "name": "AIRTEL AFRICA PLC", "sector": "", "last_price": 353.8, "change_1d_pct": 7.277137659187383, "distance_from_ma200_pct": 40.183323969288054, "distance_from_ma50_pct": 3.356002710977135, "volatility_20d_pct": 77.24935932192999, "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": "EME_CFD.US", "name": "EMCOR Group Inc", "sector": "", "last_price": 807.55, "change_1d_pct": 0.9323951055506097, "distance_from_ma200_pct": 31.519534734682875, "distance_from_ma50_pct": 17.492408932653003, "volatility_20d_pct": 74.77000338331518, "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": 169.5, "change_1d_pct": 25.18463810930576, "distance_from_ma200_pct": 2.1353827094136912, "distance_from_ma50_pct": 18.261534511436817, "volatility_20d_pct": 158.5020616154255, "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": "UKW_CFD.UK",
"selection_reason": "Negative 1D change (-2.16%) and significant distance from MA50 (-6.85%)",
"mean_reversion_score": 78
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "-12.67% 1D change and -14.35% from MA50",
"mean_reversion_score": 82
},
{
"symbol": "ESTC_CFD.US",
"selection_reason": "-11.71% deviation from MA50 and -22.85% from MA200",
"mean_reversion_score": 75
},
{
"symbol": "ETSY_CFD.US",
"selection_reason": "-7.49% from MA50 despite +12.39% 1D gain",
"mean_reversion_score": 71
},
{
"symbol": "CBRE_CFD.US",
"selection_reason": "-8.57% from MA50 with moderate volatility",
"mean_reversion_score": 68
}
],
"rejected_common_reasons": [
"Too close to moving averages",
"Excessive 1-day volatility",
"Already over-extended from mean values"
]
}#402 • openrouter • amazon/nova-premier-v1 • 2026-02-20T17:37:19.684028+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": "BYIT_CFD.UK", "qty": 10.252904989747094, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+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": "FUTR_CFD.UK", "qty": 14.977533699450824, "avg_price": 400.6, "last_price": 400.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "IPO_CFD.UK", "qty": 51.99306759098786, "avg_price": 57.7, "last_price": 57.6, "unrealized_pnl": -5.19930675909886, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 7.070469007777516, "avg_price": 424.3, "last_price": 424.3, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "SGE_CFD.UK", "qty": 3.771687201408097, "avg_price": 795.4, "last_price": 813.4, "unrealized_pnl": 67.89036962534574, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 32.48511099079589, "avg_price": 92.35, "last_price": 92.35, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "UMG_CFD.NL", "qty": 157.19151165837044, "avg_price": 19.085, "last_price": 19.59, "unrealized_pnl": 79.38171338747692, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 272.0, "last_price": 262.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}], "candidates": [{"symbol": "UKW_CFD.UK", "mean_reversion_score": 78, "selection_reason": "Negative 1D change (-2.16%) and significant distance from MA50 (-6.85%)"}, {"symbol": "BYIT_CFD.UK", "mean_reversion_score": 82, "selection_reason": "-12.67% 1D change and -14.35% from MA50"}, {"symbol": "ESTC_CFD.US", "mean_reversion_score": 75, "selection_reason": "-11.71% deviation from MA50 and -22.85% from MA200"}, {"symbol": "ETSY_CFD.US", "mean_reversion_score": 71, "selection_reason": "-7.49% from MA50 despite +12.39% 1D gain"}, {"symbol": "CBRE_CFD.US", "mean_reversion_score": 68, "selection_reason": "-8.57% from MA50 with moderate volatility"}], "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": "High mean-reversion score (75) and significant deviation from MAs",
"symbol": "ESTC_CFD.US",
"position_size": 3000
}
],
"hold": [
{
"reason": "No significant price movement",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "No position and low score",
"symbol": "DSY_CFD.FR"
},
{
"reason": "No position and low score",
"symbol": "ERA_CFD.FR"
},
{
"reason": "No price movement since entry",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "No price change",
"symbol": "RMV_CFD.UK"
},
{
"reason": "Positive unrealized PnL",
"symbol": "SGE_CFD.UK"
},
{
"reason": "No price movement",
"symbol": "UKW_CFD.UK"
},
{
"reason": "Profitable position with positive trend",
"symbol": "UMG_CFD.NL"
},
{
"reason": "No position and low score",
"symbol": "WPP_CFD.FR"
}
],
"sell": [
{
"reason": "Marginal unrealized loss with no recovery signs",
"symbol": "IPO_CFD.UK"
}
]
},
"portfolio_rationale": "Maintained core holdings while trimming marginal loss position. Added ESTC_CFD.US for mean-reversion opportunity within 2-buy limit. Preserved existing profits and avoided overtrading per Arena v1 rules."
}Selection logs
#199 • stage1 • 2026-02-20T17:37:19.681770+00:00
{
"selected_stocks": [
{
"symbol": "UKW_CFD.UK",
"selection_reason": "Negative 1D change (-2.16%) and significant distance from MA50 (-6.85%)",
"mean_reversion_score": 78
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "-12.67% 1D change and -14.35% from MA50",
"mean_reversion_score": 82
},
{
"symbol": "ESTC_CFD.US",
"selection_reason": "-11.71% deviation from MA50 and -22.85% from MA200",
"mean_reversion_score": 75
},
{
"symbol": "ETSY_CFD.US",
"selection_reason": "-7.49% from MA50 despite +12.39% 1D gain",
"mean_reversion_score": 71
},
{
"symbol": "CBRE_CFD.US",
"selection_reason": "-8.57% from MA50 with moderate volatility",
"mean_reversion_score": 68
}
],
"rejected_common_reasons": [
"Too close to moving averages",
"Excessive 1-day volatility",
"Already over-extended from mean values"
]
}