Signal Report · US

UPST HOLD

Composite decision report grounded in 1-XH strategy signals and a completed multi-agent debate (agents-3node-v1), generated at 2026-10-26 10:51.

Final Agent Decision

Action
HOLD
Weight
0%
Confidence
35%
Variant
xiaohan_gogo_v2

Reasons

Bull Case (Analyst)

- Technical signal is a fresh `buy` (score 0.60, xiaohan_gogo_v2) with `gogo_detail` showing synchronized bottoms across 1h/2h/3h/4h — a multi-timeframe turn, not a single-bar blip. Close 23.01 sits just below ema_low_fast 23.30 and ema_high_slow 23.79, so a reclaim of the fast EMA is the near-term trigger.
- The cross-sectional rank is driven by `xh_gogo_score` at +2.15 — by far the largest single lifter — which corroborates (rather than contradicts) the technical buy. `beta_60d` (+1.06) adds high-beta torque in a BULL catalog regime (34 factors, 0 direction-flips), where higher composite z is rewarded.
- Fundamentals/news flow is supportive: preliminary September originations of $1.38B, Q2 2026 revenue $364.7M vs. $347.2M estimate, Needham reiterating its rating on strong loan growth, and the Upstart Macro Index ticking *down* to 1.49 (easing credit stress) with the stock up 6% on that print.
- Forward estimate momentum is positive: consensus EPS of $0.60 for the current quarter implies +15.4% YoY, and the estimate has held steady — no negative revision drift into the Nov 3 print.

Bear Case (Analyst)

- Composite z is only +0.17, rank 114/252 (best 45.2%) — mid-pack, and explicitly **not** in the production basket. The cross-section did not put UPST in the top decile, so the factor case is weak corroboration, not confirmation.
- The draggers are structural, not noise: `close_to_high_60d` (-1.10) says price is far off its 60-day high, `momentum_6m` (-0.86) says the intermediate trend is negative, and `bollinger_b_20d` (-0.83) puts it in the lower band. The lone positive momentum lifter is `momentum_1m` at just +0.13 — a 1-month bounce inside a 6-month downtrend.
- Price action evidence in the bundle is ugly: one item cites a 19.77% weekly drop from $38.24 to $30.68, and the current close of 23.01 is well below both EMAs (23.30 / 23.79) — the "buy" is a bottom-fishing call against a falling structure, and the signal has no confirmed EMA reclaim yet.
- Event risk is immediate and binary: earnings November 3, 2026, days after the signal timestamp. A high-beta (`beta_60d` +1.06) name into a print, with a Sell-side "Hold / cyclicality overshadows growth" stance in the feed, is poor risk/reward for a mid-rank factor score.
- Note the internal tension: the bull case leans on `xh_gogo_score`, which is the same input as the technical signal — that's one piece of evidence counted twice, not two independent confirmations. Strip it out and the remaining factor picture (rank 114/252, three meaningful draggers) is neutral-to-negative.

Devil's Advocate

COUNTER TO BULL:
- The "multi-timeframe synchronized bottoms" is a bottom-fishing pattern by definition — it fires *before* structure confirms. No EMA reclaim yet, close below both EMAs. The trigger you cite is unproven, not evidence.
- `xh_gogo_score` and the `buy` signal are the same input. You're counting one dataset twice and calling it corroboration. Strip the double-count and the "corroboration" collapses.
- `beta_60d` +1.06 is not "torque" — it's amplified downside into a binary Nov 3 print. High beta in a name already 19.77% down in a week is a liability, not a feature.
- "BULL catalog regime, 34 factors, 0 direction-flips" — a regime label with zero flips is suspiciously clean. Either the regime detector is lagging or the sample is too short to have seen a flip. You're treating regime stability as edge when it may just be untested.
- Fundamentals are backward-looking: September originations, Q2 revenue beat, Needham reiteration. None of that is priced *after* Nov 3. You're citing pre-print data as if it de-risks the print.
- "Estimate held steady, no negative revision drift" — steady is not rising. Flat consensus into a high-beta print is the absence of a catalyst, not a positive.
- Upstart Macro Index "ticking down to 1.49" — one print, direction unconfirmed, and 1.49 is still elevated. Calling easing credit stress off a single tick is narrative-fitting.
- Close 23.01 vs. a cited $30.68 recent level implies the stock is already well through the "bottom" you're buying. Where's the evidence the synchronized bottoms aren't just synchronized lower highs forming?

COUNTER TO BEAR:
- Rank 114/252 and "not in production basket" is a threshold argument, not a directional one. Mid-pack composite with a fresh technical turn is exactly the setup that *enters* the basket on the next rebalance — you're penalizing it for being early.
- The draggers (`close_to_high_60d`, `momentum_6m`, `bollinger_b_20d`) are all *mean-reversion-friendly* when negative. You're reading oversold as bearish while simultaneously dismissing the bottom signal — you can't have it both ways.
- `momentum_1m` +0.13 being "just a bounce" is an assertion. If the 1m turn is the leading edge of the 6m reversal, you've labeled the signal as noise precisely when it matters.
- The 19.77% weekly drop cited ($38.24 → $30.68) doesn't reconcile with a 23.01 close — either the bundle has stale/conflicting price data or the drop is older than implied. You're leaning on a number you haven't validated.
- "Binary event risk into Nov 3" cuts both ways: a high-beta name with a fresh multi-TF turn and positive estimate momentum is exactly what squeezes on a beat. You've assumed the print is downside without evidence.
- Sell-side "Hold / cyclicality overshadows growth" is a consensus stance — consensus holds are the *least* informative signal and frequently mark inflection points. Citing it as bearish evidence is weak.
- You dismiss `xh_gogo_score` as double-counted (fair) but then lean on the *absence* of top-decile rank as if the cross-section is authoritative — the same cross-section you just said is only weakly corroborating.

Technical Signal (1-XH)

action
buy
score
0.60
variant
xiaohan_gogo_v2
timestamp
2026-10-26T15:30:00-04:00
close
23.01
ema_low_fast
23.3
ema_high_slow
23.79
gogo_score
0.6
gogo_detail
1h_bottom,2h_bottom,3h_bottom,4h_bottom

📈 Backtest Track Record xiaohan_gogo_v2 · signals simulated over available history (~3-month 30-min window, accumulating daily)

Trades
2
Win rate
50%
Avg / trade
+4.3%
Total (compounded)
+9%
best / worst
+8.8% / -0.1%
avg holding
34.9 days
open position
yes — marked-to-market -0.1%
Entry Exit Entry Exit Return Exit reason
2026-10-01 open 23.03 23.01 -0.1% open_position_mark_to_market
2026-03-16 2026-04-30 28.68 31.20 +8.8% adaptive_breakdown_1h

复盘 = each past xiaohan_gogo_v2 buy signal simulated: enter next bar, manage adds / adaptive sells / −25% hard stop. Demonstration only, not investment advice.

News & social (7 items)