# Finwiz Output Standards

> Standards for all reports and outputs generated by FinWiz agents, including HTML structure, French language requirements, emoji usage, and final reporter patterns. Use when creating reports, formatting outputs, or implementing final reporter agents.

- Skill: `majiayu000/finwiz-output-standards` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/finwiz-output-standards`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/finwiz-output-standards/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/finwiz-output-standards

---


# FinWiz Output Standards

Standards for all reports and outputs generated by FinWiz agents, ensuring professional, consistent, and well-structured deliverables.

## General Principles

Primary output is a comprehensive HTML report that is:

- **Well-structured** and easy to read
- **Contains all necessary information** for decision-making
- **Professional and consistent** across all reports

## Critical Rules

### ❌ DO NOT

- Return raw API responses as task result
- Include placeholder text like 'TODO' or 'TBD'
- Include debugging information or error traces
- Create malformed or incomplete HTML
- Mix languages within the same report

### ✅ ALWAYS

- Ensure output is single, complete, well-formed HTML document
- Use UTF-8 encoding for emoji and French character support
- Validate HTML structure before returning
- Include proper metadata and styling
- Use French for all user-facing content

## HTML Structure Requirements

### Required Document Structure

```html
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <title>Rapport FinWiz - [Asset Name]</title>
    <style>
        /* Professional CSS styling */
        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            line-height: 1.6;
            max-width: 1200px;
            margin: 0 auto;
            padding: 20px;
            background-color: #f5f5f5;
        }
        h1 { color: #2c3e50; border-bottom: 3px solid #3498db; }
        .grade-a-plus { color: #27ae60; font-weight: bold; }
        .grade-d { color: #e74c3c; }
    </style>
</head>
<body>
    <h1>📊 Rapport d'Analyse FinWiz</h1>
    <p><strong>Date:</strong> 2025-03-10</p>
    <p><strong>Actif:</strong> Apple Inc. (AAPL)</p>
    
    <!-- Content sections -->
</body>
</html>
```

### Content Structure Requirements

- **Proper heading hierarchy** (h1-h6)
- **Semantic elements** (sections, tables, lists)
- **Clear title and publication date**
- **Tables for comparative data**
- **Lists for sequential information**
- **Emphasis (bold/italic) for important points**

### Prohibited Elements

- Raw JSON data or API responses
- Debugging information or stack traces
- Placeholder text or TODOs
- Unclosed or malformed HTML tags
- Mixed language content

## Strategic Emoji Usage

Use emojis strategically to enhance readability and highlight key information:

| Emoji | Usage | Example |
|-------|-------|---------|
| 📈 | Growth trends, positive performance | "📈 Croissance de 25% sur 12 mois" |
| 📉 | Decline trends, negative performance | "📉 Baisse de 15% ce trimestre" |
| 🔍 | Analysis insights, detailed examination | "🔍 Analyse technique approfondie" |
| 🚀 | High-growth potential, opportunities | "🚀 Potentiel de croissance élevé" |
| ⚠️ | Risk indicators, warnings | "⚠️ Risque de volatilité élevée" |
| 💰 | Financial metrics, monetary values | "💰 Revenus: 365M€" |
| 📊 | Data visualization, statistics | "📊 Métriques de performance" |
| ✅ | Positive recommendation, approval | "✅ Recommandation: ACHETER" |
| ❌ | Negative recommendation, rejection | "❌ Recommandation: VENDRE" |
| 🎯 | Target prices, goals | "🎯 Prix cible: 180€" |
| 💎 | A+ opportunities, exceptional quality | "💎 Opportunité A+ identifiée" |

## French Language Standards

### Required French Output

All user-facing content must be in French with:

- **Professional financial terminology**
- **Clear, actionable recommendations**
- **Proper accents and special characters**
- **Consistent vocabulary throughout**

### Standard Financial Terms

| English | French | Usage |
|---------|--------|-------|
| Recommendation | Recommandation | "Recommandation: ACHETER" |
| Buy | Acheter | "Recommandation d'achat" |
| Hold/Keep | Conserver | "Conserver en portefeuille" |
| Sell | Vendre | "Recommandation de vente" |
| Risk | Risque | "Évaluation des risques" |
| Return | Rendement | "Rendement annualisé" |
| Portfolio | Portefeuille | "Analyse de portefeuille" |
| Analysis | Analyse | "Analyse fondamentale" |
| Opportunity | Opportunité | "Opportunité d'investissement" |

## Standard Report Structure

### Required Sections

1. **Résumé Exécutif** (Executive Summary)
   - Key findings and main conclusions
   - Primary recommendation with rationale
   - Risk highlights and considerations

2. **Analyse Détaillée** (Detailed Analysis)
   - Fundamental analysis with metrics
   - Technical analysis with indicators
   - Risk assessment with scoring

3. **Recommandations** (Recommendations)
   - Specific actionable recommendations
   - Price targets with timeframes
   - Implementation timeline

4. **Sources de Données** (Data Sources)
   - Citations with URLs when available
   - As-of dates for all data points
   - Confidence levels and limitations

### Example Report Structure

```html
<section>
    <h2>📋 Résumé Exécutif</h2>
    <p class="grade-a-plus">✅ <strong>ACHETER</strong> - Grade A+</p>
    <p>Prix cible: 180,00 € (+20% de potentiel)</p>
    <p>Horizon: 12 mois</p>
</section>

<section>
    <h2>📊 Analyse Détaillée</h2>
    <h3>Analyse Fondamentale</h3>
    <table>
        <tr><th>Métrique</th><th>Valeur</th><th>Évaluation</th></tr>
        <tr><td>P/E Ratio</td><td>25.4</td><td>Raisonnable</td></tr>
    </table>
</section>

<section>
    <h2>🎯 Recommandations</h2>
    <ul>
        <li><strong>Action immédiate:</strong> Acheter jusqu'à 150€</li>
        <li><strong>Objectif:</strong> Prix cible 180€ d'ici 12 mois</li>
        <li><strong>Stop-loss:</strong> 130€ (-13%)</li>
    </ul>
</section>
```

## Final Reporter Pattern

### Agent Configuration

```python
@final_reporter  # Enforces empty tools list
@agent
def investment_reporter(self) -> Agent:
    return Agent(
        config=self.agents_config['investment_reporter'],
        tools=[],  # MUST be empty - no external API calls
        reasoning=False,  # Fast consolidation, no complex reasoning
        verbose=True
    )
```

### Implementation Pattern

```python
@task
def generate_final_report(self) -> Task:
    return Task(
        description="""
        Consolidate all analysis findings into a comprehensive French HTML report.
        
        CRITICAL REQUIREMENTS:
        - Output MUST be complete, well-formed HTML
        - Use French for all user-facing content
        - Include strategic emoji usage for key points
        - Follow standard report structure (Résumé, Analyse, Recommandations)
        - NO raw data, debugging info, or placeholders
        """,
        expected_output="Complete HTML report in French with professional formatting",
        agent=self.investment_reporter(),
        async_execution=False  # Final task must be synchronous
    )
```

## Quality Assurance Checklist

Before returning any HTML output:

- [ ] **HTML Validation**: Well-formed with correct structure
- [ ] **UTF-8 Encoding**: Supports emojis and French characters
- [ ] **Completeness**: All required sections present
- [ ] **Accuracy**: All data verified (tickers, figures, dates)
- [ ] **French Language**: All user-facing text in French
- [ ] **No Placeholders**: No TODO, TBD, or debugging text
- [ ] **Professional Formatting**: Clean, readable layout
- [ ] **Strategic Emojis**: Used appropriately, not excessively
- [ ] **Data Sources**: All sources cited with dates
- [ ] **Actionable Content**: Clear recommendations provided

## CSS Styling Standards

### Professional Styling Template

```css
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background-color: #f5f5f5;
}

h1 {
    color: #2c3e50;
    border-bottom: 3px solid #3498db;
    padding-bottom: 10px;
}

h2 {
    color: #34495e;
    margin-top: 30px;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    background-color: white;
}

th {
    background-color: #3498db;
    color: white;
    padding: 12px;
    text-align: left;
}

td {
    padding: 10px;
    border-bottom: 1px solid #ddd;
}

.grade-a-plus { color: #27ae60; font-weight: bold; }
.grade-a { color: #2ecc71; }
.grade-b { color: #f39c12; }
.grade-c { color: #e67e22; }
.grade-d { color: #e74c3c; }
.grade-f { color: #c0392b; font-weight: bold; }
```

Remember: **The output is the product**. A well-formatted, professional report reflects the quality of the entire FinWiz analysis.
