ARM — Arm Holdings plc

Report date: 2026-05-26  |  Sector: Technology  |  Last price: $306.51  |  Horizon: 30d  |  Generated: 2026-05-26T07:03:21.175926Z

Forecast summary

Ensemble point -4.57%
80% CI [-19.46%, +14.86%]
95% CI [-25.83%, +27.25%]
Method dispersion 0.0489
Beats RW baseline YES
MC drift (annual) -65.95%
MC sigma (annual) 82.20%
MC paths 1000
Bull target (90th pct) +26.74% -> $388.46
Base target (50th) -11.04% -> $272.67
Bear target (10th pct) -38.29% -> $189.16
Macro regime risk_on_growth
10y yield 4.56%
3m yield 3.59%
Yield-curve slope +0.97%
VIX level 16.59
VIX z-score (252d) -0.48
Sector ETF XLK
Sector relative (90d) +167.12%

Forecast plot (interactive)

Realised volatility

Yang-Zhang annualized (60d) 82.20%
Close-to-close annualized (60d) 90.72%

Per-method comparison

MethodWeightPoint80% lo80% hi95% lo95% hi
linear 25.0% -7.55% -11.23% -3.89% -12.81% -1.88%
monte_carlo 25.0% -11.04% -38.29% +26.74% -49.51% +51.23%
ar1 25.0% +0.31% -4.55% +5.42% -7.02% +8.23%
random_walk 25.0% +0.00% -23.76% +31.17% -33.96% +51.43%

Factor contributions (interactive waterfall)

Factor contribution table

FactorLoadingTicker valueContribution
value_score +0.0495 -3.0000 -0.1484
quality_score +0.0192 -0.3046 -0.0059
momentum_score +0.0286 +3.0000 +0.0858
lowvol_score +0.0173 -3.0000 -0.0519
revisions_score +0.0236 +1.7850 +0.0422
news_activity_score +0.0402 +0.0783 +0.0031
(intercept) - - -0.0005

Factor decay over horizon

Factor IC over time

Per-factor IC backtest summary

FactorMean ICICIR% positiveCumulative attributionn periods
value_score +0.2563 +2.690 100.0% +0.5383 252
quality_score +0.1105 +1.096 86.5% +0.2401 252
momentum_score +0.1428 +1.354 92.5% +0.2460 252
lowvol_score +0.0878 +0.887 82.1% +0.1870 252
revisions_score +0.1375 +1.319 88.9% +0.2738 252
news_activity_score +0.3540 +3.832 100.0% +1.0893 252

Snapshot — fundamentals + technical

Market cap $326.13B
P/E (trailing) 356.4
P/B 39.4
Forward P/E 100.3
PEG 2.66
Dividend yield -
Beta 3.41
52w high / low $315.00 / $100.02
Distance from 52w high -2.70%
Cross-sectional rank 90 / 92 bottom decile
Panel source (trained model: 2026-05-26 (0d old), universe_size=92, lookback_days=252)
RSI(14) 76.6
SMA50 / SMA200 $182.05 / $147.07
ATR(14) $19.13
Avg volume (20d) 12.04M
Profit margin 18.37%
ROE 11.95%
Revenue growth (YoY) +20.10%
Earnings growth (YoY) +45.70%
Debt/Equity 5.2
Current ratio 6.00
Short ratio 1.87

Forecast accuracy — walk-forward backtest (60d lookback)

Horizonn predictionsDirectional accuracyMAE (return)RMSE80% CI hit ratePearson(pred, real)
1d 613 51.1% 3.31% 5.03% 82.4% -0.049
30d 584 39.2% 29.03% 35.49% 55.1% -0.161
60d 554 44.4% 38.52% 52.19% 65.2% -0.140

Volume momentum (Granville / CGW / Quong-Soudack)

Composite z +1.422
Active signals 7 of 7
MFI(14) 65.58
CMF(20) +0.2451
OBV z (252d) +3.000
VPT z (252d) +3.000
VW-momentum z +0.904
Volume z (60d) +0.660
Relative volume (vs 20d ADV) 1.16x
CMF z (252d) +1.621

