skills/tail-risk-analyzer/SKILL.md
Quantifies tail risk / fragility for a single ticker using 1-year daily returns. Computes excess kurtosis, skewness, VaR95, max drawdown, and maps to a fragility label (ROBUST/MODERATE/FRAGILE). Use in sector protocol Phase 4b Devil's Advocate (top-3 HOT sectors) and investment protocol Phase 4 Step 3 (per-stock fragility → position sizing).
npx skillsauth add kavi-lin/stock tail-risk-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Provides quantitative fragility evidence for any ticker (stock or ETF). Used by:
python3 skills/tail-risk-analyzer/scripts/tail_risk.py NVDA
python3 skills/tail-risk-analyzer/scripts/tail_risk.py XLK --json-only
python3 skills/tail-risk-analyzer/scripts/tail_risk.py SPY --lookback 2y
{
"ticker": "NVDA",
"generated_at": "ISO8601",
"lookback": "1y",
"excess_kurtosis": "float (> 3 is fat-tailed vs normal)",
"skewness": "float (negative = left-tailed / crash risk)",
"var_95": "float — daily loss exceeded 5% of days (pct)",
"max_drawdown": "float pct",
"ann_vol": "float pct",
"downside_deviation": "float pct",
"tail_risk_score": "0-100 (higher = more fragile)",
"fragility_label": "ROBUST | MODERATE | FRAGILE",
"position_multiplier": "1.0 | 0.75 | 0.5 — applied to base position size"
}
Score is weighted: excess_kurt (30%) + |neg skew| (20%) + VaR95 (20%) + max_DD (20%) + vol (10%).
tail_risk_score < 35 → ROBUST → multiplier 1.035 ≤ score < 65 → MODERATE → multiplier 0.75score ≥ 65 → FRAGILE → multiplier 0.5development
# earnings-analyst — 個股財報深度分析 > **Trigger**: `財報 [TICKER]` > **Version**: V1.0 > **Data Source**: FMP HTTP REST(`$FMP_API_KEY`) ## 目的 針對單一個股產出**深度財報分析報告**(逐季趨勢、品質指標、估值、分析師共識),涵蓋 sector V1.4 與 `分析 [TICKER]` 既有 protocol **沒有**的「財報層級」深潛內容。 ## 與既有 skill 的差異 | Skill | 重點 | 觸發 | |---|---|---| | `us-stock-analysis` | 估值/技術/情緒 snapshot(yfinance + FMP partial) | Phase 2 fundamentals lane | | `earnings-valuation-forecaster` | 12M 目標價 3×3 敏感度 | ad-hoc / earnings 前 14 天 | | `earnings-trade-analyzer` |
testing
Daily Top N hot themes × Top M short-term movers per theme. Combines theme-detector heat scoring (medium-term) with short-term-target predictions (1d/5d/15d) into a "Tactical Opportunity Radar" recommendation log. Tags concentration WARNING when ≥2 picks share theme. Records FRED + market regime snapshot at recommendation time for future backtest cross-tabs. Standalone — not auto-wired into investment_protocol. Use for daily watchlist refresh / Dashboard推薦面板feed / batch screening across hot themes.
testing
Short-term (1d / 5d / 15d) directional projection for a US stock — "Tactical Opportunity Radar". Outputs target range + confidence breakdown + benchmark-relative alpha + trading meta (stop / position size hint / exit trigger). Each horizon uses independent weights from config/weights.yaml. Refuses to project when source data is stale (returns insufficient_data with reasons). Hard-clamped to prevent cold-start absurd predictions. Use when caller wants short-term directional bias on a specific ticker, NOT for long-term valuation (use earnings-valuation-forecaster for 12-month). Standalone — not auto-wired into investment_protocol.
tools
Shared Finnhub API client used by other skills. Provides rate-limited (60/min), cached, retry-aware access to 17 Finnhub endpoints covering quotes, OHLCV, fundamentals, earnings calendar, earnings surprises, insider transactions, recommendation history, price targets, upgrades/downgrades, dividends, splits, IPOs, and SEC filings. Also exports adapters that normalize Finnhub raw responses into FMP-compatible shapes so that downstream code can swap providers without changing call sites. Use when another skill needs Finnhub data or when building a unified provider layer.