Arena run #418

meanrev-v1amazonamazon/nova-premier-v1USsuccess
Arena
Run status
as_of: 2026-03-04T18:49:26.891792+00:00
started_at: 2026-03-04T19:46:00.178458+00:00
finished_at: 2026-03-04T19:46:19.278222+00:00
duration_ms: 19098
Inputs
{
  "dry_run": false,
  "selected": [
    {
      "symbol": "UTG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 75
    },
    {
      "symbol": "SYNT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -50",
      "mean_reversion_score": 80
    },
    {
      "symbol": "TCAP_CFD.UK",
      "selection_reason": "distance_from_ma50_pct near 0",
      "mean_reversion_score": 60
    },
    {
      "symbol": "ATG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 65
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 70
    }
  ],
  "universe_symbols": [
    "UTG_CFD.UK",
    "SYNT_CFD.UK",
    "CCL_CFD.UK",
    "CBG_CFD.UK",
    "KGF_CFD.UK",
    "RHIM_CFD.UK",
    "BBY_CFD.UK",
    "TCAP_CFD.UK",
    "HLMA_CFD.UK",
    "SHC_CFD.UK",
    "GLW_CFD.US",
    "DPLM_CFD.UK",
    "ATG_CFD.UK",
    "CCC_CFD.UK",
    "BYIT_CFD.UK",
    "BRNK_CFD.DE",
    "ERA_CFD.FR",
    "WKP_CFD.UK",
    "PZC_CFD.UK",
    "MCG_CFD.UK",
    "OCDO_CFD.UK",
    "EXM_CFD.BE",
    "CRDA_CFD.UK",
    "CO_CFD.FR",
    "HPP_CFD.US",
    "CAT_CFD.US"
  ]
}
Outputs
{
  "actions": {
    "buy": [
      {
        "reason": "Strong mean-reversion candidate",
        "symbol": "SYNT_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Profitable position",
        "symbol": "AKAM_CFD.US"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "BT_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Profitable position",
        "symbol": "CABO_CFD.US"
      },
      {
        "reason": "No PnL change",
        "symbol": "CBG_CFD.UK"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "EXE_CFD.FR"
      },
      {
        "reason": "Profitable position",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "RHIM_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Profitable position",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "UTG_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Extreme unrealized loss",
        "symbol": "BIG_CFD.FR"
      }
    ]
  },
  "portfolio_rationale": "Liquidated BIG_CFD.FR due to extreme loss. Maintained existing profitable positions and added SYNT_CFD.UK for mean-reversion potential. Preserved capital for better opportunities given limited buy capacity."
}
Prompts & responses
#821openrouteramazon/nova-premier-v12026-03-04T19:46:00.205336+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": "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": "SYNT_CFD.UK", "name": "SYNTHOMER PLC", "sector": "", "last_price": 20.2, "change_1d_pct": -32.666666666666664, "distance_from_ma200_pct": -73.62254515017194, "distance_from_ma50_pct": -61.002505878582646, "volatility_20d_pct": 362.0742865046256, "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": "CCL_CFD.UK", "name": "CARNIVAL PLC", "sector": "", "last_price": 2373.0, "change_1d_pct": 7.912687585266021, "distance_from_ma200_pct": 26.41215845244669, "distance_from_ma50_pct": 14.616441127141865, "volatility_20d_pct": 141.1300212149729, "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": "KGF_CFD.UK", "name": "KINGFISHER PLC", "sector": "", "last_price": 367.3, "change_1d_pct": 9.282951502529002, "distance_from_ma200_pct": 25.836325072262547, "distance_from_ma50_pct": 13.171108060075287, "volatility_20d_pct": 79.7523939314479, "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": 2960.0, "change_1d_pct": 9.023941068139973, "distance_from_ma200_pct": 12.939755835694466, "distance_from_ma50_pct": 17.95826987098712, "volatility_20d_pct": 137.0123103901981, "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": "TCAP_CFD.UK", "name": "TP ICAP GROUP PLC", "sector": "", "last_price": 257.0, "change_1d_pct": 6.418219461697716, "distance_from_ma200_pct": -3.992600332402274, "distance_from_ma50_pct": 0.16861066526767665, "volatility_20d_pct": 70.21181677464367, "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": "HLMA_CFD.UK", "name": "HALMA PLC", "sector": "", "last_price": 4104.0, "change_1d_pct": 15.345699831365934, "distance_from_ma200_pct": 23.591861367515033, "distance_from_ma50_pct": 12.09684468140897, "volatility_20d_pct": 82.81135582460098, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "SHC_CFD.UK", "name": "SHAFTESBURY CAPITAL PLC", "sector": "", "last_price": 147.2, "change_1d_pct": 2.364394993045882, "distance_from_ma200_pct": 5.210906053879838, "distance_from_ma50_pct": 3.8182841489510233, "volatility_20d_pct": 60.09537427211038, "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": "GLW_CFD.US", "name": "", "sector": "", "last_price": 149.54, "change_1d_pct": -0.4394141145139807, "distance_from_ma200_pct": 86.4582716388041, "distance_from_ma50_pct": 34.77195834812874, "volatility_20d_pct": 131.85067857683768, "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": 5510.0, "change_1d_pct": 0.7312614259597838, "distance_from_ma200_pct": 11.035071455048428, "distance_from_ma50_pct": 0.39717925834363843, "volatility_20d_pct": 72.46279741195445, "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": "CCC_CFD.UK", "name": "COMPUTACENTER PLC", "sector": "", "last_price": 3060.0, "change_1d_pct": -6.877662811929397, "distance_from_ma200_pct": 20.590448668980944, "distance_from_ma50_pct": 5.284743621327226, "volatility_20d_pct": 97.14510937756963, "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": "BRNK_CFD.DE", "name": "Branicks Group AG", "sector": "", "last_price": 1.806, "change_1d_pct": 3.7931034482758585, "distance_from_ma200_pct": -6.799603666088682, "distance_from_ma50_pct": -3.423492796868477, "volatility_20d_pct": 113.45973660226878, "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": "ERA_CFD.FR", "name": "Eramet", "sector": "", "last_price": 57.5, "change_1d_pct": -2.9535864978902926, "distance_from_ma200_pct": 3.342324415100406, "distance_from_ma50_pct": -13.203171299504014, "volatility_20d_pct": 172.8667199973469, "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": 81.9, "change_1d_pct": -10.295728368017521, "distance_from_ma200_pct": 8.408114857007853, "distance_from_ma50_pct": 8.138797929650377, "volatility_20d_pct": 91.01714564624595, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "MCG_CFD.UK", "name": "MOBICO GROUP PLC", "sector": "", "last_price": 31.26, "change_1d_pct": 23.851030110935035, "distance_from_ma200_pct": 12.691085471826336, "distance_from_ma50_pct": 32.023515896881435, "volatility_20d_pct": 210.87769115491298, "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": "EXM_CFD.BE", "name": "EXMAR NV", "sector": "", "last_price": 10.9, "change_1d_pct": 6.862745098039236, "distance_from_ma200_pct": -1.46041985997436, "distance_from_ma50_pct": 7.238711403902309, "volatility_20d_pct": 98.93043535495613, "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": 2985.0, "change_1d_pct": -3.522947640594698, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 4.683214914464862, "volatility_20d_pct": 5384.213547557704, "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.2222, "change_1d_pct": -0.7149240393208189, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -6.383767568842891, "volatility_20d_pct": 4760.058004735714, "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": "HPP_CFD.US", "name": "Hudson Pacific Properties Inc", "sector": "", "last_price": 6.37, "change_1d_pct": -2.0000000000000018, "distance_from_ma200_pct": null, "distance_from_ma50_pct": -32.976999642263415, "volatility_20d_pct": 7053.772722351873, "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": "CAT_CFD.US", "name": "Caterpillar Inc", "sector": "", "last_price": 742.83, "change_1d_pct": -1.3414261617945789, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 12.288069394651636, "volatility_20d_pct": 4090.838445525382, "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": "UTG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 75
    },
    {
      "symbol": "SYNT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -50",
      "mean_reversion_score": 80
    },
    {
      "symbol": "TCAP_CFD.UK",
      "selection_reason": "distance_from_ma50_pct near 0",
      "mean_reversion_score": 60
    },
    {
      "symbol": "ATG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 65
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 70
    }
  ],
  "rejected_common_reasons": [
    "distance_from_ma200_pct > 20",
    "distance_from_ma50_pct > 15",
    "sector concentration limits"
  ]
}
#822openrouteramazon/nova-premier-v12026-03-04T19:46:12.979965+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": "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": 30.783438510081577, "avg_price": 97.455, "last_price": 101.745, "unrealized_pnl": 132.06095120825015, "opened_at": "2026-02-23T18:14:12.978497+00:00"}, {"symbol": "BIG_CFD.FR", "qty": 6622.516556291391, "avg_price": 0.453, "last_price": 0.3, "unrealized_pnl": -1013.245033112583, "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": 363.1, "last_price": 340.3, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T18:21:09.503139+00:00"}, {"symbol": "BT_CFD.UK", "qty": 14.218009478672986, "avg_price": 211.0, "last_price": 207.8, "unrealized_pnl": -45.49763033175339, "opened_at": "2026-03-03T10:20:03.276878+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-16T09:30:55.514112+00:00"}, {"symbol": "CABO_CFD.US", "qty": 31.71247357293869, "avg_price": 94.6, "last_price": 111.47, "unrealized_pnl": 534.9894291754758, "opened_at": "2026-02-27T18:23:55.960577+00:00"}, {"symbol": "CBG_CFD.UK", "qty": 6.547359231776517, "avg_price": 458.2, "last_price": 458.2, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+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": 80.42248612712115, "avg_price": 37.303, "last_price": 35.954, "unrealized_pnl": -108.48993378548616, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 6.855575868372943, "avg_price": 437.6, "last_price": 433.9, "unrealized_pnl": -25.365630712980202, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "FUTR_CFD.UK", "qty": 22.466300549176236, "avg_price": 400.6, "last_price": 414.2, "unrealized_pnl": 305.54168746879606, "opened_at": "2026-02-18T09:36:37.284518+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": "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": "LIO_CFD.UK", "qty": 0.0, "avg_price": 250.0, "last_price": 270.0, "unrealized_pnl": 240.0, "opened_at": "2026-02-21T09:33:26.900894+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 13.824884792626728, "avg_price": 217.0, "last_price": 217.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-01T10:30:13.622938+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 14.577259475218659, "avg_price": 205.8, "last_price": 205.8, "unrealized_pnl": 0.0, "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": 1.073345259391771, "avg_price": 2795.0, "last_price": 2795.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": "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": "SYNT_CFD.UK", "qty": 163.0434782608696, "avg_price": 18.4, "last_price": 18.4, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 64.97022198159178, "avg_price": 92.35, "last_price": 94.79, "unrealized_pnl": 158.52734163508472, "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": 5.9405940594059405, "avg_price": 505.0, "last_price": 505.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "WIZZ_CFD.UK", "qty": 0.0, "avg_price": 1299.0, "last_price": 1149.0, "unrealized_pnl": 0.0, "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": "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": "UTG_CFD.UK", "mean_reversion_score": 75, "selection_reason": "distance_from_ma200_pct < -20"}, {"symbol": "SYNT_CFD.UK", "mean_reversion_score": 80, "selection_reason": "distance_from_ma200_pct < -50"}, {"symbol": "TCAP_CFD.UK", "mean_reversion_score": 60, "selection_reason": "distance_from_ma50_pct near 0"}, {"symbol": "ATG_CFD.UK", "mean_reversion_score": 65, "selection_reason": "distance_from_ma200_pct < -20"}, {"symbol": "BYIT_CFD.UK", "mean_reversion_score": 70, "selection_reason": "distance_from_ma200_pct < -20"}], "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": "Strong mean-reversion candidate",
        "symbol": "SYNT_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Profitable position",
        "symbol": "AKAM_CFD.US"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "BT_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "Profitable position",
        "symbol": "CABO_CFD.US"
      },
      {
        "reason": "No PnL change",
        "symbol": "CBG_CFD.UK"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "Marginal unrealized loss",
        "symbol": "EXE_CFD.FR"
      },
      {
        "reason": "Profitable position",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "HMSO_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "RHIM_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Profitable position",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "No PnL change",
        "symbol": "UTG_CFD.UK"
      }
    ],
    "sell": [
      {
        "reason": "Extreme unrealized loss",
        "symbol": "BIG_CFD.FR"
      }
    ]
  },
  "portfolio_rationale": "Liquidated BIG_CFD.FR due to extreme loss. Maintained existing profitable positions and added SYNT_CFD.UK for mean-reversion potential. Preserved capital for better opportunities given limited buy capacity."
}
Selection logs
#408stage12026-03-04T19:46:12.977004+00:00
{
  "selected_stocks": [
    {
      "symbol": "UTG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 75
    },
    {
      "symbol": "SYNT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -50",
      "mean_reversion_score": 80
    },
    {
      "symbol": "TCAP_CFD.UK",
      "selection_reason": "distance_from_ma50_pct near 0",
      "mean_reversion_score": 60
    },
    {
      "symbol": "ATG_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 65
    },
    {
      "symbol": "BYIT_CFD.UK",
      "selection_reason": "distance_from_ma200_pct < -20",
      "mean_reversion_score": 70
    }
  ],
  "rejected_common_reasons": [
    "distance_from_ma200_pct > 20",
    "distance_from_ma50_pct > 15",
    "sector concentration limits"
  ]
}