tradermonty/signal-postmortem

Enregistrer et analyser les résultats des transactions générées par le pipeline d'edge et d'autres compétences. Suivre les faux positifs, les opportunités manquées et les inadéquations de régime. Réinjecter les résultats dans les poids de l'agrégateur de signaux et le backlog d'amélioration des compétences.

Qu'est-ce que signal-postmortem ?

Signal Postmortem est une compétence conçue pour enregistrer et analyser les résultats des signaux de trading générés par le pipeline d'edge, les screeners et d'autres compétences. Elle compare la direction prédite par le signal aux rendements réalisés sur 5 et 20 jours, classifie les résultats en quatre catégories (vrai positif, faux positif, opportunité manquée, inadéquation de régime), et génère des retours pour ajuster les poids de l'agrégateur de signaux (edge-signal-aggregator) et pour alimenter un backlog d'amélioration des compétences. Cette compétence est utile pour auditer la qualité des signaux, identifier les schémas de faux positifs systématiques, calibrer la confiance des signaux en fonction des régimes de marché, et boucler la boucle de rétroaction pour améliorer continuellement le pipeline de trading. Elle supporte l'entrée de signaux au format JSON et produit des enregistrements de post-mortem, des suggestions d'ajustement de poids, et des entrées de backlog au format YAML. Son utilisation est recommandée après la clôture d'une transaction, lors de revues hebdomadaires ou mensuelles, et pour générer des retours exploitables pour l'amélioration des compétences.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tradermonty/claude-trading-skills/tree/main/skills/signal-postmortem

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Signal Postmortem

Aperçu

Signal Postmortem enregistre et analyse les résultats des signaux de trading générés par le pipeline d'edge, les screeners et d'autres compétences. Il compare la direction prédite par le signal aux rendements réalisés sur 5 et 20 jours, classifie les résultats (vrai positif, faux positif, opportunité manquée, inadéquation de régime) et génère des retours pour les ajustements de poids de l'agrégateur de signaux (edge-signal-aggregator) et des entrées de backlog d'amélioration des compétences.

Quand l'utiliser

  • Après qu'une transaction a été clôturée et que vous souhaitez enregistrer le résultat
  • Lors de la révision d'un lot de signaux ayant atteint leur période de détention (5 ou 20 jours)
  • Pour identifier les schémas de faux positifs systématiques provenant de compétences spécifiques
  • Pour générer des retours d'information pour le calibrage des poids de l'agrégateur de signaux
  • Lors de la constitution d'un backlog d'amélioration des compétences basé sur des métriques de qualité de décision
  • Pour des audits périodiques (hebdomadaires/mensuels) de la qualité des signaux