Sector rotation & AI-spillover (v6)

Sector ETF XLK
Rel-return 5d / 20d / 60d +35.90% / +14.79% / +61.59%
Sector mom-z 1m / 3m / 6m +2.27 / +2.72 / +1.64
Rotation phase cyclical
AI-factor beta (60d) +1.136
AI spillover score +0.1044
Risk-off corr regime (60d) 0.33 (>0.6 = risk-off; <0.35 = stock-picking)
Sector breadth (% > SMA50) -
Sector dispersion 20d -

Peer comparison (sector-relative valuation & momentum)

Peer signal
EXPENSIVE LEADER
score -0.33 (9 peers)
P/E percentile
100% (100% cheaper than this)
20d momentum percentile
67% (67% lag this)
Market-cap percentile
56%
Peer set (mcap band 0.2x-5x, same sector)
PLTR AMAT TXN LRCX QCOM KLAC IBM CSCO SNDK
9 peers in Technology (mcap band 0.2x-5x); signal=expensive_leader; score=-0.33
Decision input: cheap_leader → nudge bias one bucket toward LONG; expensive_laggard → nudge toward SHORT; cheap_laggard = value-trap (neutralize); expensive_leader = crowding risk (neutralize). Folded into Claude critique and one-line PM summary.

Multi-timeframe technical analysis (1wk / 1d / 1h)

Per-timeframe verdict (TradingView-style aggregate of 17 indicators: RSI, MACD, BBands, ADX, Stoch, %R, OBV, MFI, CMF, ATR, SMA50/200, EMA9/21, Donchian, price-vs-SMA200). Counts = how many indicators fired BUY / SELL / NEUTRAL; net strength is the weight-sum delta. Crosses (golden/death, MACD signal cross, Donchian breakout) and the SMA200 trend filter carry 1.5x weight.
1wk verdict
NEUTRAL
4 buy / 5 sell / 8 neutral · net -4.0
1d verdict
NEUTRAL
5 buy / 5 sell / 7 neutral · net +0.0
1h verdict
NEUTRAL
4 buy / 5 sell / 8 neutral · net -1.5

1wk NEUTRAL 4/5/8

RSI(14) 80.2
MACD hist +15.6868
Bollinger %b 1.21
ADX(14) 34.2 RISING
ATR % 10.03%
MFI(14) / CMF(20) 73.2 / +0.131
Donchian pos / break 0.96 UP
vs SMA200 BELOW
n_bars141

1d NEUTRAL 5/5/7

RSI(14) 76.6
MACD hist +6.9454
Bollinger %b 1.19
ADX(14) 37.5 RISING
ATR % 6.24%
MFI(14) / CMF(20) 65.6 / +0.245
Donchian pos / break 0.93 UP
vs SMA200 ABOVE
n_bars675

1h NEUTRAL 4/5/8

RSI(14) 79.5
MACD hist +0.0456
Bollinger %b 0.75
ADX(14) 64.6 RISING
ATR % 2.28%
MFI(14) / CMF(20) 83.5 / +0.389
Donchian pos / break 0.87
vs SMA200 ABOVE
n_bars1729

Cross-timeframe confluence

Confluence LONG (0-1) 0.20
Confluence SHORT (0-1) 0.00
Patterns are intentionally selective (Elder triple-screen, daily/hourly divergence, BB-squeeze+breakout, SMA-alignment, MACD/OBV). Most tickers fire 0-2 patterns on any given day. Below: each pattern with its current state (✓ firing / ✗ not firing).
Long patterns
elder_triple
daily_oversold_hourly_bull
bb_squeeze_break_up
sma_align_long
macd_cross_obv
Short patterns
elder_triple
daily_overbought_hourly_div
bb_squeeze_break_dn
sma_align_short
macd_cross_obv

Intraday nowcast — 1h-bar short-horizon (v6)

