Communitygithub.com

trader-copycat

Un ingénieur inversé qui extrait les déclarations SEC (13F-HR, Form 4) d’investisseurs célèbres, reconstruit leur portefeuille et génère des pondérations cibles à copier dans votre propre compte.

Qu'est-ce que trader-copycat ?

Cette compétence permet de copier un investisseur célèbre en exploitant les données publiques de la SEC (Securities and Exchange Commission) disponibles via EDGAR, notamment les formulaires 13F-HR (déclarations trimestrielles des positions longues américaines). Le script Python intégré (edgar13f.py) télécharge les dépôts, associe chaque CUSIP à un ticker, calcule les pondérations en pourcentage, et génère un fichier trader/targets.json utilisable par d’autres compétences comme /trader-budget pour dimensionner l’investissement selon le budget de l’utilisateur. Elle gère la détection des nouveaux achats, des ventes, des ajouts et des diminutions via une commande diff, et combine automatiquement les classes d’actions (ex : Alphabet A + C). Les données sont toujours accompagnées de leur date de clôture et de dépôt, avec une mention claire des limitations (pas de shorts, pas de cash, pas d’ordres passés). La sécurité est renforcée : aucun ordre financier n’est exécuté, l’utilisateur doit confirmer explicitement chaque transaction, et les données ne sont jamais présentées comme un conseil financier.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Jakeschincariol/trader-skill/tree/HEAD/trader-copycat

Demander à votre IA préférée

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

Documentation

Que fait trader-copycat ?

Copier un investisseur commence par ce qu’il est légalement obligé de montrer : un formulaire 13F-HR, déposé chaque trimestre auprès de la SEC par tout gestionnaire d’investissement détenant plus de 100 millions de dollars en actions cotées aux États-Unis et autres titres 13(f). Cette compétence le lit directement depuis SEC EDGAR, reconstruit le portefeuille et le transforme en pondérations cibles pour votre propre compte.

Outil dans ce dossier (bibliothèque standard Python, aucune clé) :

python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" --help

La SEC demande à chaque programme de s’identifier avec un nom et un courriel. Configurez-le une fois dans trader/config.json ("sec_user_agent": "Votre Nom [email protected]", avec le vrai nom et courriel de l’utilisateur) ou export SEC_USER_AGENT=.... L’outil refuse d’appeler la SEC sans cela et indique comment le corriger. Demandez-le à l’utilisateur ; n’en inventez jamais.

Ce qu’il écrit

  • trader/targets.json : les pondérations à copier, dans le format lisible par toutes les autres compétences de trading : { "source", "as_of", "weights": [ {"ticker", "name", "weight"} ] }, poids en % avec 2 décimales totalisant 100 sur la partie actions (gardez les 2 décimales : le dimensionnement budgétaire en a besoin), plus la part 13F, la valeur, les CUSIP, ce qui a été ignoré et pourquoi, et les mises en garde.
  • trader/tickers.json (optionnel, le vôtre) : corrections CUSIP vers ticker que l’outil utilisera toujours en premier, comme {"650111107": "NYT"}.

targets.example.json dans ce dossier est le véritable résultat de l’exécution de la démo (Berkshire, top 5).

Les règles

  • Dites à chaque fois la date des données. Un 13F est un instantané du dernier jour du trimestre, déposé jusqu’à 45 jours plus tard. Dites « positions au 2026-06-30, déposé le 2026-08-14 » dans chaque réponse qui en utilise un.
  • Dites ce qu’il ne peut pas montrer. Uniquement les positions longues américaines : pas de shorts, pas de cash, pas d’obligations, pas d’actions étrangères, pas de sociétés privées, rien d’acheté et vendu dans le trimestre, et aucun prix d’achat.
  • La société, pas la personne. Berkshire Hathaway dépose le 13F, pas Warren Buffett. Greg Abel est PDG depuis le 2026-01-01 et Buffett est devenu Président émérite le 2026-09-18. Ne dites jamais « Buffett a acheté » alors que le dépôt dit seulement « Berkshire détenait ».
  • Chaque chiffre provient du dépôt. Citez le numéro d’accession et liez la table d’informations. Si un ticker est une supposition (marquée *), dites-le et corrigez-le avec --figi ou trader/tickers.json avant toute copie.
  • Les options et obligations ne sont jamais copiées. Les lignes PUT, CALL et PRN sont listées comme exclues. Ce pack ne trade que des actions sauf si la configuration autorise plus.

Étape 1 : trouver l’investisseur

python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" find buffett
python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" find "pershing square" --sec

filers.json liste 23 déposants connus avec leurs CIK vérifiés auprès de la SEC le 2026-10-13 (Berkshire, Pershing Square, Scion, Bridgewater, ARK, Duquesne, Appaloosa, Baupost et plus). --sec recherche tous les déposants EDGAR par nom. Si un déposant a cessé de déposer (le dernier 13F-HR de Scion était le 2025-11-03), dites-le.

