Какую проблему решает
Трейдеры и аналитики хотят знать, какие активы обсуждают влиятельные голоса и меняется ли настроение, но эта информация заперта в длинных видео. Пока клип разойдётся по соцсетям, движение на рынке может уже произойти. Структурированная лента превращает устные комментарии в данные, которые можно просматривать, искать и проверять на истории.
Что включить в первую версию
- Отобранный список каналов аналитиков и комментаторов
- Извлечение тикеров и активов из каждого нового видео
- Бычья, медвежья или нейтральная тональность для каждого упоминания
- Ежедневная сводка, ранжированная по числу упоминаний и сдвигу настроений
- JSON-лента или API для количественных аналитиков
Как создать: пошагово
- 01
Отберите каналы
Выберите каналы по категории и влиянию. Один раз получите и сохраните ID каждого канала.
- 02
Проверяйте каждый час
Запрашивайте каждый канал с небольшим лимитом и расшифровывайте только новые ID видео через /transcribe.
- 03
Извлекайте структурированные сигналы
Попросите LLM вернуть JSON со списком упомянутых активов, высказанных утверждений, тональности и таймкодов.
- 04
Агрегируйте и публикуйте
Сохраняйте сигналы в базе данных, ранжируйте их ежедневно и публикуйте рассылку, дашборд или API-ленту.
Стартовый код
Эта идея построена на шаблоне «Рецепт 2: следите за каналами и получайте уведомления о новых видео». Подставьте свои каналы, промпты и хранилище.
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}")Как на этом заработать
Запустите это как платную рассылку для частных трейдеров, подписку на дашборд для аналитических команд или API-ленту с ценой по охвату. Со временем исторические данные становятся ценнее для бэктестинга.
Каких ошибок избегать
- Подавать сигналы как инвестиционные рекомендации: обозначьте ленту как информационную и добавьте чёткие оговорки.
- Путать тикеры с обычными словами: сверяйте символы со списком тикеров и окружающим контекстом.
- Хранить только пересказы: сохраняйте исходные расшифровки, чтобы заново извлекать сигналы по мере улучшения промптов.
Вопросы об этой идее
Может ли настроение на YouTube предсказывать движения рынка?
Это один сигнал из многих. Ценность ленты — в скорости и охвате: вы знаете, что говорят влиятельные голоса, не просматривая каждое видео.
Как быстро можно обрабатывать новые видео?
При ежечасной проверке и расшифровке новых загрузок с субтитрами новые комментарии обычно появляются в ленте в течение часа.
Законно ли продавать рассылку на основе видео с YouTube?
Пересказы и аналитика — обычная практика, но вы сами отвечаете за соблюдение условий YouTube и авторского права. Не публикуйте расшифровки целиком и давайте ссылки на оригинальные видео.