Next 24h nowcast
+0.46%
over next 24h on 1h bars
80% band
[-12.96%, +15.96%]
n_bars = 1729 · sigma_1h = 0.0228
Direction vs 30d ensemble
AGREES
1h direction: LONG · 30d direction: SHORT
Source: intraday_forecaster_v10_trained_lgbm.
(trained model: 2026-05-26 (0d old), mean_directional_accuracy=0.523, n_features=17) Decision input only -- the 30d ensemble + factor regression remain the primary call. Conflicts surfaced into the Claude critique as horizon_conflict flag when |1h move| > 1%.

Meta-label gate — AFML Ch.3 secondary classifier (v6)

Verdict
meta-label: ABSTAIN
p_take = 0.29 · threshold 0.60
Bias adjustment
meta-label ABSTAIN with p_take=0.29 -- demoting bias one bucket (was sell).
Method: secondary LightGBM trained on (features + primary direction) -> P(primary is right). Source: meta_labeler_v10_trained_lgbm.
(trained model: 2026-05-26 (0d old), roc_auc=0.641, accuracy=0.608, n_train_rows=8,284) When ABSTAIN with p_take < 1-threshold AND bias non-neutral, the bias is demoted one bucket and a meta_abstain flag is added to the critique. See AFML Ch.3.6 (Lopez de Prado 2018).

Implied vol vs realized vol — options-trade gate (v8 W2)

Regime
NEUTRAL
no decisive vol mispricing — delta-1 setup over options
IV / RV ratio
1.02
z-score: n/a (insufficient history)
30d IV vs 30d RV
IV 103.7% (Polygon)
RV 101.8% (yang-zhang)
Provenance: source polygon_options:contracts_call; expiry 2026-06-26 (31d) · strike $305.00 · 1 strike(s) used.
Caveat: 15-min delayed end-of-day quotes; free-tier Polygon (no Greeks, no real-time). Regime is qualitative input only — NOT a numeric factor on the regression.

FMP fundamentals & analyst consensus (v7)

Quality / leverage

ROE 12.0%
ROIC -
FCF yield -
Debt / EBITDA -
Current ratio 6.00

Margins / valuation

Gross margin 97.5%
Operating margin 29.6%
Net margin 18.4%
P/E (TTM) 356.4
EV / EBITDA 280.3

Analyst consensus

Target mean -
Target high / low - / -
Upside vs last close -
Revisions score +0.000

Trade-bias signal — foundation for trade-guidance layer

Bias neutral
Composite z-score -1.876
Conviction 0.7503171127342265
Recommended playbook cash
Suggested position size 0% (no Kelly)
no Kelly: bias=neutral / not a conformal singleton (proxy off) / meta_p_take=0.29 <= 0.5; singleton-proxy: news_activity_z=+0.08 (nonzero=True), wf30d_dir_acc=0.3921232876712329 (>0.55=False)
Macro override risk_on_growth_downweights_bearish
Strategies on bias side
Bear put spread (long 0.35-0.45 delta + short 0.15-0.20 delta, 40-60 DTE)
Long-put for higher gamma on a faster bearish read
Sell at-the-money covered call against any long position
Why this bias
composite_z = -1.88 | bias = sell | conviction = 0.75 | macro_regime = risk_on_growth | override = risk_on_growth_downweights_bearish | ensemble = -4.57% | meta_abstain sell->neutral (p_take=0.29)

Sensitivity (OFAT tornado ±1 sd) and stress scenarios

FactorLoading wiTicker z-value+1 sd impact-1 sd impact
value_score +0.0495 -3.000 +0.0495 -0.0495
news_activity_score +0.0402 +0.078 +0.0402 -0.0402
momentum_score +0.0286 +3.000 +0.0286 -0.0286
revisions_score +0.0236 +1.785 +0.0236 -0.0236
quality_score +0.0192 -0.305 +0.0192 -0.0192
lowvol_score +0.0173 -3.000 +0.0173 -0.0173

Stress scenarios (forecast shift from base point)

ScenarioDescriptionStressed pointDelta vs base
rates_+100bps Yield curve +100bps (lowvol -1sd, value -0.5sd) -11.75% -4.20%
recession_risk_off Recession (momentum -1.5sd, lowvol +1sd, news -1sd) -14.13% -6.58%
quality_flight Quality flight (quality +1sd, revisions +1sd, momentum -0.5sd) -4.69% +2.86%