Étape 2 : lire le dernier trimestre

python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" filings 1067983
python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" holdings 1067983 --combine --top 15

Il télécharge la liste des dépôts, choisit le dernier 13F-HR original, trouve le fichier XML de la table d’informations dans le dossier du dépôt, additionne les lignes dans lesquelles chaque participation est divisée (Berkshire déclare une action sur plusieurs filiales), vérifie le total par rapport à la page de couverture, et associe les tickers : d’abord votre trader/tickers.json, puis share_classes.json (CUSIP vérifiés pour les sociétés ayant plusieurs classes cotées), puis le company_tickers.json de la SEC par nom, et la consultation CUSIP gratuite d’OpenFIGI avec --figi. --combine additionne les classes d’actions d’une même société (Alphabet A + C). S’il existe un amendement pour le trimestre, l’outil le signale ; lisez-le avec --accession.

Étape 3 : ce qui a changé

python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" diff 1067983

Nouvelles positions, positions vendues, ajoutées et réduites, par nombre d’actions par rapport au trimestre précédent. Nombre d’actions à deux dates, pas de transactions : dites « détenait plus d’actions au 30 juin qu’au 31 mars », jamais « a acheté le » d’un jour.

Étape 4 : écrire les cibles

python3 "${CLAUDE_SKILL_DIR}/edgar13f.py" copy 1067983 --top 5 --out trader/targets.json

Les classes d’actions sont combinées par défaut (--separate les maintient séparées). --exclude TICKER exclut ce que l’utilisateur ne souhaite pas posséder, --min-pct 1 supprime les miettes. Les pondérations sont le pourcentage de chaque position dans le 13F, redimensionné pour que les positions choisies totalisent 100. Affichez le tableau, puis passez à /trader-budget.

Formulaire 4 (optionnel) : les initiés et les propriétaires à 10 % déclarent leurs transactions dans les deux jours ouvrables via le formulaire 4. Pour les voir, ouvrez https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=4&owner=include (ou la liste des dépôts du déposant) et lisez les dépôts demandés par l’utilisateur. Ils sont plus rapides qu’un 13F mais ne couvrent qu’une action à la fois.

Exemple : la démo

« Copie Berkshire Hathaway, top 5. » Le dernier 13F-HR est pour le trimestre se terminant le 2026-06-30, déposé le 2026-08-14, accession 0001193125-26-352200, total 299 253 556 246 $ (correspond à la page de couverture).

#participation% du 13Fpoids de copie
1Apple (AAPL)22,0430,67
2American Express (AXP)17,1423,85
3Alphabet (GOOGL + GOOG combinés)12,6217,56
4Coca-Cola (KO)10,8615,11
5Bank of America (BAC)9,2012,80

Arrondi, cela donne 30,7 / 23,9 / 17,6 / 15,1 / 12,8. Depuis le trimestre précédent : nouveau D.R. Horton (3 564 actions), sorti de Constellation Brands, ajouté Alphabet, Delta, Lennar, Macy’s et le New York Times, réduit Bank of America, Kroger, Capital One, Nucor, Ally et DaVita. Puis : « Ce sont les positions de Berkshire au 30 juin 2026. Ensuite, /trader-budget les dimensionne pour vos 5 000 $. »

Ce qu’il ne fait jamais

  • Ne prétend jamais que l’investisseur détient encore aujourd’hui, ni pourquoi il a acheté.
  • Ne prétend jamais de rendements, ni que copier un fonds rapportera de l’argent. Une copie 13F achète des mois après le fonds, au prix actuel.
  • Ne passe jamais d’ordre. Il écrit des pondérations cibles ; le dimensionnement, les vérifications de risque et votre accord viennent après.
  • Ne dépasse jamais les limites d’accès équitable de la SEC (10 requêtes par seconde ; l’outil reste bien en dessous).

Sécurité

  • Éducation et outillage, pas de conseil financier. Rien dans ce pack n’est une recommandation d’achat ou de vente.
  • Paper trading par défaut ("paper": true dans trader/config.json).
  • Rien ne passe d’ordre sauf /trader-broker, et seulement après que /trader-risk ait réussi ET que l’utilisateur ait tapé un oui explicite pour cet ordre dans le chat, ET que l’outil de courtage soit réglé sur « Nécessite approbation » dans Claude (Personnaliser > Connecteurs > autorisations d’outils) afin que la propre carte « Autoriser une fois / Refuser » de Claude apparaisse également. Ne jamais « Toujours autoriser » un outil d’ordre.
  • Pas d’options, de marge, de vente à découvert ou d’effet de levier sauf si la configuration l’autorise et que l’utilisateur confirme.
  • Les données 13F sont trimestrielles et ont jusqu’à 45 jours lorsqu’elles sont déposées. Dites-le.

Skills associés