Loading...
Loading...
Morningstar Screener via API JSON publica: descarga masiva de 53 universes (102K+ listings, 39 paises, NYSE/Nasdaq/BCBA/etc) con 33 campos (precio, market cap, ratios, retornos 1d/1w/1m/3m/6m/12m/36m/60m/120m, deuda, dividend yield, sector, industria). Sin API key, sin auth.
npx skill4agent add gauss314/skills morningstar/security/screener| Script | Descripcion |
|---|---|
| fetch_morningstar.py | Script principal: info, fields, search, screener, download |
pip install requestsSolopuro, sin dependencias extras.requests
# === INFO ===
python scripts/fetch_morningstar.py info # Stats del skill
python scripts/fetch_morningstar.py fields # 33 campos disponibles
# === BUSCAR TICKERS (por nombre, multi-universe) ===
python scripts/fetch_morningstar.py search Apple --universe XNAS
python scripts/fetch_morningstar.py search Apple --universe XNAS XFRA XBUE
python scripts/fetch_morningstar.py search YPF --universe XBUE
python scripts/fetch_morningstar.py search "MercadoLibre" --universe XNAS BVMF
# === DESCARGA MASIVA (screener) ===
python scripts/fetch_morningstar.py screener --universe XNAS
python scripts/fetch_morningstar.py screener --universe XBUE
python scripts/fetch_morningstar.py screener --universe XNAS XLON XTKS
# === DESCARGA POR PAIS ===
python scripts/fetch_morningstar.py screener --country AR
python scripts/fetch_morningstar.py screener --country US
python scripts/fetch_morningstar.py screener --country DE
# === DESCARGA COMPLETA (53 universes, 100K+ listings) ===
python scripts/fetch_morningstar.py screener --all
# === GUARDAR A ARCHIVO ===
python scripts/fetch_morningstar.py screener --universe XBUE -o argentina.json
python scripts/fetch_morningstar.py screener --universe XNAS -o nasdaq.csv
python scripts/fetch_morningstar.py screener --country AR -o ar.csv
python scripts/fetch_morningstar.py search "YPF" --universe XBUE -o ypf_results.json
# === DOWNLOAD (alias de screener) ===
python scripts/fetch_morningstar.py download --universe XBUE -o ar.csv
# === MODO SILENCIOSO (solo JSON, sin logs) ===
python scripts/fetch_morningstar.py search Apple --universe XNAS -q
python scripts/fetch_morningstar.py screener --universe XBUE -q -o ar.json
# === CAMPOS ESPECIFICOS (--fields) ===
python scripts/fetch_morningstar.py screener --universe XNAS --fields Ticker Name ClosePrice MarketCap PERatio| Modo | Descripcion | Ejemplo |
|---|---|---|
| Stats del skill, dominios, token, #universes, #campos | |
| Lista los 33 securityDataPoints disponibles con descripcion | |
| Buscar tickers por nombre en uno o varios universes | |
| Descarga masiva de uno o varios universes (toda la DB) | |
| Alias de | |
| Flag | Descripcion | Ejemplo |
|---|---|---|
| Uno o varios universe codes (sin prefijo | |
| Codigos de pais ISO (39 paises soportados) | |
| Todos los 53 universes (~100K listings, demora ~1-2 min) | |
| Sub-set de campos (default: los 33) | |
| Guardar a JSON | |
| Guardar a CSV (flat) | |
| Solo JSON, sin logs | |
| Universe | Exchange | Pais | Listings |
|---|---|---|---|
| Frankfurt (Tradegate) | Germany | 14,082 |
| Stuttgart | Germany | 9,971 |
| Munich | Germany | 8,425 |
| Dusseldorf | Germany | 8,297 |
| Bombay (BSE) | India | 5,192 |
| Tokyo | Japan | 3,989 |
| Nasdaq | United States | 3,741 |
| NSE India | India | 3,018 |
| Shenzhen | China | 2,934 |
| Korea Exchange | South Korea | 2,877 |
XBUEpython fetch_morningstar.py screener --universe XBUE -o ar.csvCada CEDEAR tiene undistinto del ADR original. Ej: Apple Inc CEDEAR (PerformanceId) ≠ Apple Inc NASDAQ (0P0000TFNY).0P000000GY
BVMFXMEXTickerNamePerformanceIdUniverseMarketCountryNameSectorNameIndustryNameEquityStyleBoxQuantitativeStarRatingClosePriceMarketCapPERatioPEGRatioDividendYieldDebtEquityRatioNetMarginEBTMarginYear1ROATTMROETTMROEYear1ROICYear1EPSGrowth3YYear1RevenueGrowth3YReturnD1ReturnW1ReturnM0ReturnM1ReturnM3ReturnM6ReturnM12ReturnM36ReturnM60ReturnM120search Apple --universe XNAS{
"_meta": {
"query": "Apple",
"universe_count": 1,
"total_results": 1
},
"results": [
{
"Ticker": "AAPL",
"PerformanceId": "0P000000GY",
"Name": "Apple Inc",
"ClosePrice": 311.23,
"MarketCap": 4571145807880,
"MarketCountryName": "United States",
"SectorName": "Technology",
"IndustryName": "Consumer Electronics",
"_universe_code": "XNAS",
"_universe_name": "Nasdaq"
}
]
}screener --universe XBUE -o ar.csv_universe_code,Ticker,Name,PerformanceId,Universe,ClosePrice,MarketCap,SectorName,IndustryName,EquityStyleBox,...
XBUE,MMM,3M Co Cedear,0P0000D5UB,E0EXG$XBUE,23100,Industrials,Conglomerates,4,...
XBUE,A3,A3 Mercados SA Ordinary Shares,0P0000WJD7,E0EXG$XBUE,2215,Financial Services,Financial Data & Stock Exchanges,,...
XBUE,YPFD,YPF SA Class D,0P0000BS4D,E0EXG$XBUE,83850,Energy,Oil & Gas Integrated,9,...search YPF --universe XBUE{
"_meta": {"query": "YPF", "universe_count": 1, "total_results": 4},
"results": [
{"Ticker": "YPFD", "PerformanceId": "0P0000BS4D", "Name": "YPF SA Class D", "ClosePrice": 83850, "SectorName": "Energy", "IndustryName": "Oil & Gas Integrated", "_universe_code": "XBUE"},
{"Ticker": "YPFD1", "PerformanceId": "0P0001NX4I", "Name": "YPF SA Class D Cedear", ...},
{"Ticker": "YPF", "PerformanceId": "...", "Name": "YPF SA", ...},
...
]
}klr5zyak8xtools.morningstar.*| Dominio | Idioma default |
|---|---|
| English (UK) |
| German |
| French |
| Italian |
| Spanish |
NO funciona en:(US),tools.morningstar.com,.com.au,.br, etc. (geofencing, IP blocking o no existe el endpoint)..jp
languageIdEnerg�aEnergíalanguageId=en-GBget()PerformanceId0P000000GY0P0000EEDJ0P0000VE8R0P0000TFNYEl PerformanceId NO se transfiere entre exchanges. Es la unica clave estable para identificar un listing especifico.
skills/morningstar/
├── SKILL.md # Este archivo (guia rapida)
├── assets/
│ ├── UNIVERSES.md # Lista completa de 53 universes
│ └── DATA_POINTS.md # Lista de 33 campos disponibles
├── references/
│ └── REFERENCE.md # Documentacion tecnica detallada
└── scripts/
└── fetch_morningstar.py # Script principalDocumentacion detallada: Consultar references/REFERENCE.md para la doc tecnica exhaustiva de endpoints, JSON schemas, ejemplos y troubleshooting.