Multi-source live sentiment (free real-time)

Composite z-score -1.219
Active signals 2 of 3
Sources stocktwits, iv_skew
StockTwits bull 3
StockTwits bear 5
StockTwits net -0.25
Message volume 30
ApeWisdom mentions 0
24h change +0
Reddit rank -
25-delta IV skew +0.1094
IV-skew read bearish

Analyst critique

Agreement with model agree_with_caveats
Confidence 0.55
PM one-liner ARM Technology: quant -4.57%/30d, disp +0.0489, beats RW, macro neutral, 0 catalyst(s).
Sensitivity concern If value_score (the highest-loading factor) is mis-measured by +/-1 stdev, the bias likely flips.

What the model may have missed

Critique flags

Factor contribution methodology — where the numbers come from

Point return formula (linear factor model): r_hat = alpha + sum_i (w_i × f_i) where w_i is the cross-sectional loading for factor i (estimated from the cross-section of US large-cap names) and f_i is the z-scored factor value for this ticker (Grinold-Kahn winsorization at ±3).

Per-factor contribution shown in the waterfall above is exactly w_i × f_i (decimal-return units), so the bars sum (with intercept) to the linear forecast point. The ensemble point combines linear / Monte Carlo / AR(1) / random-walk per per-method-comparison table.

Bias mapping (composite z-score → LONG/NEUTRAL/SHORT): weighted sum of value (1.0), quality (0.7), momentum (1.0), low-vol (0.5), revisions (1.0), news-activity (0.6); thresholds ±1.0 with macro override (risk-off + LONG → reduce to NEUTRAL; risk-on-growth + SHORT → reduce to NEUTRAL). LONG → Playbook A (long-call / call-debit-spread / covered-call); SHORT → Playbook B (long-put / put-debit-spread / bear-call-spread); NEUTRAL → cash.

Sensitivity (one-factor-at-a-time tornado above): impact = w_i × 1sd per factor (MSCI / Two-Sigma Venn convention). Stress scenarios are canned multi-factor shocks (rates +100bps; recession risk-off; quality flight).

Factor decay uses exponential half-life per factor type: catalysts 7d, news 14d, revisions 30d, momentum 45d, value 90d, quality 90d (Tetlock 2007; Cohen-Malloy-Pomorski 2012). The heatmap above shows contribution × exp(-ln(2) × t / half_life) on a 5-day grid.

Factor IC backtest: Spearman rank correlation between each factor's cross-sectional ranking on day t and the realized h-day-forward return, aggregated across the panel (Grinold-Kahn 2000 ch.4 fundamental law of active management). Source for this report: synthetic_panel_252d_100tickers_seed42 (parallel runner).

Placebo audit (v6, GT-Score): GT-score = 0.51 SPURIOUS — setup likely lacks real signal . Computed from 3 seed(s) across placebo kinds: shuffled, gaussian_iid, garch. Method: real directional accuracy = 51.1%; max placebo accuracy = 52.2%; AMG = -0.011. Source: placebo_audit_v6_ar1_runner. Provenance: arXiv 2604.15531 "Spurious Predictability in Financial ML" (Paper #3). Risk-flag spurious_predictability_audit_failed added to narrative.

Catalysts in window (30d)

No catalysts within the forecast window.

Analyst narrative

Bull case

ARM ensemble forecast is -4.57% with 80% band [-19.46%, +14.86%] over 30 days. Positive drivers: momentum_score, revisions_score. 0 catalyst(s) in the window provide event-driven upside potential.

Bear case

Inter-method dispersion (+0.0489) and beats random-walk argue caution. Negative drivers: value_score. Macro regime risk_on_growth historically caps single-name conviction.

Synthesis

Weight the ensemble's -4.57% center against +0.0489 method dispersion. Risk On Growth regime + 0 catalyst(s) define the setup. Treat the 80% band as the working trade-sizing envelope.

Risk flags