Prérequis

  • Python 3.9+
  • Clé API FMP (optionnelle, pour récupérer automatiquement les rendements réalisés si non fournis manuellement)
  • Bibliothèque standard + requests pour les appels API
  • Entrée : enregistrements de signaux au format JSON (provenant de l'agrégateur de signaux ou des sorties du screener)

Configuration de la clé API (Optionnelle)

Si vous souhaitez récupérer automatiquement les données de prix pour les calculs de rendement, configurez la clé API FMP :

export FMP_API_KEY=your_api_key_here

Alternativement, passez la clé via la ligne de commande avec --api-key YOUR_KEY. Sans clé API, vous pouvez toujours enregistrer les résultats manuellement en fournissant --exit-price et --exit-date.

Flux de travail

Étape 1 : Préparer les enregistrements de signaux

Rassemblez les enregistrements de signaux clôturés ou arrivés à maturité. Chaque enregistrement doit inclure :

  • signal_id : Identifiant unique
  • ticker : Symbole boursier
  • signal_date : Date de génération du signal
  • predicted_direction : LONG ou SHORT
  • source_skill : Quelle compétence a généré le signal
  • entry_price : Prix à la génération du signal (optionnel, pour substitution manuelle)
# Exemple : Lister les signaux prêts pour le post-mortem (5+ jours)
python3 skills/signal-postmortem/scripts/postmortem_recorder.py \
  --list-ready \
  --signals-dir state/signals/ \
  --min-days 5

Étape 2 : Enregistrer les résultats

Exécutez l'enregistreur de post-mortem pour récupérer les rendements réalisés et classer les résultats.

python3 skills/signal-postmortem/scripts/postmortem_recorder.py \
  --signals-file state/signals/aggregated_signals_2026-03-10.json \
  --holding-periods 5,20 \
  --output-dir reports/

Pour un enregistrement manuel des résultats (lorsque les données de prix sont déjà disponibles) :

python3 skills/signal-postmortem/scripts/postmortem_recorder.py \
  --signal-id sig_aapl_20260310_abc \
  --exit-price 178.50 \
  --exit-date 2026-03-15 \
  --outcome-notes "Clôturé à l'objectif, +3.2% en 5 jours" \
  --output-dir reports/

Étape 3 : Classifier les résultats

L'enregistreur classifie automatiquement chaque signal dans l'une des quatre catégories suivantes :

CatégorieDéfinition
TRUE_POSITIVELa direction prédite correspond au signe du rendement réalisé
FALSE_POSITIVELa direction prédite est opposée au rendement réalisé
MISSED_OPPORTUNITYSignal non pris mais qui aurait été rentable
REGIME_MISMATCHSignal échoué en raison d'un changement de régime de marché

Les règles de classification sont documentées dans references/outcome-classification.md.

Étape 4 : Générer les fichiers de retour

Générez des retours pour les consommateurs en aval :

# Générer des suggestions d'ajustement de poids pour l'agrégateur de signaux
python3 skills/signal-postmortem/scripts/postmortem_analyzer.py \
  --postmortems-dir reports/postmortems/ \
  --generate-weight-feedback \
  --output-dir reports/

# Générer des entrées de backlog d'amélioration des compétences
python3 skills/signal-postmortem/scripts/postmortem_analyzer.py \
  --postmortems-dir reports/postmortems/ \
  --generate-improvement-backlog \
  --output-dir reports/

Étape 5 : Examiner les statistiques récapitulatives

Générez des statistiques globales par compétence, par ticker et par période :

python3 skills/signal-postmortem/scripts/postmortem_analyzer.py \
  --postmortems-dir reports/postmortems/ \
  --summary \
  --group-by skill,month \
  --output-dir reports/

Format de sortie

Enregistrement de post-mortem (JSON)

{
  "schema_version": "1.0",
  "postmortem_id": "pm_sig_aapl_20260310_abc",
  "signal_id": "sig_aapl_20260310_abc",
  "ticker": "AAPL",
  "signal_date": "2026-03-10",
  "source_skill": "edge-signal-aggregator",
  "predicted_direction": "LONG",
  "entry_price": 172.50,
  "realized_returns": {
    "5d": 0.032,
    "20d": 0.058
  },
  "exit_price": 178.50,
  "exit_date": "2026-03-15",
  "holding_days": 5,
  "outcome_category": "TRUE_POSITIVE",
  "regime_at_signal": "RISK_ON",
  "regime_at_exit": "RISK_ON",
  "outcome_notes": "Cassure nette, tenue malgré un léger repli",
  "recorded_at": "2026-03-17T10:30:00Z"
}

Retour sur les poids (JSON)

{
  "schema_version": "1.0",
  "generated_at": "2026-03-17T10:35:00Z",
  "analysis_period": {
    "from": "2026-02-01",
    "to": "2026-03-15"
  },
  "skill_adjustments": [
    {
      "skill": "vcp-screener",
      "current_weight": 1.0,
      "suggested_weight": 0.85,
      "reason": "15% de taux de faux positifs en régime RISK_OFF",
      "sample_size": 42
    }
  ],
  "confidence": "MEDIUM",
  "min_sample_threshold": 20
}

Entrée de backlog d'amélioration des compétences (YAML)

- skill: vcp-screener
  issue_type: false_positive_cluster
  severity: medium
  evidence:
    false_positive_rate: 0.15
    sample_size: 42
    regime_correlation: RISK_OFF
  suggested_action: "Ajouter un filtre de régime ou réduire la confiance du signal en RISK_OFF"
  generated_by: signal-postmortem
  generated_at: "2026-03-17T10:35:00Z"

Rapport récapitulatif (Markdown)

Les rapports sont enregistrés dans reports/ avec des noms de fichiers postmortem_summary_YYYY-MM-DD.md.

Ressources

  • scripts/postmortem_recorder.py -- Enregistre les résultats individuels des signaux
  • scripts/postmortem_analyzer.py -- Génère des retours et des statistiques récapitulatives
  • references/outcome-classification.md -- Règles de classification et cas particuliers
  • references/feedback-integration.md -- Comment intégrer les retours avec les compétences en aval

Principes clés

  1. Attribution honnête -- Chaque résultat est attribué à sa compétence source pour responsabilité
  2. Conscience du régime -- Le contexte de régime est enregistré pour distinguer un échec de compétence d'un changement de régime de marché
  3. Taille d'échantillon minimale -- Les ajustements de poids nécessitent 20+ signaux pour la validité statistique
  4. Boucle de rétroaction fermée -- Les résultats sont réinjectés pour améliorer à la fois l'agrégation des signaux et la qualité des compétences

Individual skills in this repo

This repo contains 14 individual skills — each has its own dedicated page.

tradermonty/backtest-expert

Expert guidance for systematic backtesting of trading strategies. Use when developing, testing, stress-testing, or validating quantitative trading strategies. Covers "beating ideas to death" methodology, parameter robustness testing, slippage modeling, bias prevention, and interpreting backtest results. Applicable when user asks about backtesting, strategy validation, robustness testing, avoiding overfitting, or systematic trading development.

tradermonty/market-environment-analysis

Comprehensive market environment analysis and reporting tool. Analyzes global markets including US, European, Asian markets, forex, commodities, and economic indicators. Provides risk-on/risk-off assessment, sector analysis, and technical indicator interpretation. Triggers on keywords like market analysis, market environment, global markets, trading environment, market conditions, investment climate, market sentiment, forex analysis, stock market analysis, 相場環境, 市場分析, マーケット状況, 投資環境.

tradermonty/market-news-analyst

This skill should be used when analyzing recent market-moving news events and their impact on equity markets and commodities. Use this skill when the user requests analysis of major financial news from the past 10 days, wants to understand market reactions to monetary policy decisions (FOMC, ECB, BOJ), needs assessment of geopolitical events' impact on commodities, or requires comprehensive review of earnings announcements from mega-cap stocks. The skill automatically collects news using WebSearch/WebFetch tools and produces impact-ranked analysis reports. All analysis thinking and output are conducted in English.

tradermonty/options-strategy-advisor

Options trading strategy analysis and simulation tool. Provides theoretical pricing using Black-Scholes model, Greeks calculation, strategy P/L simulation, and risk management guidance. Use when user requests options strategy analysis, covered calls, protective puts, spreads, iron condors, earnings plays, or options risk management. Includes volatility analysis, position sizing, and earnings-based strategy recommendations. Educational focus with practical trade simulation.

tradermonty/portfolio-manager

Comprehensive portfolio analysis using Alpaca MCP Server integration to fetch holdings and positions, then analyze asset allocation, risk metrics, individual stock positions, diversification, and generate rebalancing recommendations. Use when user requests portfolio review, position analysis, risk assessment, performance evaluation, or rebalancing suggestions for their brokerage account.

tradermonty/scenario-analyzer

Skill that analyzes 18-month scenarios from a news headline. Runs the primary analysis with the scenario-analyst agent and obtains a second opinion with the strategy-reviewer agent. Generates a comprehensive English report covering 1st/2nd/3rd-order impacts, recommended stocks, and a critical review. Example: /scenario-analyzer "Fed raises rates by 50bp" Triggers: news analysis, scenario analysis, 18-month outlook, medium-to-long-term investment strategy

tradermonty/sector-analyst

This skill should be used when analyzing sector rotation patterns and market cycle positioning. It fetches sector uptrend data from CSV (no API key required) and optionally accepts chart images for supplementary analysis. Use this skill when the user requests sector rotation analysis, cyclical vs defensive assessment, overbought/oversold identification, or market cycle phase estimation. All analysis and output are conducted in English.

tradermonty/skill-designer

Design new Claude skills from structured idea specifications. Use when the skill auto-generation pipeline needs to produce a Claude CLI prompt that creates a complete skill directory (SKILL.md, references, scripts, tests) following repository conventions.

tradermonty/skill-idea-miner

Mine Claude Code session logs for skill idea candidates. Use when running the weekly skill generation pipeline to extract, score, and backlog new skill ideas from recent coding sessions.

tradermonty/theme-detector

Detect and analyze trending market themes across sectors. Use when user asks about current market themes, trending sectors, sector rotation, thematic investing, what themes are hot or cold, or wants to identify bullish and bearish market narratives with lifecycle analysis.

tradermonty/uptrend-analyzer

Analyzes market breadth using Monty's Uptrend Ratio Dashboard data to diagnose the current market environment. Generates a 0-100 composite score from 5 components (breadth, sector participation, rotation, momentum, historical context). Use when asking about market breadth, uptrend ratios, or whether the market environment supports equity exposure. No API key required.

tradermonty/us-stock-analysis

Comprehensive US stock analysis including fundamental analysis (financial metrics, business quality, valuation), technical analysis (indicators, chart patterns, support/resistance), stock comparisons, and investment report generation. Use when user requests analysis of US stock tickers (e.g., "analyze AAPL", "compare TSLA vs NVDA", "give me a report on Microsoft"), evaluation of financial metrics, technical chart analysis, or investment recommendations for American stocks.

tradermonty/value-dividend-screener

Screen US stocks for high-quality dividend opportunities combining value characteristics (P/E ratio under 20, P/B ratio under 2), attractive yields (3% or higher), and consistent growth (dividend/revenue/EPS trending up over 3 years). Supports two-stage screening using FINVIZ Elite API for efficient pre-filtering followed by FMP API for detailed analysis. Use when user requests dividend stock screening, income portfolio ideas, or quality value stocks with strong fundamentals.

tradermonty/vcp-screener

Screen S&P 500 stocks for Mark Minervini's Volatility Contraction Pattern (VCP) and detect historical VCPs in a single ticker's price path. Identifies Stage 2 uptrend stocks forming tight bases with contracting volatility near breakout pivot points; in historical single-ticker mode walks a multi-year history and emits every VCP that formed with forward-outcome stats (breakout / stop-hit / timeout). Use when user requests VCP screening, Minervini-style setups, tight base patterns, volatility contraction breakout candidates, Stage 2 momentum stock scanning, or historical VCP pattern study on a specific ticker (e.g. FIX, TSLA).

Skills associés