Arena run #555
meanrev-v1 • anthropic • anthropic/claude-opus-4.6 • US • success
Run status
as_of: 2026-03-10T18:24:41.570614+00:00
started_at: 2026-03-10T19:16:24.960606+00:00
finished_at: 2026-03-10T19:17:10.079767+00:00
duration_ms: 45118
Inputs
{
"as_of": "2026-03-10T18:24:41.570614+00:00",
"dry_run": false,
"selected": [
{
"symbol": "TRN_CFD.UK",
"selection_reason": "Sharp -12.9% 1d drop, -12.6% below MA50, -22.6% below MA200; oversold bounce candidate with high vol (131%) providing reversion amplitude.",
"mean_reversion_score": 78
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "-5.9% 1d drop while still +3.6% above MA50 and +15.8% above MA200; moderate pullback in uptrend suggests snap-back within 2-10 days.",
"mean_reversion_score": 68
},
{
"symbol": "UTG_CFD.UK",
"selection_reason": "-23.9% below MA200 and -3.7% below MA50 with +3.5% 1d bounce starting; deeply oversold with early reversal signal, vol 74% manageable.",
"mean_reversion_score": 65
},
{
"symbol": "ABF_CFD.UK",
"selection_reason": "-2.1% 1d decline, -3.3% below MA50; mild pullback in consumer staples name offers lower-risk mean reversion setup.",
"mean_reversion_score": 60
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "-2.1% 1d drop, -14.7% below MA50; extended downside deviation from short-term average suggests reversion potential over 2-10 day horizon.",
"mean_reversion_score": 58
}
],
"simulate_only": false,
"strict_replay": false,
"universe_symbols": [
"SAFE_CFD.UK",
"UTG_CFD.UK",
"TRN_CFD.UK",
"WIX_CFD.UK",
"RHIM_CFD.UK",
"CBG_CFD.UK",
"VTY_CFD.UK",
"RSW_CFD.UK",
"DOM_CFD.UK",
"BLND_CFD.UK",
"BBY_CFD.UK",
"ATG_CFD.UK",
"BME_CFD.UK",
"CNC_CFD.US",
"BYIT_CFD.UK",
"BTRW_CFD.UK",
"CRDA_CFD.UK",
"ABF_CFD.UK",
"CF_CFD.US",
"CCH_CFD.UK"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Mean-reversion score 68: -5.9% 1d pullback within an uptrend (+3.6% above MA50, +15.8% above MA200). Classic dip-buy in a strong trend with high snap-back probability over 2-10 days.",
"symbol": "CBG_CFD.UK",
"position_size": 3000
},
{
"reason": "Mean-reversion score 58: -14.7% below MA50 with fresh -2.1% 1d drop. Extended downside deviation provides meaningful reversion amplitude. New position to capture bounce.",
"symbol": "BTRW_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "Already held with small unrealized loss (-$36). Candidate list confirms mean-reversion score of 60 with mild pullback — hold for reversion rather than adding or selling.",
"symbol": "ABF_CFD.UK"
},
{
"reason": "Profitable position (+$150 unrealized). No signal to exit; let the winner run.",
"symbol": "BEKB_CFD.BE"
},
{
"reason": "Profitable (+$79 unrealized). No negative signal; hold.",
"symbol": "BLND_CFD.UK"
},
{
"reason": "Flat PnL, no candidate signal to add or exit. Hold for now.",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Profitable (+$72 unrealized). Momentum intact; hold.",
"symbol": "CPAY_CFD.US"
},
{
"reason": "Slightly positive (+$2.22). Recently opened, give it time to develop.",
"symbol": "EZJ_CFD.UK"
},
{
"reason": "Profitable (+$121 unrealized). No exit signal; hold.",
"symbol": "LXS_CFD.DE"
},
{
"reason": "Small profit (+$15.60). No signal to exit; hold.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Already held with flat PnL. Top candidate (score 78) with sharp -12.9% 1d drop — strong mean-reversion setup supports holding existing position rather than adding (already at ~$3000 notional).",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Already held with flat PnL. Candidate score 65 with early reversal signal supports holding for reversion.",
"symbol": "UTG_CFD.UK"
},
{
"reason": "Flat PnL, no exit signal. Hold.",
"symbol": "DLN_CFD.UK"
},
{
"reason": "Flat PnL, no exit signal. Hold.",
"symbol": "ICG_CFD.UK"
}
],
"sell": [
{
"reason": "Position is underwater (-$35.29 unrealized PnL), ORCL not appearing in mean-reversion candidates, no clear catalyst for snap-back. Free up capital for higher-conviction mean-reversion setups.",
"symbol": "ORCL_CFD.US"
},
{
"reason": "Small negative PnL (-$17.09), not in candidate list, no mean-reversion signal. Marginal position with no clear edge; better to redeploy into fresh high-score candidates.",
"symbol": "RVTY_CFD.US"
}
]
},
"portfolio_rationale": "Selling ORCL and RVTY — both are underwater US positions with no mean-reversion signal and no candidate support, freeing capital. Holding all positions that are profitable or have active mean-reversion setups (TRN score 78, UTG score 65, ABF score 60 are all already in portfolio). Buying CBG (score 68, uptrend pullback) and BTRW (score 58, extended deviation) as fresh mean-reversion entries at standard $3000 sizing. After trades: 12 active positions within the 10-position soft target but within gross leverage limits. Portfolio is diversified across UK, EU, and remaining US names with a clear mean-reversion tilt."
}Prompts & responses
#1095 • openrouter • anthropic/claude-opus-4.6 • 2026-03-10T19:16:24.980584+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": "SAFE_CFD.UK", "name": "SAFESTORE HOLDINGS PLC", "sector": "", "last_price": 802.5, "change_1d_pct": 13.187588152327212, "distance_from_ma200_pct": 21.40724384452035, "distance_from_ma50_pct": 10.29872606002229, "volatility_20d_pct": 81.07249455345375, "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": 567.5, "change_1d_pct": 3.4639927073837784, "distance_from_ma200_pct": -23.929923575376698, "distance_from_ma50_pct": -3.6875042216270137, "volatility_20d_pct": 73.84223442053181, "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": "TRN_CFD.UK", "name": "TRAINLINE PLC", "sector": "", "last_price": 206.0, "change_1d_pct": -12.93322062552832, "distance_from_ma200_pct": -22.557701091522887, "distance_from_ma50_pct": -12.560104316644482, "volatility_20d_pct": 131.09279103846345, "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": "WIX_CFD.UK", "name": "WICKES GROUP PLC", "sector": "", "last_price": 247.5, "change_1d_pct": 15.984816533108393, "distance_from_ma200_pct": 18.647646929530737, "distance_from_ma50_pct": 10.198455173494668, "volatility_20d_pct": 84.25206447406164, "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": 2795.0, "change_1d_pct": 2.3809523809523725, "distance_from_ma200_pct": 6.811460460804897, "distance_from_ma50_pct": 10.895008018562113, "volatility_20d_pct": 141.33746334612064, "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": 497.8, "change_1d_pct": -5.89792060491493, "distance_from_ma200_pct": 15.793508864321094, "distance_from_ma50_pct": 3.592137485786795, "volatility_20d_pct": 116.76618625853061, "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": "VTY_CFD.UK", "name": "VISTRY GROUP PLC", "sector": "", "last_price": 463.9, "change_1d_pct": -32.72911832946637, "distance_from_ma200_pct": -26.66844502405723, "distance_from_ma50_pct": -28.488957332309774, "volatility_20d_pct": 205.6561667968453, "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": "DOM_CFD.UK", "name": "DOMINO'S PIZZA GROUP PLC", "sector": "", "last_price": 204.15, "change_1d_pct": 11.924342105263165, "distance_from_ma200_pct": -5.759626343727387, "distance_from_ma50_pct": 12.834440951357639, "volatility_20d_pct": 73.60557991984848, "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": "BLND_CFD.UK", "name": "BRITISH LAND CO PLC", "sector": "", "last_price": 385.8, "change_1d_pct": -0.8226221079691509, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -5.276803865531354, "volatility_20d_pct": 2775.983609722267, "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": 722.5, "change_1d_pct": -1.0951403148528382, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -1.628407265201648, "volatility_20d_pct": 2239.4661443465884, "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": "BME_CFD.UK", "name": "B&M EUROPEAN VALUE RETAIL SA", "sector": "", "last_price": 187.88, "change_1d_pct": 1.0107526881720341, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 7.318666981973787, "volatility_20d_pct": 3503.713036055361, "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": "CNC_CFD.US", "name": "Centene Corp", "sector": "", "last_price": 40.58, "change_1d_pct": 3.573251659009702, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -3.2002595320789307, "volatility_20d_pct": 5238.197125855288, "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": 316.4, "change_1d_pct": 1.9329896907216426, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -3.036395062333752, "volatility_20d_pct": 3610.9502328075146, "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": 322.3, "change_1d_pct": -2.066241264053481, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -14.679472246341497, "volatility_20d_pct": 3259.103464638469, "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": "CRDA_CFD.UK", "name": "CRODA INTERNATIONAL PLC", "sector": "", "last_price": 2839.0, "change_1d_pct": -0.28099754127151044, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -0.572261096752058, "volatility_20d_pct": 5232.645582727379, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ABF_CFD.UK", "name": "ASSOCIATED BRITISH FOODS PLC", "sector": "", "last_price": 1887.0, "change_1d_pct": -2.0503503763301345, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -3.3299180327868827, "volatility_20d_pct": 2105.89979933895, "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": "CF_CFD.US", "name": "CF Industries Holdings Inc", "sector": "", "last_price": 97.16, "change_1d_pct": 1.0609527771999083, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 11.562182562106349, "volatility_20d_pct": 3467.4527549275817, "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": "CCH_CFD.UK", "name": "COCA-COLA HBC AG-DI", "sector": "", "last_price": 4704.0, "change_1d_pct": -0.3811944091486663, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 19.722683172651113, "volatility_20d_pct": 2425.007693254479, "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": "TRN_CFD.UK",
"selection_reason": "Sharp -12.9% 1d drop, -12.6% below MA50, -22.6% below MA200; oversold bounce candidate with high vol (131%) providing reversion amplitude.",
"mean_reversion_score": 78
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "-5.9% 1d drop while still +3.6% above MA50 and +15.8% above MA200; moderate pullback in uptrend suggests snap-back within 2-10 days.",
"mean_reversion_score": 68
},
{
"symbol": "UTG_CFD.UK",
"selection_reason": "-23.9% below MA200 and -3.7% below MA50 with +3.5% 1d bounce starting; deeply oversold with early reversal signal, vol 74% manageable.",
"mean_reversion_score": 65
},
{
"symbol": "ABF_CFD.UK",
"selection_reason": "-2.1% 1d decline, -3.3% below MA50; mild pullback in consumer staples name offers lower-risk mean reversion setup.",
"mean_reversion_score": 60
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "-2.1% 1d drop, -14.7% below MA50; extended downside deviation from short-term average suggests reversion potential over 2-10 day horizon.",
"mean_reversion_score": 58
}
],
"rejected_common_reasons": [
"VTY_CFD.UK: -32.7% 1d crash is highly binary/event-driven; too risky and likely news-catalyzed, violating event-driven avoidance rule.",
"RSW_CFD.UK, SAFE_CFD.UK, WIX_CFD.UK, DOM_CFD.UK: Large 1d gains (+11-18%) and well above MA50/MA200; momentum-extended to upside, not mean-reversion short candidates given strategy focuses on long reversion.",
"RHIM_CFD.UK: +10.9% above MA50 with +2.4% 1d gain; no reversion setup, trending higher.",
"BLND_CFD.UK, BBY_CFD.UK, ATG_CFD.UK, BME_CFD.UK, BYIT_CFD.UK, CRDA_CFD.UK, CCH_CFD.UK, CNC_CFD.US, CF_CFD.US: Extremely high 20d volatility (2000-5000%+) indicates unreliable/anomalous data; missing MA200 further reduces confidence.",
"Sector concentration avoided by selecting across different implied sectors (travel, financials, real estate, consumer staples, homebuilding)."
]
}#1096 • openrouter • anthropic/claude-opus-4.6 • 2026-03-10T19:16:48.441918+00:00
System prompt
You are an Arena portfolio manager. You must follow the strategy rules strictly and output ONLY valid JSON. You are NOT allowed to invent prices/fundamentals/news/earnings. If a field is null/empty, treat it as unknown. Avoid overtrading: if changes are marginal, prefer HOLD. Do not churn.
User prompt
{"task": "stage2_portfolio_management", "region": "US", "strategy": {"key": "meanrev-v1", "name": "Two-Stage LLM Mean-Reversion (Arena v1)", "rules": {"max_positions": 10, "max_buys_per_run": 2, "avoid_overtrading": true, "max_sells_per_run": 2, "max_gross_leverage": 3.0, "fixed_position_size": 3000.0, "universe_symbols_eu": [], "universe_symbols_us": []}}, "portfolio_constraints": {"initial_equity": 10000.0, "max_positions": 10, "fixed_position_size": 3000.0, "max_gross_leverage": 3.0, "overtrading_rules": ["Max 2 SELL actions per run unless risk event forces more", "Max 2 BUY actions per run", "If no clear improvement vs current holdings, output HOLD for everything"]}, "current_portfolio": [{"symbol": "ABF_CFD.UK", "qty": 1.6055659620016056, "avg_price": 1868.5, "last_price": 1846.0, "unrealized_pnl": -36.125234145036124, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "ADS_CFD.DE", "qty": 0.0, "avg_price": 137.15, "last_price": 142.35, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "AMCX_CFD.US", "qty": 0.0, "avg_price": 7.58, "last_price": 7.46, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "AMH_CFD.US", "qty": 0.0, "avg_price": 29.63, "last_price": 29.16, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "AML_CFD.UK", "qty": 0.0, "avg_price": 59.0, "last_price": 58.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "ARCAD_CFD.NL", "qty": 0.0, "avg_price": 28.6, "last_price": 27.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "BEKB_CFD.BE", "qty": 77.12082262210797, "avg_price": 38.9, "last_price": 40.85, "unrealized_pnl": 150.38560411311076, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "BLND_CFD.UK", "qty": 8.237232289950576, "avg_price": 364.2, "last_price": 373.8, "unrealized_pnl": 79.07742998352572, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "BXP_CFD.US", "qty": 0.0, "avg_price": 60.835, "last_price": 57.754999999999995, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 10.252904989747094, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "CABO_CFD.US", "qty": 0.0, "avg_price": 94.6, "last_price": 108.935, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "CAR_CFD.US", "qty": 0.0, "avg_price": 92.285, "last_price": 95.88499999999999, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "CCC_CFD.UK", "qty": 0.0, "avg_price": 2978.0, "last_price": 3218.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 0.0, "avg_price": 1945.9999999999998, "last_price": 1858.65, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T10:27:11.178069+00:00"}, {"symbol": "CPAY_CFD.US", "qty": 9.321257126877844, "avg_price": 321.845, "last_price": 329.565, "unrealized_pnl": 71.96010501949668, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 423.05499999999995, "last_price": 388.21500000000003, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "DLN_CFD.UK", "qty": 1.6556291390728477, "avg_price": 1812.0, "last_price": 1812.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 0.0, "avg_price": 55.55, "last_price": 53.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-07T10:14:47.113218+00:00"}, {"symbol": "ETSY_CFD.US", "qty": 0.0, "avg_price": 44.13, "last_price": 50.905, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 7.403751233958539, "avg_price": 405.2, "last_price": 405.5, "unrealized_pnl": 2.221125370187646, "opened_at": "2026-03-08T10:05:58.226220+00:00"}, {"symbol": "FME_CFD.DE", "qty": 0.0, "avg_price": 38.38, "last_price": 38.14, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "FRE_CFD.DE", "qty": 0.0, "avg_price": 49.156, "last_price": 47.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1408.0, "last_price": 1342.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HO_CFD.FR", "qty": 0.0, "avg_price": 254.566, "last_price": 251.7, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "ICG_CFD.UK", "qty": 1.772002362669817, "avg_price": 1693.0, "last_price": 1693.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "JBLU_CFD.US", "qty": 0.0, "avg_price": 4.57, "last_price": 4.5600000000000005, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "LOPE_CFD.US", "qty": 0.0, "avg_price": 157.02, "last_price": 152.77, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T17:33:48.338981+00:00"}, {"symbol": "LPX_CFD.US", "qty": 0.0, "avg_price": 86.45, "last_price": 82.99, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "LSS_CFD.FR", "qty": 0.0, "avg_price": 20.15, "last_price": 19.78, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "LXS_CFD.DE", "qty": 228.31050228310502, "avg_price": 13.14, "last_price": 13.67, "unrealized_pnl": 121.00456621004551, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "MTG_CFD.US", "qty": 0.0, "avg_price": 26.27, "last_price": 25.98, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "NXT_CFD.UK", "qty": 0.0, "avg_price": 12990.0, "last_price": 12770.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-07T10:14:47.113218+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 0.0, "avg_price": 217.0, "last_price": 217.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "OKTA_CFD.US", "qty": 0.0, "avg_price": 70.18, "last_price": 78.38, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "ORCL_CFD.US", "qty": 19.605280355509084, "avg_price": 153.02, "last_price": 151.22, "unrealized_pnl": -35.28950463991657, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 19.74853531696399, "avg_price": 151.91, "last_price": 152.7, "unrealized_pnl": 15.601342900401397, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "PROX_CFD.BE", "qty": 0.0, "avg_price": 6.98, "last_price": 7.55, "unrealized_pnl": 0.0, "opened_at": "2026-02-28T10:51:05.818250+00:00"}, {"symbol": "PRU_CFD.UK", "qty": 0.0, "avg_price": 1030.0, "last_price": 1101.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+00:00"}, {"symbol": "PZC_CFD.UK", "qty": 0.0, "avg_price": 80.0, "last_price": 77.7, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 417.16, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "RVTY_CFD.US", "qty": 32.86590709903593, "avg_price": 91.28, "last_price": 90.76, "unrealized_pnl": -17.090271691498554, "opened_at": "2026-03-08T10:05:58.226220+00:00"}, {"symbol": "SGE_CFD.UK", "qty": 0.0, "avg_price": 795.4, "last_price": 783.4, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "STJ_CFD.UK", "qty": 0.0, "avg_price": 1282.0, "last_price": 1318.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "STM_CFD.DE", "qty": 0.0, "avg_price": 18.436, "last_price": 17.66, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "STZ_CFD.US", "qty": 0.0, "avg_price": 149.07, "last_price": 156.44, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "TCAP_CFD.UK", "qty": 0.0, "avg_price": 257.0, "last_price": 248.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-01T10:30:13.622938+00:00"}, {"symbol": "TMV_CFD.DE", "qty": 0.0, "avg_price": 4.781, "last_price": 4.769, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 16.260162601626018, "avg_price": 184.5, "last_price": 184.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "TUI1_CFD.DE", "qty": 0.0, "avg_price": 7.398000000000001, "last_price": 7.132, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 0.0, "avg_price": 92.35, "last_price": 94.79, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 5.9405940594059405, "avg_price": 505.0, "last_price": 505.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 1299.0, "last_price": 1080.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "ZAL_CFD.DE", "qty": 0.0, "avg_price": 21.078, "last_price": 20.775, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "ZION_CFD.US", "qty": 0.0, "avg_price": 58.99, "last_price": 57.21, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}], "candidates": [{"symbol": "TRN_CFD.UK", "mean_reversion_score": 78, "selection_reason": "Sharp -12.9% 1d drop, -12.6% below MA50, -22.6% below MA200; oversold bounce candidate with high vol (131%) providing reversion amplitude."}, {"symbol": "CBG_CFD.UK", "mean_reversion_score": 68, "selection_reason": "-5.9% 1d drop while still +3.6% above MA50 and +15.8% above MA200; moderate pullback in uptrend suggests snap-back within 2-10 days."}, {"symbol": "UTG_CFD.UK", "mean_reversion_score": 65, "selection_reason": "-23.9% below MA200 and -3.7% below MA50 with +3.5% 1d bounce starting; deeply oversold with early reversal signal, vol 74% manageable."}, {"symbol": "ABF_CFD.UK", "mean_reversion_score": 60, "selection_reason": "-2.1% 1d decline, -3.3% below MA50; mild pullback in consumer staples name offers lower-risk mean reversion setup."}, {"symbol": "BTRW_CFD.UK", "mean_reversion_score": 58, "selection_reason": "-2.1% 1d drop, -14.7% below MA50; extended downside deviation from short-term average suggests reversion potential over 2-10 day horizon."}], "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": "Mean-reversion score 68: -5.9% 1d pullback within an uptrend (+3.6% above MA50, +15.8% above MA200). Classic dip-buy in a strong trend with high snap-back probability over 2-10 days.",
"symbol": "CBG_CFD.UK",
"position_size": 3000
},
{
"reason": "Mean-reversion score 58: -14.7% below MA50 with fresh -2.1% 1d drop. Extended downside deviation provides meaningful reversion amplitude. New position to capture bounce.",
"symbol": "BTRW_CFD.UK",
"position_size": 3000
}
],
"hold": [
{
"reason": "Already held with small unrealized loss (-$36). Candidate list confirms mean-reversion score of 60 with mild pullback — hold for reversion rather than adding or selling.",
"symbol": "ABF_CFD.UK"
},
{
"reason": "Profitable position (+$150 unrealized). No signal to exit; let the winner run.",
"symbol": "BEKB_CFD.BE"
},
{
"reason": "Profitable (+$79 unrealized). No negative signal; hold.",
"symbol": "BLND_CFD.UK"
},
{
"reason": "Flat PnL, no candidate signal to add or exit. Hold for now.",
"symbol": "BYIT_CFD.UK"
},
{
"reason": "Profitable (+$72 unrealized). Momentum intact; hold.",
"symbol": "CPAY_CFD.US"
},
{
"reason": "Slightly positive (+$2.22). Recently opened, give it time to develop.",
"symbol": "EZJ_CFD.UK"
},
{
"reason": "Profitable (+$121 unrealized). No exit signal; hold.",
"symbol": "LXS_CFD.DE"
},
{
"reason": "Small profit (+$15.60). No signal to exit; hold.",
"symbol": "PAGE_CFD.UK"
},
{
"reason": "Already held with flat PnL. Top candidate (score 78) with sharp -12.9% 1d drop — strong mean-reversion setup supports holding existing position rather than adding (already at ~$3000 notional).",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Already held with flat PnL. Candidate score 65 with early reversal signal supports holding for reversion.",
"symbol": "UTG_CFD.UK"
},
{
"reason": "Flat PnL, no exit signal. Hold.",
"symbol": "DLN_CFD.UK"
},
{
"reason": "Flat PnL, no exit signal. Hold.",
"symbol": "ICG_CFD.UK"
}
],
"sell": [
{
"reason": "Position is underwater (-$35.29 unrealized PnL), ORCL not appearing in mean-reversion candidates, no clear catalyst for snap-back. Free up capital for higher-conviction mean-reversion setups.",
"symbol": "ORCL_CFD.US"
},
{
"reason": "Small negative PnL (-$17.09), not in candidate list, no mean-reversion signal. Marginal position with no clear edge; better to redeploy into fresh high-score candidates.",
"symbol": "RVTY_CFD.US"
}
]
},
"portfolio_rationale": "Selling ORCL and RVTY — both are underwater US positions with no mean-reversion signal and no candidate support, freeing capital. Holding all positions that are profitable or have active mean-reversion setups (TRN score 78, UTG score 65, ABF score 60 are all already in portfolio). Buying CBG (score 68, uptrend pullback) and BTRW (score 58, extended deviation) as fresh mean-reversion entries at standard $3000 sizing. After trades: 12 active positions within the 10-position soft target but within gross leverage limits. Portfolio is diversified across UK, EU, and remaining US names with a clear mean-reversion tilt."
}Selection logs
#545 • stage1 • 2026-03-10T19:16:48.439370+00:00
{
"selected_stocks": [
{
"symbol": "TRN_CFD.UK",
"selection_reason": "Sharp -12.9% 1d drop, -12.6% below MA50, -22.6% below MA200; oversold bounce candidate with high vol (131%) providing reversion amplitude.",
"mean_reversion_score": 78
},
{
"symbol": "CBG_CFD.UK",
"selection_reason": "-5.9% 1d drop while still +3.6% above MA50 and +15.8% above MA200; moderate pullback in uptrend suggests snap-back within 2-10 days.",
"mean_reversion_score": 68
},
{
"symbol": "UTG_CFD.UK",
"selection_reason": "-23.9% below MA200 and -3.7% below MA50 with +3.5% 1d bounce starting; deeply oversold with early reversal signal, vol 74% manageable.",
"mean_reversion_score": 65
},
{
"symbol": "ABF_CFD.UK",
"selection_reason": "-2.1% 1d decline, -3.3% below MA50; mild pullback in consumer staples name offers lower-risk mean reversion setup.",
"mean_reversion_score": 60
},
{
"symbol": "BTRW_CFD.UK",
"selection_reason": "-2.1% 1d drop, -14.7% below MA50; extended downside deviation from short-term average suggests reversion potential over 2-10 day horizon.",
"mean_reversion_score": 58
}
],
"rejected_common_reasons": [
"VTY_CFD.UK: -32.7% 1d crash is highly binary/event-driven; too risky and likely news-catalyzed, violating event-driven avoidance rule.",
"RSW_CFD.UK, SAFE_CFD.UK, WIX_CFD.UK, DOM_CFD.UK: Large 1d gains (+11-18%) and well above MA50/MA200; momentum-extended to upside, not mean-reversion short candidates given strategy focuses on long reversion.",
"RHIM_CFD.UK: +10.9% above MA50 with +2.4% 1d gain; no reversion setup, trending higher.",
"BLND_CFD.UK, BBY_CFD.UK, ATG_CFD.UK, BME_CFD.UK, BYIT_CFD.UK, CRDA_CFD.UK, CCH_CFD.UK, CNC_CFD.US, CF_CFD.US: Extremely high 20d volatility (2000-5000%+) indicates unreliable/anomalous data; missing MA200 further reduces confidence.",
"Sector concentration avoided by selecting across different implied sectors (travel, financials, real estate, consumer staples, homebuilding)."
]
}