---
title: "Nivel 1: datos financieros, mercados y análisis"
description: "Nivel 1 del curso Python para Trading: cómo funcionan los mercados, clases de activos, fuentes de datos, ingeniería de datos financieros y análisis."
url: "https://pythonparatrading.com/curso-python-trading/nivel-1/"
lang: "es"
image: "https://pythonparatrading.com/og/curso-python-trading/nivel-1.png"
---

# Nivel 1: Datos financieros, mercados y análisis

> Cómo funciona el mercado por dentro y cómo se consiguen, limpian y guardan sus datos sin sesgos: de las órdenes y los costes al data lake personal.

- Horas: 90–100
- Prerrequisito: Python básico, estadística de bachillerato
- Perfil: Programador sin finanzas o trader con algo de Python
- Curso: [Curso Python para Trading](https://pythonparatrading.com/curso-python-trading/)

## Cómo funcionan los mercados

- `1.1.1` Participantes: minoristas, institucionales, market makers, HFT, brokers, cámaras de compensación; bolsas, MTF, dark pools, OTC.
- `1.1.2` Sesiones, subastas, festivos y calendarios (exchange_calendars, pandas_market_calendars).
- `1.1.3` Libro de órdenes: bid/ask, spread, profundidad, niveles L1, L2 y L3.
- `1.1.4` Tipos de órdenes: mercado, limitada, stop, stop-limit, trailing, MOC/LOC, IOC/FOK, iceberg, bracket/OCO.
- `1.1.5` Costes (comisiones, spread, impacto, slippage, financiación); liquidación (T+1 en EE. UU., T+2 en Europa), apalancamiento y margen.

## Clases de activos

- `1.2.1` Acciones: ampliaciones, splits, dividendos, eventos corporativos, índices.
- `1.2.2` ETFs: réplica física o sintética, creación y reembolso, tracking error, apalancados e inversos, UCITS frente a EE. UU. (PRIIPs/KID).
- `1.2.3` Futuros: especificaciones (multiplicador, tick, vencimientos), margen, mark-to-market, roll, contango y backwardation.
- `1.2.4` Forex: pares, pips, lotes, spot frente a forward y futuros FX, swaps y rollover, CFDs y límites ESMA.
- `1.2.5` Opciones: call y put, prima, valor intrínseco y extrínseco, americanas y europeas, cadenas.
- `1.2.6` Cripto: spot, perpetuos, futuros con vencimiento, funding rate, stablecoins, DEX y CEX, custodia.
- `1.2.7` Renta fija y tipos (contexto macro y futuros de tipos); CFDs y productos apalancados minoristas en la UE.

## Fuentes de datos de mercado

- `1.3.1` Tipología: EOD, intradía (barras), tick, cotizaciones, libro L2/L3, datos de referencia.
- `1.3.2` Gratuitas o didácticas: yfinance (no oficial; límites de peticiones), Stooq, FRED (macro), SEC EDGAR, Banco de España y BCE, CNMV.
- `1.3.3` APIs retail y prosumer: Massive (antes Polygon.io; planes de acciones de 0, 29, 79 y 199 $ al mes, con tiempo real solo en Advanced), Alpaca Data, Tiingo, EODHD, Alpha Vantage, Twelve Data, Financial Modeling Prep.
- `1.3.4` Profesionales: Databento (CME desde 2010, todas las bolsas de EE. UU., OPRA; histórico por uso y tiempo real por planes), Nasdaq Data Link, LSEG/Refinitiv, Bloomberg (cultura), ICE.
- `1.3.5` Cripto: APIs de exchanges vía ccxt, Kaiko, CoinGecko y CoinMarketCap, Glassnode y datos on-chain.
- `1.3.6` Brokers como fuente: IBKR (ib_async), MetaTrader 5, OANDA.
- `1.3.7` Licencias, términos de uso, redistribución, datos «professional» frente a «non-professional».
- `1.3.8` Cómo elegir proveedor: cobertura, profundidad histórica, universos sin sesgo de supervivencia, ajustes corporativos, coste.

## Ingeniería de datos financieros

- `1.4.1` Descarga mediante REST y websockets; paginación, límites de peticiones, reintentos con backoff.
- `1.4.2` Limpieza: faltantes, outliers, ticks erróneos, duplicados, huecos; alineación de zonas horarias.
- `1.4.3` Ajustes por splits y dividendos; precios ajustados frente a no ajustados.
- `1.4.4` Universos libres de sesgo de supervivencia; tickers deslistados; cambios de símbolo (point-in-time).
- `1.4.5` Construcción de barras: tiempo, ticks, volumen, dólar, imbalance bars.
- `1.4.6` Series continuas de futuros: back-adjusted, ratio-adjusted, por volumen u open interest.
- `1.4.7` Almacenamiento: CSV frente a Parquet; particionado; DuckDB; PostgreSQL y TimescaleDB; ArcticDB.
- `1.4.8` Pipeline reproducible de descarga, validación y actualización incremental, con tests de calidad de datos.

## Datos fundamentales y macro

- `1.5.1` Estados financieros, ratios, XBRL y SEC EDGAR; fecha de publicación frente a fecha de periodo, para evitar el look-ahead.
- `1.5.2` Datos macro (FRED, BCE, INE), calendarios económicos, estimaciones de analistas y transcripciones (puente a NLP).

## Análisis exploratorio financiero

- `1.6.1` Rentabilidades, volatilidad (histórica, EWMA), correlaciones móviles, drawdown y tiempo bajo el agua.
- `1.6.2` Hechos estilizados: colas gruesas, clustering de volatilidad, autocorrelación débil, efecto apalancamiento.
- `1.6.3` Estacionalidad: día de la semana, mes, cambio de mes, sesiones intradía.

## Análisis técnico programado

- `1.7.1` Medias (SMA, EMA, KAMA), MACD, RSI, estocástico, Bollinger, ATR, ADX, Donchian, Keltner; OBV, VWAP, perfil de volumen.
- `1.7.2` Implementación propia frente a TA-Lib o pandas-ta; validación de resultados.
- `1.7.3` Patrones de velas y soportes y resistencias: cómo codificarlos y por qué muchos no son robustos.
- `1.7.4` Multi-timeframe sin look-ahead.

## Proyecto del nivel

Data lake personal en Parquet y DuckDB con acciones, ETFs, una serie continua de futuros, un par de divisas y un perpetuo cripto. Actualizable, con validaciones de calidad y un dashboard exploratorio en Streamlit.

## Práctica

Research del sitio para practicar este nivel

1. [Curso de Python Para Trading - Parte 1 : Datos de Mercado con OpenBB](https://pythonparatrading.com/openbb-datos-de-mercado-gratuitos/)
2. [Liquidez Order Book - Trading Liquidez Agregada](https://pythonparatrading.com/limit-order-book-y-liquidez-de-mercado/)
3. [Big Data Management. 1 - Introduccion al Big Data para trading con ArticDB](https://pythonparatrading.com/big-data-para-trading/)
4. [Big Data Management 3 - Creando un Datalake sobre el Nasdaq con ArcticDB.](https://pythonparatrading.com/big-data-con-arcticdb/)
5. [Estacionalidad en Python. Buscando Patrones Intradia](https://pythonparatrading.com/estacionalidad-intradia-preprocesado/)

Nivel anterior: [Nivel 0: Python desde cero y mentalidad de datos](https://pythonparatrading.com/curso-python-trading/nivel-0/)

Nivel siguiente: [Nivel 2: Estrategias sistemáticas y backtesting riguroso](https://pythonparatrading.com/curso-python-trading/nivel-2/)
