Arena run #410
meanrev-v1 • deepseek • deepseek/deepseek-chat • EU • success
Run status
as_of: 2026-03-04T10:26:53.527562+00:00
started_at: 2026-03-04T11:56:43.197918+00:00
finished_at: 2026-03-04T11:58:18.458877+00:00
duration_ms: 95259
Inputs
{
"dry_run": false,
"selected": [
{
"symbol": "ADS_CFD.DE",
"selection_reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)",
"mean_reversion_score": 85
},
{
"symbol": "AML_CFD.UK",
"selection_reason": "Large negative daily change (-29.31%) and below MA200 (-41.08%)",
"mean_reversion_score": 90
},
{
"symbol": "EZJ_CFD.UK",
"selection_reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative daily change (-10.96%) and below MA200 (-19.31%)",
"mean_reversion_score": 75
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "Negative daily change (-12.67%) and below MA200 (-28.03%)",
"mean_reversion_score": 70
}
],
"universe_symbols": [
"VTY_CFD.UK",
"WEIR_CFD.UK",
"UTG_CFD.UK",
"CCL_CFD.UK",
"CBG_CFD.UK",
"KGF_CFD.UK",
"ADS_CFD.DE",
"AML_CFD.UK",
"COFB_CFD.BE",
"IMI_CFD.UK",
"AT1_CFD.DE",
"CNA_CFD.UK",
"STNE_CFD.US",
"HLMA_CFD.UK",
"SHC_CFD.UK",
"IPR_CFD.PT",
"IPO_CFD.UK",
"ATG_CFD.UK",
"MDB_CFD.US",
"EXPN_CFD.UK",
"CCC_CFD.UK",
"BYIT_CFD.UK",
"WKP_CFD.UK",
"CCH_CFD.UK",
"MCG_CFD.UK",
"EZJ_CFD.UK",
"LSEG_CFD.UK",
"SBGI_CFD.US",
"MKS_CFD.UK",
"BOSS_CFD.DE",
"ALK_CFD.US",
"HMSO_CFD.UK",
"BT_CFD.UK",
"MSLH_CFD.UK",
"PAGE_CFD.UK",
"NBIS_CFD.US",
"COIN_CFD.US",
"NXT_CFD.UK",
"SDG_CFD.FR",
"SNOW_CFD.US",
"GOOS_CFD.US",
"PSN_CFD.UK",
"ARG_CFD.FR",
"WLK_CFD.US",
"UHAL_CFD.US",
"IVZ_CFD.US",
"JLL_CFD.US"
]
}Outputs
{
"actions": {
"buy": [
{
"reason": "Large negative daily change (-29.31%) and below MA200 (-41.08%)",
"symbol": "AML_CFD.UK",
"position_size": 3000
},
{
"reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)",
"symbol": "ADS_CFD.DE",
"position_size": 3000
}
],
"hold": [
{
"reason": "No clear improvement vs current holdings",
"symbol": "ADJ_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "AIR_CFD.DE"
},
{
"reason": "Positive unrealized PNL",
"symbol": "AMH_CFD.US"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "ATG_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "BIG_CFD.FR"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "BT_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "BYW6_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CCC_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CCL_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CRDA_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CRWD_CFD.US"
},
{
"reason": "Positive unrealized PNL",
"symbol": "ERA_CFD.FR"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "FRVIA_CFD.FR"
},
{
"reason": "Positive unrealized PNL",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "GRI_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "HIK_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "IEP_CFD.BE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "LXS_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "OCDO_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "RMV_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "UKW_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "UTG_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WIZZ_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WKP_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WPP_CFD.UK"
}
],
"sell": [
{
"reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)",
"symbol": "EZJ_CFD.UK"
},
{
"reason": "Negative unrealized PNL and below MA200",
"symbol": "FLO_CFD.US"
}
]
},
"portfolio_rationale": "The portfolio is adjusted to capitalize on mean-reversion opportunities while adhering to the strategy's rules. Two positions with significant negative daily changes and below MA200 are bought, and two positions with negative performance are sold to reallocate capital efficiently. The rest of the positions are held as they show no clear improvement or are already performing well."
}Prompts & responses
#805 • openrouter • deepseek/deepseek-chat • 2026-03-04T11:56:43.235947+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": "EU", "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": "VTY_CFD.UK", "name": "VISTRY GROUP PLC", "sector": "", "last_price": 720.0, "change_1d_pct": 7.752170008979342, "distance_from_ma200_pct": 13.334264143447182, "distance_from_ma50_pct": 9.187026761436968, "volatility_20d_pct": 108.27100991710547, "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": "WEIR_CFD.UK", "name": "", "sector": "", "last_price": 3564.0, "change_1d_pct": 19.19732441471571, "distance_from_ma200_pct": 37.136107856394496, "distance_from_ma50_pct": 18.20579522816075, "volatility_20d_pct": 87.71696843792506, "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": "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": "ADS_CFD.DE", "name": "ADIDAS AG", "sector": "", "last_price": 146.92, "change_1d_pct": -8.170982480483524, "distance_from_ma200_pct": -16.771731120801313, "distance_from_ma50_pct": -6.281487748849712, "volatility_20d_pct": 43.26107369371941, "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": "AML_CFD.UK", "name": "ASTON MARTIN LAGONDA GLOBAL", "sector": "", "last_price": 41.0, "change_1d_pct": -29.31034482758621, "distance_from_ma200_pct": -41.07802778099134, "distance_from_ma50_pct": -31.55967161996588, "volatility_20d_pct": 109.21218170050702, "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": "COFB_CFD.BE", "name": "Cofinimmo SA", "sector": "", "last_price": 91.25, "change_1d_pct": 1.9553072625698276, "distance_from_ma200_pct": null, "distance_from_ma50_pct": 9.988790183575812, "volatility_20d_pct": 1542.002222512536, "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": 2828.0, "change_1d_pct": 8.26952526799387, "distance_from_ma200_pct": 29.012317870749314, "distance_from_ma50_pct": 11.107007677698544, "volatility_20d_pct": 78.40398881701634, "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": "AT1_CFD.DE", "name": "AROUNDTOWN SA", "sector": "", "last_price": 2.692, "change_1d_pct": -12.654120700843595, "distance_from_ma200_pct": -10.79535287529243, "distance_from_ma50_pct": -2.9063183028081974, "volatility_20d_pct": 98.53482010392509, "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": "CNA_CFD.UK", "name": "CENTRICA PLC", "sector": "", "last_price": 197.0, "change_1d_pct": 2.3376623376623273, "distance_from_ma200_pct": 16.907910392757188, "distance_from_ma50_pct": 8.119974753711467, "volatility_20d_pct": 93.26050913466813, "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": "STNE_CFD.US", "name": "", "sector": "", "last_price": 14.17, "change_1d_pct": -13.544844417327639, "distance_from_ma200_pct": -10.990785002229941, "distance_from_ma50_pct": -10.379983808945559, "volatility_20d_pct": 147.29515351881847, "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": "IPR_CFD.PT", "name": "Impresa SGPS SA", "sector": "", "last_price": 0.185, "change_1d_pct": -6.565656565656575, "distance_from_ma200_pct": 20.69809166530745, "distance_from_ma50_pct": -5.833248498422073, "volatility_20d_pct": 242.82012575943392, "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": "MDB_CFD.US", "name": "", "sector": "", "last_price": 259.43, "change_1d_pct": -21.353866674750655, "distance_from_ma200_pct": -15.190615164707822, "distance_from_ma50_pct": -32.01683816847183, "volatility_20d_pct": 215.6796730862848, "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": "EXPN_CFD.UK", "name": "EXPERIAN PLC", "sector": "", "last_price": 2745.0, "change_1d_pct": 8.670263936120115, "distance_from_ma200_pct": -22.49882643600887, "distance_from_ma50_pct": -7.076504979785325, "volatility_20d_pct": 106.5159364083547, "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": "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": "CCH_CFD.UK", "name": "COCA-COLA HBC AG-DI", "sector": "", "last_price": 4630.0, "change_1d_pct": -1.906779661016944, "distance_from_ma200_pct": 20.510662239405143, "distance_from_ma50_pct": 13.022760782322539, "volatility_20d_pct": 71.1715610930273, "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": "EZJ_CFD.UK", "name": "EASYJET PLC", "sector": "", "last_price": 447.6, "change_1d_pct": -8.184615384615379, "distance_from_ma200_pct": -10.294983403269242, "distance_from_ma50_pct": -8.255338756298226, "volatility_20d_pct": 86.55788992228685, "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": "LSEG_CFD.UK", "name": "LONDON STOCK EXCHANGE GROUP", "sector": "", "last_price": 8674.0, "change_1d_pct": 9.547865622631967, "distance_from_ma200_pct": -7.437301817623421, "distance_from_ma50_pct": 3.746546875007839, "volatility_20d_pct": 108.29860079620886, "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": "SBGI_CFD.US", "name": "SINCLAIR INC", "sector": "", "last_price": 15.6, "change_1d_pct": -7.637655417406752, "distance_from_ma200_pct": 7.428768184557111, "distance_from_ma50_pct": 4.412079674448499, "volatility_20d_pct": 138.1881533648708, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "MKS_CFD.UK", "name": "MARKS & SPENCER GROUP PLC", "sector": "", "last_price": 397.6, "change_1d_pct": 9.411117226197053, "distance_from_ma200_pct": 10.111525306334212, "distance_from_ma50_pct": 12.600812560994456, "volatility_20d_pct": 102.27498035906231, "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": "BOSS_CFD.DE", "name": "Hugo Boss AG", "sector": "", "last_price": 35.35, "change_1d_pct": -4.896421845574384, "distance_from_ma200_pct": -9.266740510963, "distance_from_ma50_pct": -1.5236396194216018, "volatility_20d_pct": 46.5427844592804, "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": "ALK_CFD.US", "name": "Alaska Air Group Inc", "sector": "", "last_price": 50.71, "change_1d_pct": -8.200579290369303, "distance_from_ma200_pct": -0.8325877688310057, "distance_from_ma50_pct": -2.930276718580116, "volatility_20d_pct": 111.56413460180359, "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": 211.0, "change_1d_pct": 3.3806957373836433, "distance_from_ma200_pct": 10.169909673727373, "distance_from_ma50_pct": 9.32993702388365, "volatility_20d_pct": 91.1818600610736, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "MSLH_CFD.UK", "name": "MARSHALLS PLC", "sector": "", "last_price": 182.32, "change_1d_pct": 0.8407079646017612, "distance_from_ma200_pct": -17.111863069088763, "distance_from_ma50_pct": 6.139091576985178, "volatility_20d_pct": 102.4204512350097, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "PAGE_CFD.UK", "name": "PAGEGROUP PLC", "sector": "", "last_price": 209.6, "change_1d_pct": -10.960067969413767, "distance_from_ma200_pct": -19.313052268665963, "distance_from_ma50_pct": -8.41066281665177, "volatility_20d_pct": 112.6882126676479, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "NBIS_CFD.US", "name": "", "sector": "", "last_price": 88.3, "change_1d_pct": -15.356595092024538, "distance_from_ma200_pct": 7.744945871281983, "distance_from_ma50_pct": -6.342212614844822, "volatility_20d_pct": 170.58581697884307, "market_cap_usd": null, "avg_daily_volume_usd": null, "days_to_next_earnings": null, "earnings_confirmed": null, "news_sentiment_score": null, "news_headlines_last_3": [], "data_quality_note": "snapshot_ok_prices_technicals_only"}, {"symbol": "COIN_CFD.US", "name": "Coinbase Global Inc", "sector": "", "last_price": 185.67, "change_1d_pct": 3.132811198133645, "distance_from_ma200_pct": -35.418984425530006, "distance_from_ma50_pct": -9.915898216172748, "volatility_20d_pct": 155.61606228657058, "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": "NXT_CFD.UK", "name": "NEXT PLC", "sector": "", "last_price": 13225.0, "change_1d_pct": -5.603140613847257, "distance_from_ma200_pct": 4.116518358426768, "distance_from_ma50_pct": -3.780207539944458, "volatility_20d_pct": 72.99366321435181, "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": "SDG_CFD.FR", "name": "Synergie SA", "sector": "", "last_price": 28.5, "change_1d_pct": -3.0612244897959107, "distance_from_ma200_pct": -11.192308693042142, "distance_from_ma50_pct": -4.830852702202715, "volatility_20d_pct": 77.87629221334478, "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": "SNOW_CFD.US", "name": "", "sector": "", "last_price": 168.16, "change_1d_pct": -1.4706744008906036, "distance_from_ma200_pct": -22.961439946710716, "distance_from_ma50_pct": -15.014479276693182, "volatility_20d_pct": 138.69851569407896, "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": "GOOS_CFD.US", "name": "", "sector": "", "last_price": 11.94, "change_1d_pct": -3.6319612590799077, "distance_from_ma200_pct": -6.134289285630057, "distance_from_ma50_pct": -5.341768539218961, "volatility_20d_pct": 129.54896197262082, "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": "PSN_CFD.UK", "name": "PERSIMMON PLC", "sector": "", "last_price": 1398.0, "change_1d_pct": -2.7640602612433396, "distance_from_ma200_pct": 10.380997224407462, "distance_from_ma50_pct": -0.5773200509943011, "volatility_20d_pct": 95.523625160791, "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": "ARG_CFD.FR", "name": "ARGAN", "sector": "", "last_price": 66.0, "change_1d_pct": -6.6108218247679424, "distance_from_ma200_pct": 0.8922312752617456, "distance_from_ma50_pct": -1.0027521234909686, "volatility_20d_pct": 45.27217456851028, "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": "WLK_CFD.US", "name": "WESTLAKE CHEMICAL CORP", "sector": "", "last_price": 104.3, "change_1d_pct": 4.143784323514721, "distance_from_ma200_pct": 31.068351579857435, "distance_from_ma50_pct": 19.30553426688293, "volatility_20d_pct": 108.2661494522795, "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": "UHAL_CFD.US", "name": "", "sector": "", "last_price": 51.92, "change_1d_pct": 3.591380686352763, "distance_from_ma200_pct": -8.283540234149012, "distance_from_ma50_pct": -2.469446562949662, "volatility_20d_pct": 85.7198981925985, "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": "IVZ_CFD.US", "name": "", "sector": "", "last_price": 25.71, "change_1d_pct": -3.9237668161435035, "distance_from_ma200_pct": 14.96077427489979, "distance_from_ma50_pct": -5.63821743949614, "volatility_20d_pct": 82.56488833349962, "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": "JLL_CFD.US", "name": "", "sector": "", "last_price": 314.8, "change_1d_pct": -1.4031571034828216, "distance_from_ma200_pct": 6.188624459274572, "distance_from_ma50_pct": -6.114319832842929, "volatility_20d_pct": 109.52287995519126, "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": "ADS_CFD.DE",
"selection_reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)",
"mean_reversion_score": 85
},
{
"symbol": "AML_CFD.UK",
"selection_reason": "Large negative daily change (-29.31%) and below MA200 (-41.08%)",
"mean_reversion_score": 90
},
{
"symbol": "EZJ_CFD.UK",
"selection_reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative daily change (-10.96%) and below MA200 (-19.31%)",
"mean_reversion_score": 75
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "Negative daily change (-12.67%) and below MA200 (-28.03%)",
"mean_reversion_score": 70
}
],
"rejected_common_reasons": [
"Positive daily change",
"Above MA200",
"Insufficient mean-reversion indicators"
]
}#806 • openrouter • deepseek/deepseek-chat • 2026-03-04T11:57:00.362213+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": "EU", "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": "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": "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.855, "unrealized_pnl": 22.27096338788619, "opened_at": "2026-02-20T17:33:34.647633+00:00"}, {"symbol": "AML_CFD.UK", "qty": 0.0, "avg_price": 59.0, "last_price": 55.65, "unrealized_pnl": 0.0, "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": "BIG_CFD.FR", "qty": 6622.516556291391, "avg_price": 0.453, "last_price": 0.453, "unrealized_pnl": 0.0, "opened_at": "2026-02-22T17:33:48.338981+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": "BYW6_CFD.DE", "qty": 998.3361064891848, "avg_price": 3.005, "last_price": 3.013, "unrealized_pnl": 7.9866888519134855, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "CCC_CFD.UK", "qty": 1.007387508394896, "avg_price": 2978.0, "last_price": 2978.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-25T17:57:28.313088+00:00"}, {"symbol": "CCL_CFD.UK", "qty": 1.3786764705882353, "avg_price": 2176.0, "last_price": 2176.0, "unrealized_pnl": 0.0, "opened_at": "2026-03-02T10:31:26.559356+00:00"}, {"symbol": "CRDA_CFD.UK", "qty": 1.0305736860185504, "avg_price": 2911.0, "last_price": 2911.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": 57.2, "unrealized_pnl": 620.2531645569624, "opened_at": "2026-02-19T17:33:27.020111+00:00"}, {"symbol": "EZJ_CFD.UK", "qty": 6.328446366417045, "avg_price": 474.05, "last_price": 437.5, "unrealized_pnl": -231.30471469254306, "opened_at": "2026-02-22T09:32:59.506254+00:00"}, {"symbol": "FLO_CFD.US", "qty": 303.7974683544304, "avg_price": 9.875, "last_price": 9.245000000000001, "unrealized_pnl": -191.39240506329085, "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.4, "unrealized_pnl": 145.63106796116503, "opened_at": "2026-02-24T18:14:37.115518+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": "OCDO_CFD.UK", "qty": 13.824884792626728, "avg_price": 217.0, "last_price": 217.0, "unrealized_pnl": 0.0, "opened_at": "2026-02-19T00:47:27.070066+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": 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": "TRN_CFD.UK", "qty": 16.260162601626018, "avg_price": 184.5, "last_price": 184.5, "unrealized_pnl": 0.0, "opened_at": "2026-03-03T18:03:34.247734+00:00"}, {"symbol": "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": "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": "ADS_CFD.DE", "mean_reversion_score": 85, "selection_reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)"}, {"symbol": "AML_CFD.UK", "mean_reversion_score": 90, "selection_reason": "Large negative daily change (-29.31%) and below MA200 (-41.08%)"}, {"symbol": "EZJ_CFD.UK", "mean_reversion_score": 80, "selection_reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)"}, {"symbol": "PAGE_CFD.UK", "mean_reversion_score": 75, "selection_reason": "Significant negative daily change (-10.96%) and below MA200 (-19.31%)"}, {"symbol": "BYIT_CFD.UK", "mean_reversion_score": 70, "selection_reason": "Negative daily change (-12.67%) and below MA200 (-28.03%)"}], "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": "Large negative daily change (-29.31%) and below MA200 (-41.08%)",
"symbol": "AML_CFD.UK",
"position_size": 3000
},
{
"reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)",
"symbol": "ADS_CFD.DE",
"position_size": 3000
}
],
"hold": [
{
"reason": "No clear improvement vs current holdings",
"symbol": "ADJ_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "AIR_CFD.DE"
},
{
"reason": "Positive unrealized PNL",
"symbol": "AMH_CFD.US"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "ATG_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "BIG_CFD.FR"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "BT_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "BYW6_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CCC_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CCL_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CRDA_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "CRWD_CFD.US"
},
{
"reason": "Positive unrealized PNL",
"symbol": "ERA_CFD.FR"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "FRVIA_CFD.FR"
},
{
"reason": "Positive unrealized PNL",
"symbol": "FUTR_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "GRI_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "HIK_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "IEP_CFD.BE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "LXS_CFD.DE"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "OCDO_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "RMV_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "SYNT_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "TRN_CFD.UK"
},
{
"reason": "Positive unrealized PNL",
"symbol": "UKW_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "UTG_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WIZZ_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WKP_CFD.UK"
},
{
"reason": "No clear improvement vs current holdings",
"symbol": "WPP_CFD.UK"
}
],
"sell": [
{
"reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)",
"symbol": "EZJ_CFD.UK"
},
{
"reason": "Negative unrealized PNL and below MA200",
"symbol": "FLO_CFD.US"
}
]
},
"portfolio_rationale": "The portfolio is adjusted to capitalize on mean-reversion opportunities while adhering to the strategy's rules. Two positions with significant negative daily changes and below MA200 are bought, and two positions with negative performance are sold to reallocate capital efficiently. The rest of the positions are held as they show no clear improvement or are already performing well."
}Selection logs
#400 • stage1 • 2026-03-04T11:57:00.359893+00:00
{
"selected_stocks": [
{
"symbol": "ADS_CFD.DE",
"selection_reason": "Significant negative daily change (-8.17%) and below MA200 (-16.77%)",
"mean_reversion_score": 85
},
{
"symbol": "AML_CFD.UK",
"selection_reason": "Large negative daily change (-29.31%) and below MA200 (-41.08%)",
"mean_reversion_score": 90
},
{
"symbol": "EZJ_CFD.UK",
"selection_reason": "Negative daily change (-8.18%) and below MA200 (-10.29%)",
"mean_reversion_score": 80
},
{
"symbol": "PAGE_CFD.UK",
"selection_reason": "Significant negative daily change (-10.96%) and below MA200 (-19.31%)",
"mean_reversion_score": 75
},
{
"symbol": "BYIT_CFD.UK",
"selection_reason": "Negative daily change (-12.67%) and below MA200 (-28.03%)",
"mean_reversion_score": 70
}
],
"rejected_common_reasons": [
"Positive daily change",
"Above MA200",
"Insufficient mean-reversion indicators"
]
}