Arena run #553

meanrev-v1deepseekdeepseek/deepseek-chatUSsuccess
Arena
Run status
as_of: 2026-03-10T18:24:41.570614+00:00
started_at: 2026-03-10T19:12:38.821741+00:00
finished_at: 2026-03-10T19:14:01.189721+00:00
duration_ms: 82366
Inputs
{
  "as_of": "2026-03-10T18:24:41.570614+00:00",
  "dry_run": false,
  "selected": [
    {
      "symbol": "SAFE_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 85
    },
    {
      "symbol": "WIX_CFD.UK",
      "selection_reason": "Significant distance from MA200 and MA50 suggesting reversion potential",
      "mean_reversion_score": 80
    },
    {
      "symbol": "RHIM_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 indicating possible reversion",
      "mean_reversion_score": 75
    },
    {
      "symbol": "CBG_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 suggesting reversion",
      "mean_reversion_score": 70
    },
    {
      "symbol": "RSW_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 65
    }
  ],
  "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": "High distance from MA200 and MA50 indicating potential mean reversion",
        "symbol": "SAFE_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "Positive distance from MA200 and MA50 indicating possible reversion",
        "symbol": "RHIM_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ABF_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "ADJ_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ADS_CFD.DE"
      },
      {
        "reason": "No position currently held",
        "symbol": "AIR_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "AMH_CFD.US"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "AML_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ATG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BBY_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BIG_CFD.FR"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BLND_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BT_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BYW6_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CBG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CCC_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CCL_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "CO_CFD.FR"
      },
      {
        "reason": "No position currently held",
        "symbol": "CRDA_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "CRWD_CFD.US"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ERA_CFD.FR"
      },
      {
        "reason": "No position currently held",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "FLO_CFD.US"
      },
      {
        "reason": "No position currently held",
        "symbol": "FRVIA_CFD.FR"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "GRI_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "HIK_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "IEP_CFD.BE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "IHG_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "LXS_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "MCG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "RMV_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "UTG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "WIX_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "WIZZ_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "WKP_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "WPP_CFD.UK"
      }
    ],
    "sell": []
  },
  "portfolio_rationale": "Avoiding overtrading by holding positions with marginal changes. Adding SAFE_CFD.UK and RHIM_CFD.UK due to their high mean reversion potential as indicated by their distance from MA200 and MA50."
}
Prompts & responses
#1091openrouterdeepseek/deepseek-chat2026-03-10T19:12:38.840191+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": "SAFE_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 85
    },
    {
      "symbol": "WIX_CFD.UK",
      "selection_reason": "Significant distance from MA200 and MA50 suggesting reversion potential",
      "mean_reversion_score": 80
    },
    {
      "symbol": "RHIM_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 indicating possible reversion",
      "mean_reversion_score": 75
    },
    {
      "symbol": "CBG_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 suggesting reversion",
      "mean_reversion_score": 70
    },
    {
      "symbol": "RSW_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 65
    }
  ],
  "rejected_common_reasons": [
    "Unknown sector",
    "Unknown earnings date",
    "Unknown market cap",
    "Unknown average daily volume"
  ]
}
#1092openrouterdeepseek/deepseek-chat2026-03-10T19:12:56.101223+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.6220600162206003, "avg_price": 1849.5, "last_price": 1846.0, "unrealized_pnl": -5.6772100567721, "opened_at": "2026-03-10T10:41:24.306870+00:00"}, {"symbol": "ADJ_CFD.DE", "qty": 0.0, "avg_price": 0.184, "last_price": 0.2, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T21:00:47.737392+00:00"}, {"symbol": "ADS_CFD.DE", "qty": 21.873860736419978, "avg_price": 137.15, "last_price": 141.143, "unrealized_pnl": 87.34232592052486, "opened_at": "2026-03-04T10:26:53.527562+00:00"}, {"symbol": "AIR_CFD.DE", "qty": 0.0, "avg_price": 200.984, "last_price": 187.12, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "AMH_CFD.US", "qty": 101.23165176311794, "avg_price": 29.634999999999998, "last_price": 29.715, "unrealized_pnl": 8.098532141049622, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "AML_CFD.UK", "qty": 75.1503006012024, "avg_price": 39.92, "last_price": 43.18, "unrealized_pnl": 244.98997995991968, "opened_at": "2026-02-20T09:33:44.817899+00:00"}, {"symbol": "ATG_CFD.UK", "qty": 10.135135135135135, "avg_price": 296.0, "last_price": 296.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-16T21:00:47.737392+00:00"}, {"symbol": "BBY_CFD.UK", "qty": 4.129387474191328, "avg_price": 726.5, "last_price": 726.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-06T18:02:13.212382+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-22T17:33:48.338981+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-10T10:41:24.306870+00:00"}, {"symbol": "BT_CFD.UK", "qty": 0.0, "avg_price": 204.0, "last_price": 203.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T09:33:49.074031+00:00"}, {"symbol": "BYIT_CFD.UK", "qty": 10.252904989747094, "avg_price": 292.6, "last_price": 292.6, "unrealized_pnl": 0.0, "opened_at": "2026-03-04T18:49:26.891792+00:00"}, {"symbol": "BYW6_CFD.DE", "qty": 0.0, "avg_price": 3.005, "last_price": 2.94, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T17:33:27.020111+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-08T18:08:31.007911+00:00"}, {"symbol": "CCC_CFD.UK", "qty": 1.007387508394896, "avg_price": 2978.0, "last_price": 3198.0, "unrealized_pnl": 221.62525184687712, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 1.5416238437821173, "avg_price": 1945.9999999999998, "last_price": 1989.0, "unrealized_pnl": 66.2898252826314, "opened_at": "2026-03-02T10:31:26.559356+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": "CRDA_CFD.UK", "qty": 0.0, "avg_price": 2911.0, "last_price": 2852.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "CRWD_CFD.US", "qty": 0.0, "avg_price": 422.705, "last_price": 388.21500000000003, "unrealized_pnl": 0.0, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "ERA_CFD.FR", "qty": 63.29113924050633, "avg_price": 47.4, "last_price": 56.25, "unrealized_pnl": 560.1265822784811, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 0.0, "avg_price": 474.05, "last_price": 437.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "FLO_CFD.US", "qty": 0.0, "avg_price": 9.875, "last_price": 9.245000000000001, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "FRVIA_CFD.FR", "qty": 0.0, "avg_price": 12.709, "last_price": 11.64, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+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": "GRI_CFD.UK", "qty": 15.822784810126583, "avg_price": 189.6, "last_price": 189.6, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "HIK_CFD.UK", "qty": 0.0, "avg_price": 1408.0, "last_price": 1275.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-26T10:33:24.101894+00:00"}, {"symbol": "IEP_CFD.BE", "qty": 582.5242718446601, "avg_price": 5.15, "last_price": 5.45, "unrealized_pnl": 174.75728155339795, "opened_at": "2026-02-24T18:14:37.115518+00:00"}, {"symbol": "IHG_CFD.UK", "qty": 23.21083172147002, "avg_price": 129.25, "last_price": 131.95, "unrealized_pnl": 62.669245647968786, "opened_at": "2026-03-07T10:14:47.113218+00:00"}, {"symbol": "LXS_CFD.DE", "qty": 0.0, "avg_price": 20.34, "last_price": 20.025, "unrealized_pnl": 0.0, "opened_at": "2026-02-18T09:36:37.284518+00:00"}, {"symbol": "MCG_CFD.UK", "qty": 349.92223950233284, "avg_price": 25.72, "last_price": 23.88, "unrealized_pnl": -643.8569206842924, "opened_at": "2026-03-08T18:08:31.007911+00:00"}, {"symbol": "OCDO_CFD.UK", "qty": 13.824884792626728, "avg_price": 217.0, "last_price": 204.3, "unrealized_pnl": -175.5760368663593, "opened_at": "2026-02-19T00:47:27.070066+00:00"}, {"symbol": "PAGE_CFD.UK", "qty": 59.24560595089197, "avg_price": 151.91000000000003, "last_price": 152.7, "unrealized_pnl": 46.804028701202505, "opened_at": "2026-03-05T10:27:11.178069+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-21T17:32:49.140800+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": 48.78048780487805, "avg_price": 184.50000000000003, "last_price": 184.5, "unrealized_pnl": -1.3864248502636101e-12, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "UKW_CFD.UK", "qty": 97.45533297238767, "avg_price": 92.35, "last_price": 94.79, "unrealized_pnl": 237.79101245262706, "opened_at": "2026-02-20T09:33:44.817899+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": "WIX_CFD.UK", "qty": 26.7260579064588, "avg_price": 224.5, "last_price": 224.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-09T10:19:46.508085+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": "WKP_CFD.UK", "qty": 7.2727272727272725, "avg_price": 412.5, "last_price": 412.5, "unrealized_pnl": 0.0, "opened_at": "2026-02-21T09:33:26.900894+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-27T18:23:55.960577+00:00"}], "candidates": [{"symbol": "SAFE_CFD.UK", "mean_reversion_score": 85, "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion"}, {"symbol": "WIX_CFD.UK", "mean_reversion_score": 80, "selection_reason": "Significant distance from MA200 and MA50 suggesting reversion potential"}, {"symbol": "RHIM_CFD.UK", "mean_reversion_score": 75, "selection_reason": "Positive distance from MA200 and MA50 indicating possible reversion"}, {"symbol": "CBG_CFD.UK", "mean_reversion_score": 70, "selection_reason": "Positive distance from MA200 and MA50 suggesting reversion"}, {"symbol": "RSW_CFD.UK", "mean_reversion_score": 65, "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion"}], "output_schema": {"actions": {"sell": [{"symbol": "string", "reason": "string"}], "hold": [{"symbol": "string", "reason": "string"}], "buy": [{"symbol": "string", "position_size": "number (currency amount)", "reason": "string"}]}, "portfolio_rationale": "string"}}
Output JSON
{
  "actions": {
    "buy": [
      {
        "reason": "High distance from MA200 and MA50 indicating potential mean reversion",
        "symbol": "SAFE_CFD.UK",
        "position_size": 3000
      },
      {
        "reason": "Positive distance from MA200 and MA50 indicating possible reversion",
        "symbol": "RHIM_CFD.UK",
        "position_size": 3000
      }
    ],
    "hold": [
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ABF_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "ADJ_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ADS_CFD.DE"
      },
      {
        "reason": "No position currently held",
        "symbol": "AIR_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "AMH_CFD.US"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "AML_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ATG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BBY_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BIG_CFD.FR"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BLND_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BT_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "BYIT_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "BYW6_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CBG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CCC_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "CCL_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "CO_CFD.FR"
      },
      {
        "reason": "No position currently held",
        "symbol": "CRDA_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "CRWD_CFD.US"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "ERA_CFD.FR"
      },
      {
        "reason": "No position currently held",
        "symbol": "EZJ_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "FLO_CFD.US"
      },
      {
        "reason": "No position currently held",
        "symbol": "FRVIA_CFD.FR"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "FUTR_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "GRI_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "HIK_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "IEP_CFD.BE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "IHG_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "LXS_CFD.DE"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "MCG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "OCDO_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "PAGE_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "RMV_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "SYNT_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "TRN_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "UKW_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "UTG_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "WIX_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "WIZZ_CFD.UK"
      },
      {
        "reason": "Marginal change in price, avoiding overtrading",
        "symbol": "WKP_CFD.UK"
      },
      {
        "reason": "No position currently held",
        "symbol": "WPP_CFD.UK"
      }
    ],
    "sell": []
  },
  "portfolio_rationale": "Avoiding overtrading by holding positions with marginal changes. Adding SAFE_CFD.UK and RHIM_CFD.UK due to their high mean reversion potential as indicated by their distance from MA200 and MA50."
}
Selection logs
#543stage12026-03-10T19:12:56.098247+00:00
{
  "selected_stocks": [
    {
      "symbol": "SAFE_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 85
    },
    {
      "symbol": "WIX_CFD.UK",
      "selection_reason": "Significant distance from MA200 and MA50 suggesting reversion potential",
      "mean_reversion_score": 80
    },
    {
      "symbol": "RHIM_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 indicating possible reversion",
      "mean_reversion_score": 75
    },
    {
      "symbol": "CBG_CFD.UK",
      "selection_reason": "Positive distance from MA200 and MA50 suggesting reversion",
      "mean_reversion_score": 70
    },
    {
      "symbol": "RSW_CFD.UK",
      "selection_reason": "High distance from MA200 and MA50 indicating potential mean reversion",
      "mean_reversion_score": 65
    }
  ],
  "rejected_common_reasons": [
    "Unknown sector",
    "Unknown earnings date",
    "Unknown market cap",
    "Unknown average daily volume"
  ]
}