Quantified version of David Tepper's 2009 (+132%) and 2020 (+82%) panic-buy playbook. Detects whether current conditions match Tepper's signal: VIX ≥ 35 AND FearScore ≥ 80 AND quality filter (large-cap, positive margin). Only fires during genuine market panics — the rest of the time it returns the "waiting" state, which is ~80% of all days per Tepper's own framework. The API reuses our existing FearScore module, so the signal is directly comparable to the multi-indicator panic index. Triggers: "is this a Tepper buy signal", "panic-buy detector SPY", "should I buy the panic", "Tepper style entry check", "are we at a panic bottom", "is VIX 35+ and fear 80+", "historical bottom signal today"
71
88%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
David Tepper made two historic panic-bottom calls: March 2009 ("I'm betting on the Fed") and March 2020 (COVID bottom). Both had identical fingerprints: VIX spiked > 40, multi-indicator fear was maxed, and Tepper loaded quality large-caps (banks 2009, SPY/QQQ 2020).
This skill mechanizes that fingerprint.
Three gates must all pass for the signal to arm:
When all three pass → signal: true, level: armed.
| Level | Condition | Prescription |
|---|---|---|
armed | VIX ≥ 35 AND Fear ≥ 80 | 🔥 Historic-level buying moment — scale into SPY/QQQ/DIA |
watch | VIX ≥ 30 OR Fear ≥ 70 | ⚡ Approaching — prepare capital, don't act yet |
near | VIX ≥ 25 OR Fear ≥ 60 | Lukewarm — far from Tepper-level panic |
cold | below | Calm — the patience state, which is most of the time |
Tepper's own framework includes "do nothing" as a first-class state. Most
calls to this endpoint will return cold — that's by design. The value isn't
in the signal firing often, it's in never missing a VIX > 40 event.
alphagbm-fear-score gives the raw panic index. alphagbm-vix-status gives
the VIX tier. This skill combines them with Tepper's specific criteria
(quality filter + threshold rules) to produce a single yes/no decision.
Input:
ticker (optional, default SPY) — the quality-filter applies to this tickerOutput:
vix, fear_score — the two input signalsvix_pass, fear_pass, quality_pass — per-gate booleanssignal — final booleanlevel — armed / watch / near / coldrecommended_etfs — ["SPY", "QQQ", "DIA"] (quality large-cap universe)advice_zh, advice_en — natural-language prescriptionis this a Tepper buy signal → call with default SPYpanic-buy check on QQQ → substitute QQQshould I buy the panic now → returns cold if calm → "wait, this is the patience state"am I missing a historic bottom → the only time this fires, the answer is "yes, don't miss it"Tepper-style entry for DIA → quality large-cap → passes quality filterMock data in mock-data/tepper-signal/ — samples for armed (VIX 42, Fear 85) and cold (VIX 17, Fear 35).
POST /api/masters/tepper-signal
Content-Type: application/jsonRequest body:
{"ticker": "SPY"}Response shape:
{
"success": true,
"ticker": "SPY",
"vix": 42.0,
"fear_score": 85,
"vix_pass": true,
"fear_pass": true,
"quality_pass": true,
"signal": true,
"level": "armed",
"recommended_etfs": ["SPY", "QQQ", "DIA"],
"advice_zh": "信号激活 — VIX 42.0、FearScore 85。按 Tepper 2009/2020 规则,分批买入大盘质量 ETF (SPY, QQQ, DIA)。不要买概念股或小盘股。",
"advice_en": "Signal armed — VIX 42.0, FearScore 85. Per Tepper 2009/2020, scale into quality large-cap ETFs (SPY, QQQ, DIA). No memes, no small caps.",
"timestamp": "2026-04-24T08:00:00"
}Pricing: 1 option-analysis credit per call; 5-min cache per ticker (cache hits free).
| Skill | Relevance |
|---|---|
| alphagbm-fear-score | The underlying panic index — component of this signal |
| alphagbm-vix-status | Standalone VIX tier — complementary read |
| alphagbm-duan-analysis | Duan's VIX ≥ 35 panic-buy philosophy on a specific ticker |
Powered by AlphaGBM — Real-data options & research intelligence. 10K+ users.
6ecea74
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.