Loading...
Loading...
Datos de mercado de TradingView via APIs publicas internas sin auth: Scanner (~300 columnas con quote/indicadores tecnicos/financials/earnings/ratings/targets), Symbol Search v3 (ISIN/CUSIP/CIK), News Headlines, scraping HTML de subpages (technicals/financials/forecast/options/ideas). Cobertura GLOBAL: 100k+ stocks, 50k+ cryptos, indices, forex, bonos. 24 modos CLI.
npx skill4agent add gauss314/skills tradingviewtechnicalsfinancials-*forecastoptions-chainideasprs.init-data+json# Quote rapido
py scripts/fetch_tradingview.py quote NASDAQ:GGAL
# Todo-en-uno (6 requests combinadas)
py scripts/fetch_tradingview.py all NASDAQ:GGAL
# Screener masivo
py scripts/fetch_tradingview.py country Argentina --limit 30
py scripts/fetch_tradingview.py sector Finance --market america --limit 20
# News (~200 por simbolo)
py scripts/fetch_tradingview.py news NASDAQ:AAPL
# Symbol Search con ISIN/CUSIP/CIK
py scripts/fetch_tradingview.py search "Galicia"skills/tradingview/
├── SKILL.md # Este archivo (guia rapida)
├── references/ # 8 documentos detallados
│ ├── REFERENCE.md # Overview general de la API
│ ├── SCANNER_COLUMNS.md # Catalogo de 130+ columnas con tablas
│ ├── SCANNER_FILTERS.md # Operaciones de filtro + queries complejos
│ ├── MARKETS_EXCHANGES.md # Mercados validos + exchanges por pais
│ ├── NEWS_API.md # News API deep dive
│ ├── SYMBOL_SEARCH.md # Symbol Search v3 deep dive
│ ├── HTML_SCRAPING.md # Extraccion de prs.init-data+json
│ └── COOKBOOK.md # 30 recetas listas para copy-paste
├── assets/ # 4 archivos JSON
│ ├── scanner_columns.json # Catalogo de columnas con descripciones
│ ├── column_groups.json # Bundles pre-armados por caso de uso
│ ├── markets.json # Mercados validos + cobertura
│ └── recommend_ratings.json # Mapeo Recommend.* a STRONG_BUY/etc
└── scripts/
└── fetch_tradingview.py # Script principal con 24 modos CLIPOST https://scanner.tradingview.com/{market}/scan| Modo | Bundle de columnas | Descripcion |
|---|---|---|
| | Quote basico |
| | Quote + indicadores + valuacion |
| | RSI, MACD, EMAs, SMAs, ratings |
| | Pivots mensuales (5 metodos) |
| | Balance + income + cashflow + ratios |
| | Earnings pasados + forecast |
| | Price targets + analyst recommendations |
| | Returns (W/1M/3M/6M/Y/YTD/5Y/All) + volatilidad + beta |
| | Yield + DPS + payout + crecimiento |
| | Float + institucional + insiders + short |
| custom | Screener generico con filtros + sort + paginacion |
| | Stocks de un pais |
| | Stocks de un sector |
| | Listar mercado completo |
GET https://symbol-search.tradingview.com/symbol_search/v3/| Modo | Descripcion |
|---|---|
| Busqueda global con ISIN, CUSIP, CIK, logoid, exchange |
GET https://news-headlines.tradingview.com/v2/headlines| Modo | Descripcion |
|---|---|
| Headlines de un simbolo (hasta 200 items) |
| Headlines globales del mercado (hasta 200 items) |
| Detalle/body de una noticia (scraping HTML) |
GET https://es.tradingview.com/symbols/{EX}-{SYM}/{path}/| Modo | Descripcion |
|---|---|
| Fetch HTML + extrae bloques |
| Modo | Descripcion |
|---|---|
| Listar columnas (todas o un grupo concreto) |
| Listar bundles pre-armados |
| Listar mercados validos |
| Modo | Descripcion |
|---|---|
| Combina 6 requests (quote_extended + technicals + financials + earnings + targets + news) |
py scripts/fetch_tradingview.py quote NASDAQ:GGAL # 14 cols
py scripts/fetch_tradingview.py quote-extended NASDAQ:AAPL # 30 cols
py scripts/fetch_tradingview.py technicals NASDAQ:GGAL # 36 cols
py scripts/fetch_tradingview.py pivots NASDAQ:AAPL # 17 cols
py scripts/fetch_tradingview.py performance NYSE:JPM # returns W/1M/3M/6M/Y/YTD/5Y/Allpy scripts/fetch_tradingview.py financials NASDAQ:AAPL # balance + income + cashflow + ratios
py scripts/fetch_tradingview.py earnings NASDAQ:GGAL # past + forecast
py scripts/fetch_tradingview.py targets NASDAQ:NVDA # analyst targets + recos
py scripts/fetch_tradingview.py dividends NYSE:KO # yield + DPS + payout
py scripts/fetch_tradingview.py ownership NASDAQ:NVDA # float + inst + insiders + short# Filtros arbitrarios — pasar JSON con la sintaxis del Scanner
py scripts/fetch_tradingview.py screen \
--filter '[["sector","equal","Finance"],["market_cap_basic","greater",100000000000]]' \
--sort market_cap_basic:desc --limit 10
# Atajos
py scripts/fetch_tradingview.py country Argentina --limit 30
py scripts/fetch_tradingview.py sector Finance --market america --limit 20
py scripts/fetch_tradingview.py market crypto --limit 20py scripts/fetch_tradingview.py search "GGAL" # auto type
py scripts/fetch_tradingview.py search "Apple" --type stocks --exchange NASDAQ
py scripts/fetch_tradingview.py search "BTC" --type crypto
py scripts/fetch_tradingview.py search "US3999091008" # por ISINpy scripts/fetch_tradingview.py news NASDAQ:AAPL # hasta 200 items
py scripts/fetch_tradingview.py news-global # global headlines
py scripts/fetch_tradingview.py story "/news/DJN_DN20260604009289:0/" # body de noticiapy scripts/fetch_tradingview.py subpage NASDAQ:GGAL technicals # subpage HTML
py scripts/fetch_tradingview.py subpage NASDAQ:GGAL financials-income-statement
py scripts/fetch_tradingview.py subpage NASDAQ:GGAL options-chain
py scripts/fetch_tradingview.py subpage NASDAQ:GGAL forecastpy scripts/fetch_tradingview.py columns # todas las columnas
py scripts/fetch_tradingview.py columns technicals # un grupo
py scripts/fetch_tradingview.py groups # todos los bundles
py scripts/fetch_tradingview.py markets # mercados validospy scripts/fetch_tradingview.py all NASDAQ:GGAL # 6 requests en 1
py scripts/fetch_tradingview.py all NASDAQ:GGAL -o ggal_full.json # guarda a archivopy scripts/fetch_tradingview.py quote NASDAQ:GGAL \
--columns "name,close,RSI,MACD.macd,Recommend.All,price_target_average"py scripts/fetch_tradingview.py quote NASDAQ:GGAL -o ggal_quote.json # archivo
py scripts/fetch_tradingview.py quote NASDAQ:GGAL -q # silencioso| Donde | Formato | Ejemplos |
|---|---|---|
| Scanner / News / Search (JSON APIs) | | |
| HTML subpages | | |
:-| Market | Cobertura | Tickers tipo |
|---|---|---|
| Todos los mercados (100k+) | Cualquier |
| US: NYSE, NASDAQ, AMEX, OTC (15k+) | |
| BCBA / BYMA (300+) | |
| B3 / Bovespa (500+) | |
| BME (200+) | |
| Borsa Italiana (400+) | |
| Xetra / FWB (1k+) | |
| LSE (2k+) | |
| Euronext Paris (800+) | |
| MOEX (200+) | |
| Cryptos (50k+) | |
| Forex pairs (1k+) | |
| Bonos globales (TVC) | |
Detalles completos en references/MARKETS_EXCHANGES.md.
type| Tipo | Descripcion |
|---|---|
| Acciones comunes |
| Depositary Receipt (ADRs en US, CEDEARs en BCBA, BDRs en BMFBOVESPA) |
| Exchange-Traded Fund |
| Mutual fund |
| Producto estructurado |
| Bono |
| Criptomoneda |
| Par de monedas |
| Indice |
| Futuro |
| Opcion |
| Campo | Calculado a partir de |
|---|---|
| TODOS los indicadores (medias moviles + osciladores) |
| Solo medias moviles (SMA/EMA 10..200, VWMA, Ichimoku, HullMA) |
| Solo osciladores (RSI, Stoch, MACD, ADX, CCI, BBP, UO, W%R, AO) |
[-1.0, +1.0]| Rango | Bucket | UI label |
|---|---|---|
| -1.00 a -0.50 | | Venta fuerte |
| -0.50 a -0.10 | | Venta |
| -0.10 a +0.10 | | Neutral |
| +0.10 a +0.50 | | Compra |
| +0.50 a +1.00 | | Compra fuerte |
El script tienepara conversion directa. Asset estructurado en assets/recommend_ratings.json.recommend_label(value)
| Flag | Descripcion |
|---|---|
| Market del Scanner (default: |
| Columnas custom (override del bundle del modo) |
| Filtro JSON para |
| Sort (ej: |
| Limite de resultados (default: 30) |
| Offset para paginacion (default: 0) |
| search_type para |
| Filtro exchange para |
| Idioma para news/search (default: |
| Guardar output a archivo (JSON o markdown) |
| Modo silencioso (sin logs INFO) |
| Feature | TradingView | Yahoo Finance | Finnhub | Investing.com | Morningstar |
|---|---|---|---|---|---|
| API publica sin key | ✅ | ✅ | Freemium | ✅ | ✅ |
| Quote real-time | ⚠️ delayed | ⚠️ delayed | ✅ | ⚠️ delayed | ❌ |
| Indicadores tecnicos pre-calc (~30+) | ✅ UNICO | ❌ | ❌ | ❌ | ❌ |
| Ratings BUY/SELL agregados | ✅ UNICO | ❌ | ⚠️ | ⚠️ | ❌ |
| Pivots S/R (5 metodos) | ✅ UNICO | ❌ | ❌ | ❌ | ❌ |
| Financials | ✅ | ✅ | ✅ | ✅ | ⚠️ |
| Analyst targets | ✅ | ⚠️ | ✅ | ✅ | ❌ |
| ISIN/CUSIP/CIK en search | ✅ UNICO | ❌ | ⚠️ | ❌ | ❌ |
| Screener multi-pais | ✅ (~100k+) | ⚠️ | ⚠️ | ⚠️ | ✅ |
| News | ✅ (200 items) | ✅ | ✅ | ✅ | ❌ |
| Cobertura cryptos | ✅ (50k+) | ⚠️ | ⚠️ | ✅ | ❌ |
HEADERS = {
"User-Agent": "Mozilla/5.0 ...",
"Accept": "*/*",
"Accept-Language": "es-AR,es;q=0.9,en;q=0.8",
"Origin": "https://es.tradingview.com",
"Referer": "https://es.tradingview.com/",
}time.sleep(0.3)all?sys.stdout| Status | Causa tipica |
|---|---|
| 200 | OK. Para Scanner verificar |
| 400 | Payload invalido (columna desconocida, filter mal formado, body null) |
| 403 | Path inexistente o headers faltantes |
| 404 | Subpage HTML que no existe (ej: |
| 405 | Metodo erroneo (ej: |
Perf.*lang=eslang=enwss://data.tradingview.comBCBA:GGALNASDAQ:GGAL| Documento | Contenido |
|---|---|
| references/REFERENCE.md | Overview general de los 4 endpoints HTTP + arquitectura |
| references/SCANNER_COLUMNS.md | Lista exhaustiva de 130+ columnas con tablas |
| references/SCANNER_FILTERS.md | Operaciones de filtro + queries complejos + ejemplos |
| references/MARKETS_EXCHANGES.md | Mercados validos + exchanges por pais + formato tickers |
| references/NEWS_API.md | News API deep dive: providers, schema, story detail |
| references/SYMBOL_SEARCH.md | Symbol Search v3 deep dive: ISIN/CUSIP/CIK |
| references/HTML_SCRAPING.md | Extraccion de prs.init-data+json + casos donde scrapear |
| references/COOKBOOK.md | 30 recetas listas para copy-paste |
| assets/scanner_columns.json | Catalogo de columnas con descripciones |
| assets/column_groups.json | Bundles pre-armados por caso de uso |
| assets/markets.json | Mercados validos + cobertura |
| assets/recommend_ratings.json | Mapeo Recommend.* a buckets |
30 recetas completas en references/COOKBOOK.md.
# Top 10 acciones US por market cap
py scripts/fetch_tradingview.py screen \
--filter '[["country","equal","United States"],["type","equal","stock"]]' \
--sort market_cap_basic:desc --limit 10
# Stocks oversold con high dividend
py scripts/fetch_tradingview.py screen \
--filter '[["RSI","less",30],["dividend_yield_recent","greater",5]]' \
--sort dividend_yield_recent:desc --limit 20
# Empresas argentinas en cualquier mercado
py scripts/fetch_tradingview.py country Argentina --limit 30
# Pipeline: search → quote → news
py scripts/fetch_tradingview.py search "Apple" -q | jq -r '.symbols[0].symbol'
py scripts/fetch_tradingview.py quote NASDAQ:AAPL
py scripts/fetch_tradingview.py news NASDAQ:AAPL
# Joinear con SEC EDGAR via CIK
py scripts/fetch_tradingview.py search "GGAL" -q | jq -r '.symbols[0].cik_code'
# -> 0001114700 (usar este CIK en sec-data skill)