---
name: Finance Report
slug: finance-report-2
category: Data
description: Finance Report generates 8–10 page PDF investment analysis reports for stocks and ETFs. Use it for ticker reports, watchlist analysis, or regenerating reports with charts, portfolio sizing, and sourced sentiment research.
github: "https://github.com/AojdevStudio/Finance-Guru/tree/main/.claude/skills/FinanceReport"
language: Python
stars: 318
forks: 109
install: "npx degit https://github.com/AojdevStudio/Finance-Guru/tree/main/.claude/skills/FinanceReport ~/.claude/skills/FinanceReport"
installs_to: ~/.claude/skills/FinanceReport
source_path: .claude/skills/FinanceReport/SKILL.md
collection_size: 17
category_size: 710
collection_url: "https://dirskills.com/collections/AojdevStudio/Finance-Guru"
added: 2026-09-03T06:03:31.267Z
last_synced: 2026-09-03T06:03:31.267Z
canonical_url: "https://dirskills.com/skills/finance-report-2"
---

# Finance Report

Finance Report generates 8–10 page PDF investment analysis reports for stocks and ETFs. Use it for ticker reports, watchlist analysis, or regenerating reports with charts, portfolio sizing, and sourced sentiment research.

**Install:**

```bash
npx degit https://github.com/AojdevStudio/Finance-Guru/tree/main/.claude/skills/FinanceReport ~/.claude/skills/FinanceReport
```

## README

# FinanceReport

Generate comprehensive 8-10 page PDF investment analysis reports with Finance Guru branding.

## Capability probe

Before routing a report workflow, follow the shared **[paid MCP capability probe](../_shared/PaidMcpCapabilityProbe.md)**. Reports want `perplexity` for sourced sentiment synthesis and `exa` for deep catalyst/risk discovery. If either is absent, announce the `WebSearch`/`WebFetch` fallback and its coverage caveat, or stop if the requested research depth cannot be met.

## Workflow Routing

**When executing a workflow, output this notification directly:**

```
Running the **WorkflowName** workflow from the **FinanceReport** skill...
```

| Workflow | Trigger | File |
|----------|---------|------|
| **GenerateSingleReport** | "generate report for TSLA", "create PDF" | `workflows/GenerateSingleReport.md` |
| **RegenerateBatch** | "regenerate batch", "redo all reports" | `workflows/RegenerateBatch.md` |
| **FullResearchWorkflow** | "full analysis", "thorough research" | `workflows/FullResearchWorkflow.md` |

## Examples

**Example 1: Generate single ticker report**
```
User: "Generate a report for NVDA"
-> Invokes GenerateSingleReport workflow
-> Runs quant tools (risk_metrics, momentum, volatility)
-> Fetches sentiment via Perplexity MCP
-> Builds 8-10 page PDF with VGT-style header
-> Saves to reports/NVDA-analysis-2025-12-18.pdf
```

**Example 2: Regenerate all watchlist reports**
```
User: "Regenerate batch 1 reports"
-> Invokes RegenerateBatch workflow
-> Launches 8 subagents in parallel
-> Each runs FullResearchWorkflow
-> Replaces existing PDFs with improved versions
```

**Example 3: Deep research with full workflow**
```
User: "Do a full analysis on AMZN for the 2026 watchlist"
-> Invokes FullResearchWorkflow
-> Phase 1: Market research (Perplexity/Exa for catalysts, risks)
-> Phase 2: Quant analysis (252-day risk metrics, 90-day momentum)
-> Phase 3: Strategy recommendation (buy/hold/sell, position sizing)
-> Phase 4: Generate comprehensive PDF report
```

## Report Structure (8-10 Pages)

### Cover Page (VGT-Style Header) - UNIFORM STANDARD
**CRITICAL: Every report MUST follow this EXACT format:**

