Compétence Finance Personnelle
Une compétence complète de gestion des finances personnelles avec 75 outils répartis sur 7 extensions pour les workflows bancaires, d'investissement, fiscaux, d'intelligence de marché, de sentiment social et d'analyse financière.
Quand l'utiliser
Activez cette compétence lorsqu'un utilisateur demande :
- Agrégation de comptes — connexion de comptes bancaires, consultation des soldes, synchronisation des transactions
- Valeur nette / flux de trésorerie — calculs de totaux, suivi des dépenses, analyse du taux d'épargne
- Surveillance de portefeuille — positions, allocation, performance, détection de dérive
- Trading — passation/annulation d'ordres, données de marché, recherche d'actifs (Alpaca)
- Optimisation fiscale — estimation de l'impôt, candidats à la récolte de pertes, vérification des ventes fictives, paiements trimestriels
- Traitement de documents fiscaux — analyse des W-2, 1099-B/DIV/INT, K-1, Formulaire 1040, Annexes A-E/SE, Formulaire 8949, Formulaire 6251 (AMT), déclarations d'État
- Intelligence de marché — actualités d'entreprise, dépôts SEC, recommandations d'analystes, données économiques (FRED, BLS), sentiment des nouvelles
- Sentiment social — sentiment StockTwits, analyse de cashtag X/Twitter, symboles tendances, transactions du Congrès
- Suivi des dépenses récurrentes — abonnements, factures, flux de revenus
- Détection d'anomalies — transactions inhabituelles, baisses de solde, frais en double
- Briefings financiers — résumés hebdomadaires/mensuels avec éléments d'action
- Workflows financiers programmés — analyses cron, alertes, rapports
Aperçu de l'architecture
Sept extensions organisées en trois couches :
Couche Intelligence
tax-engine (23 outils) — analyse (15), fiscalité, récolte de pertes, ventes fictives,
lots, calcul Annexe D, impôt d'État, AMT
market-intel (10 outils) — nouvelles, fondamentaux, dépôts SEC, données économiques
social-sentiment (6 outils) — StockTwits, X/Twitter, transactions du Congrès
Adaptateurs Sources de Données
plaid-connect (8) alpaca-trading (10) ibkr-portfolio (9)
Couche Fondation
finance-core (9 outils) — modèles canoniques, stockage, normalisation,
vérifications de politique, détection d'anomalies, briefs
Flux de données : Les adaptateurs récupèrent les données des fournisseurs → finance-core normalise et stocke → la couche intelligence analyse → le moteur de politique valide les actions.
Catalogue d'Outils
finance-core — 9 outils
| Outil | Description | Risque |
|---|---|---|
finance_upsert_snapshot | Stocker un instantané de données financières normalisé (idempotent) | FAIBLE |
finance_get_state | Obtenir l'état financier actuel (comptes, positions, etc.) | LECTURE |
finance_get_transactions | Interroger les transactions avec filtres et pagination | LECTURE |
finance_get_net_worth | Calculer la répartition de la valeur nette par catégorie/compte | LECTURE |
finance_detect_anomalies | Analyser les transactions inhabituelles, baisses de solde, pics de frais | LECTURE |
finance_cash_flow_summary | Revenus vs dépenses par catégorie avec taux d'épargne | LECTURE |
finance_subscription_tracker | Identifier les frais récurrents et modèles d'abonnement | LECTURE |
finance_generate_brief | Créer un résumé financier structuré avec éléments d'action | LECTURE |
finance_policy_check | Valider une action proposée par rapport aux règles de politique | LECTURE |
Schémas complets : references/ext-finance-core.md
plaid-connect — 8 outils
| Outil | Description | Risque |
|---|---|---|
plaid_create_link_token | Initialiser Plaid Link pour la connexion de compte | FAIBLE |
plaid_exchange_token | Échanger un jeton public pour un accès permanent | MOYEN |
plaid_get_accounts | Lister les comptes connectés avec soldes | LECTURE |
plaid_get_transactions | Récupérer les transactions via synchronisation par curseur | LECTURE |
plaid_get_investments | Récupérer les avoirs, titres et transactions d'investissement | LECTURE |
plaid_get_liabilities | Récupérer les données de crédit, prêt étudiant et hypothèque | LECTURE |
plaid_get_recurring | Identifier les flux récurrents entrants/sortants | LECTURE |
plaid_webhook_handler | Traiter les événements webhook Plaid entrants | FAIBLE |
Schémas complets : references/ext-plaid-connect.md
alpaca-trading — 10 outils
| Outil | Description | Risque |
|---|---|---|
alpaca_get_account | Obtenir les soldes du compte, pouvoir d'achat, statut | LECTURE |
alpaca_list_positions | Lister toutes les positions ouvertes | LECTURE |
alpaca_get_position | Obtenir une position unique par symbole | LECTURE |
alpaca_list_orders | Lister les ordres avec filtres de statut/date | LECTURE |
alpaca_create_order | Soumettre un ordre d'achat/vente avec vérifications de sécurité | ÉLEVÉ |
alpaca_cancel_order | Annuler un ordre en attente | MOYEN |
alpaca_portfolio_history | Historique des capitaux propres et P/L | LECTURE |
alpaca_get_assets | Rechercher des actifs négociables par classe/bourse | LECTURE |
alpaca_market_data | Obtenir des instantanés, barres ou cotations pour des symboles | LECTURE |
alpaca_clock | Vérifier si le marché est ouvert, prochaine ouverture/fermeture | LECTURE |
Schémas complets : references/ext-alpaca-trading.md
ibkr-portfolio — 9 outils
| Outil | Description | Risque |
|---|---|---|
ibkr_auth_status | Vérifier le statut d'authentification de la passerelle | LECTURE |
ibkr_tickle | Maintenir la session de passerelle active (~intervalle de 1 min) | FAIBLE |
ibkr_list_accounts | Lister les comptes (doit être appelé en premier) | LECTURE |
ibkr_get_positions | Obtenir les positions pour un compte (paginé) | LECTURE |
ibkr_portfolio_allocation | Allocation par classe d'actifs, secteur, groupe | LECTURE |
ibkr_portfolio_performance | Série temporelle VNI et rendements | LECTURE |
ibkr_search_contracts | Rechercher des contrats par symbole/nom/type | LECTURE |
ibkr_market_snapshot | Données de marché en temps réel pour les contrats | LECTURE |
ibkr_get_orders | Obtenir les ordres en cours actifs | LECTURE |
Schémas complets : references/ext-ibkr-portfolio.md
tax-engine — 23 outils
| Outil | Description | Risque |
|---|---|---|
tax_parse_1099b | Analyser 1099-B (produits, base de coût, ventes fictives) | LECTURE |
tax_parse_1099div | Analyser 1099-DIV (dividendes, gains en capital) | LECTURE |
tax_parse_1099int | Analyser 1099-INT (intérêts, primes d'obligation) | LECTURE |
tax_parse_w2 | Analyser W-2 (salaires, retenues, SS/Médicare) | LECTURE |
tax_parse_k1 | Analyser Annexe K-1 (participation de partenariat) | LECTURE |
tax_parse_1040 | Analyser Formulaire 1040 (déclaration fédérale principale) | LECTURE |
tax_parse_schedule_a | Analyser Annexe A (déductions détaillées, plafond SALT) | LECTURE |
tax_parse_schedule_b | Analyser Annexe B (payeurs d'intérêts/dividendes) | LECTURE |
tax_parse_schedule_c | Analyser Annexe C (revenus de travail indépendant) | LECTURE |
tax_parse_schedule_d | Analyser Annexe D (compensation des gains en capital) | LECTURE |
tax_parse_schedule_e | Analyser Annexe E (revenus locatifs/royalties/partenariat) | LECTURE |
tax_parse_schedule_se | Analyser Annexe SE (impôt sur travail indépendant) | LECTURE |
tax_parse_form_8949 | Analyser Formulaire 8949 (ventes et dispositions) | LECTURE |
tax_parse_state_return | Analyser déclaration d'État (CA 540, NY IT-201, etc.) | LECTURE |
tax_parse_form_6251 | Analyser Formulaire 6251 (AMT) | LECTURE |
tax_estimate_liability | Calculer l'impôt fédéral/étatique avec barèmes | LECTURE |
tax_find_tlh_candidates | Identifier les opportunités de récolte de pertes fiscales | LECTURE |
tax_check_wash_sales | Valider la conformité à la règle de vente fictive (fenêtre de 61 jours) | LECTURE |
tax_lot_selection | Comparer FIFO/LIFO/ID spécifique pour une vente proposée | LECTURE |
tax_quarterly_estimate | Paiements estimés trimestriels avec règle de sécurité | LECTURE |
tax_compute_schedule_d | Calculer la compensation Annexe D avec report de pertes | LECTURE |
tax_compute_state_tax | Calculer l'impôt d'État pour CA/NY/NJ/IL/PA/MA/TX/FL | LECTURE |
tax_compute_amt | Calculer l'impôt minimum alternatif (Formulaire 6251) | LECTURE |
Schémas complets : references/ext-tax-engine.md
market-intel — 10 outils
| Outil | Description | Risque |
|---|---|---|
intel_company_news | Obtenir des articles d'actualité récents pour une entreprise (Finnhub) | LECTURE |
intel_market_news | Obtenir des actualités générales du marché par catégorie (Finnhub) | LECTURE |
intel_stock_fundamentals | Obtenir les états financiers publiés (Finnhub) | LECTURE |
intel_analyst_recommendations | Obtenir le consensus acheter/conserver/vendre des analystes (Finnhub) | LECTURE |
intel_sec_filings | Lister les dépôts SEC pour une entreprise par ticker (EDGAR) | LECTURE |
intel_sec_search | Recherche en texte intégral dans les dépôts SEC (EDGAR) | LECTURE |
intel_fred_series | Récupérer des séries temporelles économiques (PIB, IPC, taux) (FRED) | LECTURE |
intel_fred_search | Rechercher des séries FRED par mot-clé | LECTURE |
intel_bls_data | Récupérer des séries temporelles de statistiques du travail/prix (BLS) | LECTURE |
intel_news_sentiment | Obtenir des actualités avec sentiment noté par IA (Alpha Vantage) | LECTURE |
Schémas complets : references/ext-market-intel.md
social-sentiment — 6 outils
| Outil | Description | Risque |
|---|---|---|
social_stocktwits_sentiment | Obtenir le sentiment haussier/baissier pour une action (StockTwits) | LECTURE |
social_stocktwits_trending | Obtenir les symboles actuellement tendance (StockTwits) | LECTURE |
social_x_search | Rechercher des tweets récents par mot-clé (X/Twitter) | LECTURE |
social_x_user_timeline | Obtenir les tweets récents d'un utilisateur (X/Twitter) | LECTURE |
social_x_cashtag | Rechercher un cashtag avec notation de sentiment par mot-clé (X) | LECTURE |
social_quiver_congress | Obtenir les divulgations de transactions boursières du Congrès (Quiver) | LECTURE |
Schémas complets : references/ext-social-sentiment.md
Workflows Clés
1. Intégration — Connecter les comptes
plaid_create_link_token(products: ["transactions", "investments", "liabilities"])
→ L'utilisateur complète Plaid Link
→ plaid_exchange_token(publicToken)
→ plaid_get_accounts → finance_upsert_snapshot(source: "plaid")
→ plaid_get_transactions → finance_upsert_snapshot
→ plaid_get_investments → finance_upsert_snapshot
→ finance_get_net_worth → présenter la référence à l'utilisateur
2. Analyse quotidienne — Détection d'anomalies
plaid_get_transactions(cursor) → finance_upsert_snapshot
alpaca_list_positions → finance_upsert_snapshot(source: "alpaca")
ibkr_auth_status → ibkr_get_positions → finance_upsert_snapshot(source: "ibkr")
→ finance_detect_anomalies(lookbackDays: 7)
→ Alerter sur les constatations de gravité moyenne/élevée
3. Récolte de pertes fiscales
finance_get_state(include: ["positions"])
→ tax_find_tlh_candidates(positions, marginalRate)
→ tax_check_wash_sales(proposedSales, recentPurchases)
→ tax_lot_selection(symbol, qty, lots)
→ finance_policy_check(actionType: "tax_move")
→ [Si approuvé] alpaca_create_order(side: "sell", ...)
4. Examen fiscal trimestriel
tax_parse_w2 + tax_parse_1099b + tax_parse_1099div + tax_parse_1099int
→ tax_estimate_liability(filingStatus, income)
→ tax_quarterly_estimate(projectedIncome, priorYearTax, paymentsMade)
→ finance_generate_brief(period: "quarterly")
5. Surveillance de portefeuille
alpaca_list_positions + ibkr_get_positions
→ finance_upsert_snapshot (both sources)
→ ibkr_portfolio_allocation (vérifier la dérive)
→ alpaca_portfolio_history (tendance de performance)
→ finance_detect_anomalies
→ finance_generate_brief(period: "weekly")
6. Recherche d'entreprise — Intelligence de marché
intel_company_news(symbol: "AAPL", limit: 10)
→ intel_analyst_recommendations(symbol: "AAPL")
→ intel_stock_fundamentals(symbol: "AAPL", freq: "quarterly")
→ intel_sec_filings(symbol: "AAPL", formType: "10-K")
→ intel_news_sentiment(tickers: "AAPL")
→ social_stocktwits_sentiment(symbol: "AAPL")
→ social_x_cashtag(symbol: "AAPL")
7. Aperçu économique
intel_fred_series(seriesId: "GDP")
→ intel_fred_series(seriesId: "CPIAUCSL")
→ intel_fred_series(seriesId: "UNRATE")
→ intel_bls_data(seriesIds: ["CES0000000001"])
→ intel_fred_series(seriesId: "DFF")
8. Traitement complet de la déclaration fiscale
tax_parse_1040(rawData) → tax_parse_schedule_a(rawData)
→ tax_parse_schedule_b(rawData) → tax_parse_schedule_c(rawData)
→ tax_parse_schedule_d(rawData) → tax_parse_schedule_e(rawData)
→ tax_parse_form_8949(rawData) → tax_parse_schedule_se(rawData)
→ tax_compute_schedule_d(gains, losses, carryovers)
→ tax_compute_state_tax(stateCode, taxableIncome, filingStatus)
→ tax_compute_amt(taxableIncome, adjustments, regularTax)
→ tax_parse_state_return(rawData)
9. Signaux de transactions du Congrès
social_quiver_congress(daysBack: 30)
→ Filtrer pour les gros achats
→ intel_company_news(symbol: <top_ticker>)
→ alpaca_market_data(symbols: <top_ticker>)
→ social_stocktwits_sentiment(symbol: <top_ticker>)
Configuration
Variables d'environnement
| Variable | Extension | Description |
|---|---|---|
PLAID_CLIENT_ID | plaid-connect | ID client API Plaid |
PLAID_SECRET | plaid-connect | Clé secrète API Plaid |
PLAID_ENV | plaid-connect | sandbox / development / production |
ALPACA_API_KEY | alpaca-trading | Clé API Alpaca |
ALPACA_API_SECRET | alpaca-trading | Secret API Alpaca |
ALPACA_ENV | alpaca-trading | paper / live |
IBKR_BASE_URL | ibkr-portfolio | URL de la passerelle Client Portal |
FINNHUB_API_KEY | market-intel | Clé API Finnhub (finnhub.io) |
FRED_API_KEY | market-intel | Clé API FRED (fred.stlouisfed.org) |
BLS_API_KEY | market-intel | Clé d'enregistrement BLS (v2) |
ALPHA_VANTAGE_API_KEY | market-intel | Clé API Alpha Vantage |
X_API_BEARER_TOKEN | social-sentiment | Jeton OAuth 2.0 Bearer X/Twitter |
QUIVER_API_KEY | social-sentiment | Clé API Quiver Quantitative |
Configuration des extensions
Chaque extension possède un openclaw.plugin.json avec un configSchema. Paramètres clés :
- finance-core :
storageDir,anomalyThresholds,policyRulesPath - plaid-connect :
plaidEnv,webhookUrl,clientName,countryCodes - alpaca-trading :
env(paper/live),maxOrderQty,maxOrderNotional - ibkr-portfolio :
baseUrl,defaultAccountId - tax-engine :
defaultFilingStatus,defaultState,defaultTaxYear - market-intel :
finnhubApiKeyEnv,fredApiKeyEnv,blsApiKeyEnv,alphaVantageApiKeyEnv,secEdgarUserAgent - social-sentiment :
xApiBearerTokenEnv,quiverApiKeyEnv
Exemples Cron
Hebdomadaire
...