Arena run #671

meanrev-v1amazonamazon/nova-premier-v1USsuccess
Arena
Run status
as_of: 2026-03-16T18:18:58.833148+00:00
started_at: 2026-03-16T18:30:44.229631+00:00
finished_at: 2026-03-16T18:31:22.340824+00:00
duration_ms: 38108
Inputs
{
  "as_of": "2026-03-16T18:18:58.833148+00:00",
  "dry_run": false,
  "selected": [
    {
      "symbol": "IWG_CFD.UK",
      "selection_reason": "Strong negative distance from MA50/MA200 with high volatility",
      "mean_reversion_score": 85
    },
    {
      "symbol": "XRX_CFD.US",
      "selection_reason": "Extreme negative distance from MA200 with significant volatility",
      "mean_reversion_score": 92
    },
    {
      "symbol": "HELE_CFD.US",
      "selection_reason": "Negative distance from both MAs with moderate volatility",
      "mean_reversion_score": 78
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Strong negative distance from both MAs with high volatility",
      "mean_reversion_score": 88
    },
    {
      "symbol": "GEN_CFD.US",
      "selection_reason": "Negative distance from both MAs with controlled volatility",
      "mean_reversion_score": 76
    }
  ],
  "simulate_only": false,
  "strict_replay": false,
  "universe_symbols": [
    "WTB_CFD.UK",
    "JDW_CFD.UK",
    "UTG_CFD.UK",
    "IWG_CFD.UK",
    "WIX_CFD.UK",
    "KGF_CFD.UK",
    "DLN_CFD.UK",
    "EMG_CFD.UK",
    "ABDN_CFD.UK",
    "ADJ_CFD.DE",
    "VTY_CFD.UK",
    "BBY_CFD.UK",
    "XRX_CFD.US",
    "VSVS_CFD.UK",
    "ITV_CFD.UK",
    "IMI_CFD.UK",
    "DOM_CFD.UK",
    "IPO_CFD.UK",
    "ATG_CFD.UK",
    "BME_CFD.UK",
    "GROW_CFD.UK",
    "WKP_CFD.UK",
    "FUTR_CFD.UK",
    "DPLM_CFD.UK",
    "IGG_CFD.UK",
    "HELE_CFD.US",
    "WIZZ_CFD.UK",
    "HMSO_CFD.UK",
    "BT_CFD.UK",
    "CO_CFD.FR",
    "WLN_CFD.FR",
    "ICG_CFD.UK",
    "GRI_CFD.UK",
    "IHG_CFD.UK",
    "WAF_CFD.DE",
    "AMCX_CFD.US",
    "GMM_CFD.DE",
    "ASY_CFD.FR",
    "HBR_CFD.UK",
    "GEN_CFD.US",
    "BIG_CFD.FR",
    "GM_CFD.US",
    "VBK_CFD.DE",
    "GAW_CFD.UK",
    "XFAB_CFD.FR",
    "HAS_CFD.US",
    "IAC_CFD.US",
    "DGE_CFD.UK",
    "CRST_CFD.UK"
  ]
}
Outputs
{
  "actions": {
    "buy": [
      {
        "reason": "Highest mean-reversion score with extreme negative distance",
        "symbol": "XRX_CFD.US",
        "position_size": 3000
      },
      {
        "reason": "Strong mean-reversion candidate with moderate volatility",
        "symbol": "HELE_CFD.US",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Positive PnL but not enough conviction to add",
        "symbol": "ADBE_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Flat position with limited volatility",
        "symbol": "DLN_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "FICO_CFD.US"
      },
      {
        "reason": "Already held with positive PnL",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "GNRC_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "ITV_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "JDW_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "KEX_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "KGF_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "Moderate positive PnL but not top candidate",
        "symbol": "LXS_CFD.DE"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "NXST_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "OSB_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "SGRO_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "WIZZ_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "WTB_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Negative unrealized PnL and underperformance vs alternatives",
        "symbol": "ROR_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Prioritizing top-ranked mean-reversion candidates with significant negative deviations from moving averages. Exiting ROR_CFD.UK due to underperformance. Maintaining existing positive positions while adding two high-conviction US stocks with strong technical signals."
}
Prompts & responses
#1326openrouteramazon/nova-premier-v12026-03-16T18:30:44.282265+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": "WTB_CFD.UK", "name": "WHITBREAD PLC", "sector": "", "last_price": 2691.0, "change_1d_pct": 11.659751037344401, "distance_from_ma200_pct": -5.969827496214986, "distance_from_ma50_pct": -5.069507041577781, "volatility_20d_pct": 87.61035263352142, "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": "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": "IWG_CFD.UK", "name": "IWG PLC", "sector": "", "last_price": 205.4, "change_1d_pct": -16.5718927701056, "distance_from_ma200_pct": -4.40871742234894, "distance_from_ma50_pct": -10.856111173800208, "volatility_20d_pct": 135.80434164824575, "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": 224.5, "change_1d_pct": 5.39906103286385, "distance_from_ma200_pct": 7.488372582947989, "distance_from_ma50_pct": -0.024403842625497774, "volatility_20d_pct": 101.36283395409495, "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": 347.0, "change_1d_pct": 2.6020106445890034, "distance_from_ma200_pct": 18.583930168759967, "distance_from_ma50_pct": 6.639688157278489, "volatility_20d_pct": 88.64906606382688, "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": "EMG_CFD.UK", "name": "MAN GROUP PLC/JERSEY", "sector": "", "last_price": 269.6, "change_1d_pct": 2.353834472285521, "distance_from_ma200_pct": 42.186331073171914, "distance_from_ma50_pct": 15.516783354614262, "volatility_20d_pct": 86.92367167139048, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "ABDN_CFD.UK", "name": "Aberdeen Group Plc", "sector": "", "last_price": 215.2, "change_1d_pct": -0.6463527239150557, "distance_from_ma200_pct": 13.219747060140353, "distance_from_ma50_pct": 3.663782514155023, "volatility_20d_pct": 74.75396598460024, "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": "ADJ_CFD.DE", "name": "ADLER GROUP SA", "sector": "", "last_price": 0.192, "change_1d_pct": 3.7837837837837895, "distance_from_ma200_pct": -7.239655047467208, "distance_from_ma50_pct": 0.3869078740980747, "volatility_20d_pct": 289.0458804486071, "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": 422.1, "change_1d_pct": -41.75842371057207, "distance_from_ma200_pct": -32.93902241109237, "distance_from_ma50_pct": -33.642404720020004, "volatility_20d_pct": 211.52864207091707, "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": "XRX_CFD.US", "name": "Xerox Corp", "sector": "", "last_price": 1.56, "change_1d_pct": -9.826589595375722, "distance_from_ma200_pct": -55.04193204415113, "distance_from_ma50_pct": -26.045320944344365, "volatility_20d_pct": 130.9912052240651, "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": "VSVS_CFD.UK", "name": "VESUVIUS PLC", "sector": "", "last_price": 443.4, "change_1d_pct": -10.351799433885978, "distance_from_ma200_pct": 13.317546227885302, "distance_from_ma50_pct": -1.7757021353705382, "volatility_20d_pct": 112.7399273800121, "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": 86.0, "change_1d_pct": 3.92749244712991, "distance_from_ma200_pct": 7.871211807633016, "distance_from_ma50_pct": 5.417994606521215, "volatility_20d_pct": 139.7485078641958, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "IMI_CFD.UK", "name": "IMI PLC", "sector": "", "last_price": 2774.0, "change_1d_pct": 4.7583081570997, "distance_from_ma200_pct": 25.227479847754264, "distance_from_ma50_pct": 6.661876238540865, "volatility_20d_pct": 87.69330898337377, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "DOM_CFD.UK", "name": "DOMINO'S PIZZA GROUP PLC", "sector": "", "last_price": 189.21, "change_1d_pct": 4.190528634361246, "distance_from_ma200_pct": -12.46581454882838, "distance_from_ma50_pct": 4.428944053991102, "volatility_20d_pct": 85.812071272284, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "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": "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": "BME_CFD.UK", "name": "B&M EUROPEAN VALUE RETAIL SA", "sector": "", "last_price": 180.0, "change_1d_pct": -0.5799502899751507, "distance_from_ma200_pct": -17.510144533683704, "distance_from_ma50_pct": 3.6906975618860693, "volatility_20d_pct": 107.67302074828436, "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": "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": "FUTR_CFD.UK", "name": "FUTURE PLC", "sector": "", "last_price": 423.6, "change_1d_pct": -20.82242990654205, "distance_from_ma200_pct": -37.68377383888033, "distance_from_ma50_pct": -24.301477407850992, "volatility_20d_pct": 153.59085037557008, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "DPLM_CFD.UK", "name": "DIPLOMA PLC", "sector": "", "last_price": 5220.0, "change_1d_pct": -5.434782608695654, "distance_from_ma200_pct": 4.8180942215069855, "distance_from_ma50_pct": -4.664614313757087, "volatility_20d_pct": 82.77890721911896, "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": "IG GROUP HOLDINGS PLC", "sector": "", "last_price": 1356.0, "change_1d_pct": 3.1963470319634757, "distance_from_ma200_pct": 21.69129359819437, "distance_from_ma50_pct": 9.822701129829392, "volatility_20d_pct": 89.02278066392904, "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": "HELE_CFD.US", "name": "Helen of Troy Ltd", "sector": "", "last_price": 16.69, "change_1d_pct": 1.768292682926842, "distance_from_ma200_pct": -23.569737462735084, "distance_from_ma50_pct": -7.625720895737153, "volatility_20d_pct": 113.29878826858408, "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": "WIZZ_CFD.UK", "name": "WIZZ AIR HOLDINGS PLC", "sector": "", "last_price": 910.5, "change_1d_pct": -20.549738219895286, "distance_from_ma200_pct": -24.87886562384286, "distance_from_ma50_pct": -27.374761545139638, "volatility_20d_pct": 174.34115807008354, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "HMSO_CFD.UK", "name": "HAMMERSON PLC", "sector": "", "last_price": 355.4, "change_1d_pct": 14.129736673089276, "distance_from_ma200_pct": 22.516025502913806, "distance_from_ma50_pct": 10.006914897239172, "volatility_20d_pct": 87.54938293511039, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "BT_CFD.UK", "name": "BT GROUP PLC", "sector": "", "last_price": 218.3, "change_1d_pct": 4.454758600889996, "distance_from_ma200_pct": 13.556591939354634, "distance_from_ma50_pct": 12.205121035556132, "volatility_20d_pct": 92.17334613517771, "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.179, "change_1d_pct": -6.7708333333333375, "distance_from_ma200_pct": -52.2003845332194, "distance_from_ma50_pct": -21.518765345492817, "volatility_20d_pct": 153.7094610063594, "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": "WLN_CFD.FR", "name": "Worldline SA", "sector": "", "last_price": 0.396, "change_1d_pct": -73.17073170731707, "distance_from_ma200_pct": -83.78013066005857, "distance_from_ma50_pct": -71.80692011960701, "volatility_20d_pct": 429.4873680443767, "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": 1719.0, "change_1d_pct": -13.356854838709676, "distance_from_ma200_pct": -15.041741119434038, "distance_from_ma50_pct": -11.540628787118589, "volatility_20d_pct": 72.59006184069659, "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": "IHG_CFD.UK", "name": "INTERCONTINENTAL HOTELS GROU", "sector": "", "last_price": 131.9, "change_1d_pct": -7.665383269163451, "distance_from_ma200_pct": -98.17019459807041, "distance_from_ma50_pct": -93.92145618130301, "volatility_20d_pct": 602.8301664729671, "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": "WAF_CFD.DE", "name": "Siltronic AG", "sector": "", "last_price": 57.399, "change_1d_pct": 12.131512629666542, "distance_from_ma200_pct": 24.31810655460227, "distance_from_ma50_pct": 7.597973973583683, "volatility_20d_pct": 106.25275772460621, "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": 7.0, "change_1d_pct": -12.060301507537686, "distance_from_ma200_pct": -8.176249130953794, "distance_from_ma50_pct": -12.68772139899218, "volatility_20d_pct": 111.69515793141143, "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": "Grammer AG", "sector": "", "last_price": 6.895, "change_1d_pct": -1.5000000000000013, "distance_from_ma200_pct": 3.4653773635160867, "distance_from_ma50_pct": 1.6907656820581707, "volatility_20d_pct": 185.32450843971552, "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": "ASY_CFD.FR", "name": "Assystem SA", "sector": "", "last_price": 43.192, "change_1d_pct": 0.5049447353112191, "distance_from_ma200_pct": -1.4045491738305271, "distance_from_ma50_pct": -4.40546671830907, "volatility_20d_pct": 71.9015306710323, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "HBR_CFD.UK", "name": "HARBOUR ENERGY PLC", "sector": "", "last_price": 293.4, "change_1d_pct": 2.947368421052632, "distance_from_ma200_pct": 37.47723648263506, "distance_from_ma50_pct": 27.090011262236846, "volatility_20d_pct": 145.41433782059445, "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": "GEN_CFD.US", "name": "", "sector": "", "last_price": 20.5, "change_1d_pct": -4.606793857608182, "distance_from_ma200_pct": -25.10129593026017, "distance_from_ma50_pct": -14.154103852596311, "volatility_20d_pct": 67.89859055986832, "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.309, "change_1d_pct": 4.745762711864421, "distance_from_ma200_pct": -71.51981861166028, "distance_from_ma50_pct": -58.9248684000638, "volatility_20d_pct": 293.48292710403206, "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": "GM_CFD.US", "name": "GENERAL MOTORS CO", "sector": "", "last_price": 72.51, "change_1d_pct": -4.403427818061956, "distance_from_ma200_pct": 10.062081632033525, "distance_from_ma50_pct": -9.98093100400249, "volatility_20d_pct": 72.88937458861474, "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": "VBK_CFD.DE", "name": "VERBIO Vereinigte BioEnergie AG", "sector": "", "last_price": 35.78, "change_1d_pct": 6.434244578635817, "distance_from_ma200_pct": 116.85525336093825, "distance_from_ma50_pct": 38.21246245318237, "volatility_20d_pct": 108.65148935110224, "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": "GAW_CFD.UK", "name": "", "sector": "", "last_price": 17180.0, "change_1d_pct": -0.7510109763142703, "distance_from_ma200_pct": 3.4485803607705368, "distance_from_ma50_pct": -1.889119857459387, "volatility_20d_pct": 55.03838903120894, "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": "XFAB_CFD.FR", "name": "X-FAB Silicon Foundries SE", "sector": "", "last_price": 4.836, "change_1d_pct": 0.4987531172069737, "distance_from_ma200_pct": -17.15908419333315, "distance_from_ma50_pct": -1.3065252794886573, "volatility_20d_pct": 87.13403152038191, "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": "HAS_CFD.US", "name": "", "sector": "", "last_price": 94.09, "change_1d_pct": -2.2746157041960924, "distance_from_ma200_pct": 16.275980279178516, "distance_from_ma50_pct": 0.3399764533246863, "volatility_20d_pct": 81.95298405710605, "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": "IAC_CFD.US", "name": "IAC/INTERACTIVECORP", "sector": "", "last_price": 38.5, "change_1d_pct": 3.0238158951030325, "distance_from_ma200_pct": 5.142563758041008, "distance_from_ma50_pct": 2.0532585472917475, "volatility_20d_pct": 70.61801645662662, "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": "DGE_CFD.UK", "name": "DIAGEO PLC", "sector": "", "last_price": 1464.0, "change_1d_pct": -2.400000000000002, "distance_from_ma200_pct": -18.695936129659984, "distance_from_ma50_pct": -12.230857783893912, "volatility_20d_pct": 81.12461662929147, "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": "IWG_CFD.UK",
      "selection_reason": "Strong negative distance from MA50/MA200 with high volatility",
      "mean_reversion_score": 85
    },
    {
      "symbol": "XRX_CFD.US",
      "selection_reason": "Extreme negative distance from MA200 with significant volatility",
      "mean_reversion_score": 92
    },
    {
      "symbol": "HELE_CFD.US",
      "selection_reason": "Negative distance from both MAs with moderate volatility",
      "mean_reversion_score": 78
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Strong negative distance from both MAs with high volatility",
      "mean_reversion_score": 88
    },
    {
      "symbol": "GEN_CFD.US",
      "selection_reason": "Negative distance from both MAs with controlled volatility",
      "mean_reversion_score": 76
    }
  ],
  "rejected_common_reasons": [
    "Earnings uncertainty",
    "Sector concentration risk",
    "Extreme outliers in volatility"
  ]
}
#1327openrouteramazon/nova-premier-v12026-03-16T18:30:57.968153+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": 255.35, "unrealized_pnl": 70.70990499859697, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "ADP_CFD.FR", "qty": 0.0, "avg_price": 117.5, "last_price": 115.1, "unrealized_pnl": -61.276595744680996, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "AKAM_CFD.US", "qty": 0.0, "avg_price": 97.455, "last_price": 107.67, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 0.0, "avg_price": 0.453, "last_price": 0.296, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}, {"symbol": "BRBY_CFD.UK", "qty": 0.0, "avg_price": 1119.08, "last_price": 1067.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "BRNL_CFD.NL", "qty": 0.0, "avg_price": 7.05, "last_price": 6.68, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T10:32:09.961595+00:00"}, {"symbol": "BTRW_CFD.UK", "qty": 0.0, "avg_price": 310.3, "last_price": 295.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "BT_CFD.UK", "qty": 0.0, "avg_price": 211.0, "last_price": 207.8, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 20.505809979494188, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "CABO_CFD.US", "qty": 0.0, "avg_price": 94.6, "last_price": 111.495, "unrealized_pnl": 535.7822410147995, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "CBG_CFD.UK", "qty": 0.0, "avg_price": 458.2, "last_price": 458.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 0.0, "avg_price": 1945.9999999999998, "last_price": 1842.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+00:00"}, {"symbol": "CO_CFD.FR", "qty": 0.0, "avg_price": 0.171, "last_price": 0.165, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T10:33:43.857578+00:00"}, {"symbol": "DLN_CFD.UK", "qty": 1.6556291390728477, "avg_price": 1812.0, "last_price": 1812.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-12T18:01:52.554929+00:00"}, {"symbol": "DSY_CFD.FR", "qty": 0.0, "avg_price": 17.881, "last_price": 16.752, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T09:30:55.514112+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 0.0, "avg_price": 47.4, "last_price": 46.329, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "ESTC_CFD.US", "qty": 0.0, "avg_price": 58.085, "last_price": 55.355000000000004, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "EXE_CFD.FR", "qty": 0.0, "avg_price": 37.303, "last_price": 35.843, "unrealized_pnl": 0.0, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 405.2, "last_price": 394.1, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "FBIN_CFD.US", "qty": 0.0, "avg_price": 48.255, "last_price": 46.05, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "FICO_CFD.US", "qty": 2.6609662855571625, "avg_price": 1127.4099999999999, "last_price": 1157.3899999999999, "unrealized_pnl": 79.77576924100379, "opened_at": "2026-03-14T18:06:47.909233+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 29.709178385970056, "avg_price": 403.9155793573515, "last_price": 414.2, "unrealized_pnl": 305.5416874687975, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "GNRC_CFD.US", "qty": 14.950662812718031, "avg_price": 200.66, "last_price": 201.68, "unrealized_pnl": 15.249676068972544, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "GO_CFD.US", "qty": 0.0, "avg_price": 6.53, "last_price": 6.35, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T18:20:59.102726+00:00"}, {"symbol": "HAIN_CFD.US", "qty": 0.0, "avg_price": 0.8, "last_price": 0.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1409.0, "last_price": 1342.0, "unrealized_pnl": -142.65436479772887, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "HMSO_CFD.UK", "qty": 8.600917431192661, "avg_price": 348.8, "last_price": 348.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "IPO_CFD.UK", "qty": 0.0, "avg_price": 57.7, "last_price": 57.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "ITV_CFD.UK", "qty": 36.210018105009055, "avg_price": 82.85, "last_price": 82.85, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T10:07:39.444598+00:00"}, {"symbol": "JDW_CFD.UK", "qty": 4.514672686230249, "avg_price": 664.5, "last_price": 664.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-15T10:35:48.762746+00:00"}, {"symbol": "KBCA_CFD.BE", "qty": 0.0, "avg_price": 75.3, "last_price": 75.1, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T10:57:06.928276+00:00"}, {"symbol": "KEX_CFD.US", "qty": 24.390243902439025, "avg_price": 123.0, "last_price": 124.49, "unrealized_pnl": 36.34146341463402, "opened_at": "2026-03-09T18:18:45.954380+00:00"}, {"symbol": "KGF_CFD.UK", "qty": 9.505703422053232, "avg_price": 315.6, "last_price": 315.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-14T10:03:26.036362+00:00"}, {"symbol": "LIO_CFD.UK", "qty": 23.300970873786408, "avg_price": 257.5, "last_price": 257.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "LXS_CFD.DE", "qty": 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": "NXST_CFD.US", "qty": 12.874431379280749, "avg_price": 233.02, "last_price": 235.48, "unrealized_pnl": 31.671101193030378, "opened_at": "2026-03-15T18:15:23.812047+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 0.0, "avg_price": 217.0, "last_price": 204.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-01T10:30:13.622938+00:00"}, {"symbol": "OSB_CFD.UK", "qty": 10.743061772605193, "avg_price": 558.5, "last_price": 558.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T10:07:39.444598+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 39.39490073936085, "avg_price": 152.3039755753258, "last_price": 152.7, "unrealized_pnl": 15.601342900401843, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "REC_CFD.BE", "qty": 0.0, "avg_price": 11.08, "last_price": 10.68, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "RHIM_CFD.UK", "qty": 0.0, "avg_price": 2795.0, "last_price": 2550.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T10:20:03.276878+00:00"}, {"symbol": "RMV_CFD.UK", "qty": 0.0, "avg_price": 424.3, "last_price": 416.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "ROR_CFD.UK", "qty": 9.50449879609682, "avg_price": 315.64, "last_price": 309.4, "unrealized_pnl": -59.308072487644246, "opened_at": "2026-03-14T10:03:26.036362+00:00"}, {"symbol": "SGE_CFD.UK", "qty": 0.0, "avg_price": 795.4, "last_price": 813.4, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "SGRO_CFD.UK", "qty": 4.079412564590699, "avg_price": 735.4, "last_price": 735.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-16T10:12:30.296045+00:00"}, {"symbol": "SYNT_CFD.UK", "qty": 326.0869565217392, "avg_price": 18.4, "last_price": 18.48, "unrealized_pnl": 26.086956521739737, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "TRN_CFD.UK", "qty": 81.30081300813009, "avg_price": 184.5, "last_price": 184.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-05T10:27:11.178069+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 64.97022198159178, "avg_price": 92.35, "last_price": 95.16, "unrealized_pnl": 182.56632376827304, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "UMG_CFD.NL", "qty": 0.0, "avg_price": 19.085, "last_price": 18.665, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "UTG_CFD.UK", "qty": 11.881188118811881, "avg_price": 505.0, "last_price": 505.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "VTY_CFD.UK", "qty": 0.0, "avg_price": 427.6, "last_price": 406.1, "unrealized_pnl": 0.0, "opened_at": "2026-03-10T18:24:41.570614+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 3.4403669724770642, "avg_price": 872.0, "last_price": 892.5, "unrealized_pnl": 70.52752293577981, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "WPP_CFD.UK", "qty": 0.0, "avg_price": 263.4, "last_price": 240.8, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T17:30:52.485845+00:00"}, {"symbol": "WTB_CFD.UK", "qty": 1.279317697228145, "avg_price": 2345.0, "last_price": 2345.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-13T18:17:31.188931+00:00"}, {"symbol": "ZS_CFD.US", "qty": 0.0, "avg_price": 159.76, "last_price": 144.45, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T17:32:49.140800+00:00"}], "candidates": [{"symbol": "IWG_CFD.UK", "mean_reversion_score": 85, "selection_reason": "Strong negative distance from MA50/MA200 with high volatility"}, {"symbol": "XRX_CFD.US", "mean_reversion_score": 92, "selection_reason": "Extreme negative distance from MA200 with significant volatility"}, {"symbol": "HELE_CFD.US", "mean_reversion_score": 78, "selection_reason": "Negative distance from both MAs with moderate volatility"}, {"symbol": "FUTR_CFD.UK", "mean_reversion_score": 88, "selection_reason": "Strong negative distance from both MAs with high volatility"}, {"symbol": "GEN_CFD.US", "mean_reversion_score": 76, "selection_reason": "Negative distance from both MAs with controlled 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": "Highest mean-reversion score with extreme negative distance",
        "symbol": "XRX_CFD.US",
        "position_size": 3000
      },
      {
        "reason": "Strong mean-reversion candidate with moderate volatility",
        "symbol": "HELE_CFD.US",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Positive PnL but not enough conviction to add",
        "symbol": "ADBE_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Flat position with limited volatility",
        "symbol": "DLN_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "FICO_CFD.US"
      },
      {
        "reason": "Already held with positive PnL",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "GNRC_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "ITV_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "JDW_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "KEX_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "KGF_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "LIO_CFD.UK"
      },
      {
        "reason": "Moderate positive PnL but not top candidate",
        "symbol": "LXS_CFD.DE"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "NXST_CFD.US"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "OSB_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "SGRO_CFD.UK"
      },
      {
        "reason": "Marginal positive PnL",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "Positive PnL but better opportunities exist",
        "symbol": "WIZZ_CFD.UK"
      },
      {
        "reason": "Flat position with no clear trend",
        "symbol": "WTB_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Negative unrealized PnL and underperformance vs alternatives",
        "symbol": "ROR_CFD.UK"
      }
    ]
  },
  "portfolio_rationale": "Prioritizing top-ranked mean-reversion candidates with significant negative deviations from moving averages. Exiting ROR_CFD.UK due to underperformance. Maintaining existing positive positions while adding two high-conviction US stocks with strong technical signals."
}
Selection logs
#660stage12026-03-16T18:30:57.965263+00:00
{
  "selected_stocks": [
    {
      "symbol": "IWG_CFD.UK",
      "selection_reason": "Strong negative distance from MA50/MA200 with high volatility",
      "mean_reversion_score": 85
    },
    {
      "symbol": "XRX_CFD.US",
      "selection_reason": "Extreme negative distance from MA200 with significant volatility",
      "mean_reversion_score": 92
    },
    {
      "symbol": "HELE_CFD.US",
      "selection_reason": "Negative distance from both MAs with moderate volatility",
      "mean_reversion_score": 78
    },
    {
      "symbol": "FUTR_CFD.UK",
      "selection_reason": "Strong negative distance from both MAs with high volatility",
      "mean_reversion_score": 88
    },
    {
      "symbol": "GEN_CFD.US",
      "selection_reason": "Negative distance from both MAs with controlled volatility",
      "mean_reversion_score": 76
    }
  ],
  "rejected_common_reasons": [
    "Earnings uncertainty",
    "Sector concentration risk",
    "Extreme outliers in volatility"
  ]
}