```
┌─────────────────────────────────────────────────────────────┐
│                    FINANCE GURU™                            │
│             Family Office Investment Analysis               │
│  ─────────────────────────────────────────────────────────  │
│                                                             │
│              TICKER - Full Company/Fund Name                │
│           2026 Watchlist Analysis & Investment Report       │
│                                                             │
├─────────────────────────────────────────────────────────────┤
│  Report Date:      December 18, 2025                        │
│  Analyst Team:     Finance Guru Multi-Agent System          │
│                    • Market Researcher (Dr. Aleksandr Petrov)│
│                    • Quant Analyst                          │
│                    • Strategy Advisor                       │
│  Current Price:    $XXX.XX                                  │
│  YTD Performance:  +XX.XX%                                  │
│  Expense Ratio:    0.XX% (ETFs only)                        │
└─────────────────────────────────────────────────────────────┘
```

**UNIFORMITY RULES:**
- Analyst team names MUST be listed on EVERY report
- "Finance Guru Multi-Agent System" header REQUIRED
- Individual analyst names with personas (e.g., Dr. Aleksandr Petrov)
- Same format, same structure, every single time

### Executive Summary
- Investment thesis (200+ words)
- Key findings with bold labels
- Final verdict box (rating, conviction, risk level)

### Quantitative Analysis
- Risk metrics table (VaR, Sharpe, Beta, Alpha)
- Momentum indicators (RSI, MACD, Stochastic)
- Volatility assessment (ATR, Bollinger regime)
- Embedded charts where applicable

**TABLE FORMATTING - CRITICAL:**
- All table cells use Paragraph objects (text wraps, never overflows)
- Column widths explicitly set to fit within 7.5" content area
- Header row: Navy background, white text, bold
- Data rows: Alternating white/light gray backgrounds

### Market Research
- Company overview and positioning
- 2026 catalysts and risks
- Analyst ratings and sentiment
- Perplexity MCP integration

### Portfolio Sizing (NEW)
Shows BOTH percentage AND dollar amount:
```
Recommended Allocation: 2-3%
For $250,000 portfolio:
  - Dollar amount: 2-3% of the $250,000 example portfolio
  - Share count: ~25-38 shares at $200
```

### Strategy Recommendations
- Entry strategy with price targets
- Risk management (stop-loss levels)
- Position management approach

### Sources & Disclaimer - UNIFORM STANDARD
**CRITICAL: Every report MUST end with this EXACT format:**

```
─────────────────────────────────────────────────────────────
DISCLAIMER: This analysis is provided for educational and
informational purposes only. [full disclaimer text]

                Powered by Finance Guru™
              Report Date: December 18, 2025
─────────────────────────────────────────────────────────────
```

**"Powered by Finance Guru™" is REQUIRED on every report.**

## Tool Usage

### ChartKit.py
```bash
uv run python .claude/skills/FinanceReport/tools/ChartKit.py \
  --ticker TSLA \
  --chart-type line \
  --data-source cli
```

### ReportGenerator.py
```bash
uv run python .claude/skills/FinanceReport/tools/ReportGenerator.py \
  --ticker TSLA \
  --portfolio-value 250000
```

## Integration Points

### Perplexity MCP (Sentiment & Research)
```python
# Search for market sentiment
mcp__perplexity__search(query=f"{ticker} stock analysis 2025 catalysts risks")

# Deep reasoning for thesis
mcp__perplexity__reason(query=f"Analyze {ticker} investment thesis for 2026")
```

### Existing Finance Guru CLI Tools
- `src/analysis/risk_metrics_cli.py` - VaR, CVaR, Sharpe, Sortino, Beta, Alpha
- `src/utils/momentum_cli.py` - RSI, MACD, Stochastic, Williams %R
- `src/utils/volatility_cli.py` - ATR, Bollinger Bands, Keltner Channels
- `src/analysis/correlation_cli.py` - Portfolio correlation matrix

### User Profile
Reads portfolio value from `user-profile.yaml` for sizing:
- `investment_portfolio.total_value` = Current portfolio value
- Calculates exact dollar amounts for recommendations

## Reference Files

- **StyleGuide.md** - Brand colors, typography, table styling
- **VisGuide.md** - Chart selection dictionary, labeling standards

---

**Skill Type**: Domain
**Enforcement**: Suggest
**Priority**: High
**Line Count**: < 200 lines
