alphagbm-tepper-signal
GitHub量化David Tepper恐慌抄底策略。当VIX≥35、恐惧指数≥80且标的为优质大盘股时触发买入信号,否则返回等待状态。用于识别市场极端恐慌底部,辅助判断是否应加仓SPY/QQQ等ETF。
Trigger Scenarios
Install
npx skills add AlphaGBM/skills --skill alphagbm-tepper-signal -g -y
SKILL.md
Frontmatter
{
"name": "alphagbm-tepper-signal",
"globs": [
"mock-data\/tepper-signal\/**"
],
"description": "Quantified version of David Tepper's 2009 (+132%) and 2020 (+82%) panic-buy\nplaybook. Detects whether current conditions match Tepper's signal: VIX ≥ 35\nAND FearScore ≥ 80 AND quality filter (large-cap, positive margin). Only fires\nduring genuine market panics — the rest of the time it returns the \"waiting\"\nstate, which is ~80% of all days per Tepper's own framework. The API reuses\nour existing FearScore module, so the signal is directly comparable to the\nmulti-indicator panic index.\nTriggers: \"is this a Tepper buy signal\", \"panic-buy detector SPY\", \"should I\nbuy the panic\", \"Tepper style entry check\", \"are we at a panic bottom\", \"is\nVIX 35+ and fear 80+\", \"historical bottom signal today\"\n"
}
AlphaGBM Tepper Panic-Buy Signal
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.
The Signal Logic
Three gates must all pass for the signal to arm:
- VIX ≥ 35 — extreme fear, not just elevated
- FearScore ≥ 80 — multi-indicator panic (reuses existing FearScore module: VIX + IV Rank + RSI + Volume + Put/Call + Consec-Down-Days)
- Quality filter — market cap > $50B AND profit margin > 0 (no memes, concept stocks, or pre-revenue small caps)
When all three pass → signal: true, level: armed.
Signal Levels
| 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.
Why This Is a Separate Skill
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.
How to Use
Input:
ticker(optional, defaultSPY) — the quality-filter applies to this ticker
Output:
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 prescription
Example Queries
is this a Tepper buy signal→ call with default SPYpanic-buy check on QQQ→ substitute QQQshould I buy the panic now→ returnscoldif 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 filter
Mock Data
Mock data in mock-data/tepper-signal/ — samples for armed (VIX 42, Fear 85) and cold (VIX 17, Fear 35).
API Endpoint
POST /api/masters/tepper-signal
Content-Type: application/json
Request 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).
Related Skills
| 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.
Version History
- c69fa1b Current 2026-07-05 20:18


