BUILD GUIDE · FOUNDERS

How to build a market signal feed from finance YouTube

Analysts, fund managers and commentators publish hours of market commentary on YouTube every day. Nobody can watch it all. A signal feed transcribes it, extracts tickers and opinions, and delivers a digest that takes minutes to read.

Who it's for
Retail traders, research desks, newsletter writers
Build time
1–2 weeks
API endpoints
/channels/resolve/transcribeasr_options.sentimentAnalysis

The problem it solves

Traders and researchers want to know which assets influential voices are discussing and whether sentiment is shifting, but the information is locked in long videos. By the time a clip spreads on social media, the move may have happened. A structured feed turns spoken commentary into data that can be scanned, searched and backtested.

What to include in your first version

  • A curated list of analyst and commentator channels
  • Ticker and asset extraction from every new video
  • Bullish, bearish or neutral sentiment per mention
  • A daily digest ranked by number of mentions and sentiment shift
  • A JSON feed or API for quantitative users

How to build it, step by step

  1. 01

    Curate channels

    Pick channels by category and influence. Resolve each one once to store its channel ID.

  2. 02

    Poll hourly

    Resolve each channel with a small limit and transcribe only new video IDs with /transcribe.

  3. 03

    Extract structured signals

    Ask an LLM to return JSON listing each asset mentioned, the claim made, the sentiment and the timestamp.

  4. 04

    Aggregate and publish

    Store signals in a database, rank them daily, and publish a newsletter, dashboard or API feed.

Starter code

This idea is built on the "Recipe 2: Watch channels and alert on new uploads" pattern. Swap in your own channels, prompts and storage.

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}")

How it makes money

Run it as a paid newsletter for retail traders, a dashboard subscription for research teams, or an API feed priced by coverage. Historical data becomes more valuable over time for backtesting.

Mistakes to avoid

  • Presenting signals as investment advice: label the feed as information and include clear disclaimers.
  • Confusing tickers with common words: validate symbols against a ticker list and the surrounding context.
  • Storing only summaries: keep raw transcripts so you can re-extract signals as your prompts improve.

Questions about this idea

Can YouTube sentiment predict market moves?

It's one signal among many. The value of a feed is speed and coverage: knowing what influential voices are saying without watching every video.

How fast can new videos be processed?

Polling hourly and transcribing new uploads with captions typically surfaces new commentary within the hour.

Is it legal to sell a newsletter based on YouTube videos?

Summaries and analysis are common, but you're responsible for complying with YouTube's terms and copyright law. Avoid republishing full transcripts and link to the original videos.

Start building today

10 free credits every month. No credit card needed.

How to Build a Finance and Crypto YouTube Signal Feed | YouTubeTranscript.dev