Le problème résolu
Traders et chercheurs veulent savoir de quels actifs parlent les voix influentes et si le sentiment évolue, mais l'information est enfermée dans de longues vidéos. Le temps qu'un extrait circule sur les réseaux sociaux, le mouvement a peut-être déjà eu lieu. Un flux structuré transforme le commentaire oral en données que l'on peut parcourir, rechercher et backtester.
Ce que doit inclure votre première version
- Une liste sélectionnée de chaînes d'analystes et de commentateurs
- Extraction des tickers et des actifs de chaque nouvelle vidéo
- Sentiment haussier, baissier ou neutre pour chaque mention
- Un récapitulatif quotidien classé par nombre de mentions et évolution du sentiment
- Un flux JSON ou une API pour les utilisateurs quantitatifs
Comment le construire, étape par étape
- 01
Sélectionner les chaînes
Choisissez les chaînes par catégorie et par influence. Résolvez chacune une seule fois pour stocker son identifiant.
- 02
Interroger toutes les heures
Résolvez chaque chaîne avec une petite limite et ne transcrivez que les nouveaux identifiants de vidéos avec /transcribe.
- 03
Extraire des signaux structurés
Demandez à un LLM de renvoyer du JSON listant chaque actif mentionné, l'affirmation faite, le sentiment et l'horodatage.
- 04
Agréger et publier
Stockez les signaux dans une base de données, classez-les chaque jour et publiez une newsletter, un tableau de bord ou un flux API.
Code de démarrage
Cette idée repose sur le modèle « Recette 2 : surveiller des chaînes et alerter à chaque nouvelle vidéo ». Remplacez par vos propres chaînes, prompts et stockage.
import requests
API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}
WATCHLIST = ["@somechannel", "@anotherchannel"]
KEYWORDS = ["your brand", "competitor"]
seen = set() # persist this in a database in production
for handle in WATCHLIST:
latest = requests.post(f"{API}/channels/resolve", headers=HEADERS,
json={"handle": handle, "limit": 10}).json()
for video in latest["items"]:
if video["video_id"] in seen:
continue
seen.add(video["video_id"])
t = requests.post(f"{API}/transcribe", headers=HEADERS,
json={"video": video["video_id"]}).json()
text = t.get("data", {}).get("transcript", {}).get("text", "").lower()
hits = [k for k in KEYWORDS if k in text]
if hits:
print(f"ALERT {video['title']}: {hits}")Comment ça rapporte
Exploitez-le comme newsletter payante pour les traders particuliers, comme abonnement à un tableau de bord pour les équipes de recherche, ou comme flux API facturé selon la couverture. L'historique prend de la valeur avec le temps pour le backtesting.
Erreurs à éviter
- Présenter les signaux comme des conseils en investissement : présentez le flux comme de l'information et ajoutez des avertissements clairs.
- Confondre tickers et mots courants : validez les symboles avec une liste de tickers et le contexte environnant.
- Ne stocker que des résumés : conservez les transcriptions brutes pour pouvoir réextraire les signaux quand vos prompts s'améliorent.
Questions sur cette idée
Le sentiment sur YouTube peut-il prédire les mouvements de marché ?
C'est un signal parmi d'autres. La valeur d'un flux tient à sa vitesse et à sa couverture : savoir ce que disent les voix influentes sans regarder chaque vidéo.
En combien de temps les nouvelles vidéos sont-elles traitées ?
En interrogeant les chaînes toutes les heures et en transcrivant les nouvelles vidéos sous-titrées, les nouveaux commentaires remontent généralement dans l'heure.
Est-il légal de vendre une newsletter basée sur des vidéos YouTube ?
Les résumés et analyses sont courants, mais vous êtes responsable du respect des conditions de YouTube et du droit d'auteur. Évitez de republier les transcriptions complètes et renvoyez vers les vidéos originales.