Saltar al contenido
Bravura-global

// bootcamp online gratuito · 5 módulos

Analiza series de precios con datos, Python e IA, y entiende hasta dónde llegan

Bravura-global es un proyecto educativo para aprender a trabajar con datos de mercado de forma rigurosa: calcular rentabilidades, volatilidad, correlaciones y caídas máximas en una hoja de cálculo y en Python, reconocer las trampas de los modelos y usar la IA generativa como una ayudante a la que siempre se revisa.

Reserva tu plaza gratuita en el bootcamp online «Datos y mercados» y recibe por email los notebooks de ejemplo de cada módulo.

5 módulos a tu ritmo plaza gratuita notebooks incluidos

Contenido formativo: aquí no hay señales de compra o venta, ni recomendaciones de productos, ni gestión de dinero.

volatilidad.py · Python 3 + pandas
import numpy as npimport pandas as pd# 1. Cargar cierres diarios (columnas: fecha, cierre)df = pd.read_csv("precios.csv", parse_dates=["fecha"])prices = df.set_index("fecha")["cierre"].sort_index()# 2. Rentabilidades diarias: simple y logarítmicasimple_ret = prices.pct_change().dropna()log_ret = np.log(prices / prices.shift(1)).dropna()# 3. Volatilidad anualizada (unas 252 sesiones al año)ann_vol = log_ret.std(ddof=1) * np.sqrt(252)# 4. Máximo drawdown: caída desde el máximo previodrawdown = prices / prices.cummax() - 1max_dd = drawdown.min()print(f"Volatilidad anualizada: {ann_vol:.2%}")print(f"Máximo drawdown: {max_dd:.2%}")
Pantalla con líneas de código de colores en un editor
# Antes de cualquier modelo, código legible: cada cifra de un informe debería poder rastrearse hasta una línea concreta.

tree datos-y-mercados/Temario: de la celda al notebook

Cinco módulos que van de lo concreto a lo crítico. Empiezas con una hoja de cálculo que ya sabes usar, pasas a Python cuando la hoja se queda corta y terminas evaluando modelos, pruebas históricas y herramientas de IA con mirada escéptica. Cada lección incluye una explicación breve, un notebook o una plantilla de ejemplo y un ejercicio con solución.

Despliega cada carpeta con un clic o con el teclado: flechas arriba y abajo para moverte, derecha para abrir, izquierda para cerrar.

  • 01_hojas_de_calculo/Módulo 1 · Series de precios en una hoja de cálculo
    • importar_csv.xlsxImportar un CSV de cierres sin que fechas ni separadores decimales te jueguen una mala pasada.
    • limpieza.mdHuecos, festivos, filas duplicadas y precios ajustados por dividendos y desdoblamientos.
    • rentabilidades.xlsxFórmulas de rentabilidad diaria, mensual y acumulada, con referencias que no se rompen.
    • graficos.mdGráficos honestos: ejes que no empiezan en cero, escala logarítmica y títulos que no exageran.

diff puede.txt no-puede.txtQué puede y qué no puede hacer un modelo

Un modelo estadístico sirve para ordenar información y poner números a la incertidumbre. Ni más ni menos. Esta comparación aparece, de una forma u otra, en todas las lecciones del bootcamp:

+ puede.txt · lo que sí aporta

  • Resumir cómo se comportó una serie en el pasado: media, dispersión y peores caídas.
  • Cuantificar la incertidumbre de una estimación mediante intervalos y escenarios.
  • Señalar relaciones entre variables que merece la pena investigar con más calma.
  • Automatizar cálculos repetitivos y eliminar errores de copiar y pegar.
  • Ayudarte a formular mejores preguntas sobre unos datos concretos.

− no-puede.txt · lo que no debes pedirle

  • Predecir con certeza el precio de mañana, ni el de dentro de un año.
  • Garantizar que lo que funcionó en el pasado vaya a repetirse.
  • Conocer tu horizonte temporal, tus necesidades de liquidez o tu tolerancia a las pérdidas.
  • Arreglar datos de mala calidad: si entran errores, salen errores con decimales.
  • Darte una recomendación de inversión. Eso no lo hace el modelo, y tampoco Bravura-global.

python backtest.py --mostrar-trampasTrampas del backtesting

Un backtest simula cómo se habría comportado una regla con datos históricos. Es útil para descartar ideas, pero casi nunca demuestra que una idea funcione. El gráfico muestra el patrón más habitual: una curva impecable en el periodo con el que se ajustó la regla y un comportamiento mucho más pobre cuando se aplica a datos que no había visto.

Curva sobreajustada frente a resultados fuera de muestra (ilustrativo) Datos inventados. En el periodo de ajuste la curva sube de 100 a unos 158 de forma casi perfecta. Después del corte, con datos que la regla no había visto, la línea cae de forma irregular hasta unos 127. 100120140160 fin del ajuste lo que «prometía» en muestra (ajuste) fuera de muestra valor (base 100)
# Ilustración con datos inventados: no representa ningún activo ni ninguna estrategia real.

warning[W01]Sobreajuste

Si pruebas cien combinaciones de parámetros y te quedas con la mejor, has encontrado la que mejor encaja con el ruido del pasado. Cuantos más ajustes, más bonita la curva y menos fiable. Remedio: pocas reglas, datos reservados para validar y desconfianza ante resultados demasiado limpios.

warning[W02]Sesgo de supervivencia

Analizar solo las empresas que hoy siguen en un índice deja fuera a las que quebraron, se fusionaron o fueron excluidas. El pasado parece más amable de lo que fue. Remedio: usar series que incluyan valores excluidos o, como mínimo, declarar la limitación.

warning[W03]Look-ahead bias

Aparece cuando la simulación usa información que aún no existía: el cierre del día para decidir a media sesión, resultados contables publicados semanas después o datos revisados. En pandas basta con olvidar un shift(1) para cometerlo.

warning[W04]Costes y liquidez ignorados

Comisiones, horquillas, impuestos y deslizamiento convierten muchas reglas brillantes sobre el papel en reglas perdedoras. Y no todo lo que aparece en un gráfico se podía comprar a ese precio y en ese volumen.

Gráfico abstracto de una línea naranja luminosa que sube y baja sobre fondo oscuro
# Un gráfico espectacular no es una prueba: pregunta siempre con qué datos se dibujó.

Qué practicarás en su lugar

  • Separar datos de ajuste y de validación, y repetir la prueba con ventanas que avanzan en el tiempo (walk-forward).
  • Anotar cuántas variantes probaste antes de quedarte con una: es parte del resultado.
  • Comparar siempre con una referencia sencilla, por ejemplo mantener un índice amplio, antes de dar valor a una regla.
  • Informar de la peor caída y de la dispersión de los resultados, no solo de la media.

python ejemplo.py --dias 5Ejemplo resuelto: cinco precios, paso a paso

Supongamos cinco cierres diarios hipotéticos de un activo cualquiera. No son datos reales: sirven para ver de dónde sale cada número que después pandas calculará por ti en una sola línea.

Precios hipotéticos y rentabilidades diarias (redondeo a 4 decimales)
DíaCierre (€)Rentabilidad simpleRentabilidad logarítmica
1100,00——
2102,00+2,0000 %+1,9803 %
3100,47−1,5000 %−1,5114 %
4103,48+2,9959 %+2,9519 %
5101,41−2,0004 %−2,0207 %
  1. Rentabilidad simple. Divide cada cierre entre el anterior y resta uno. Día 3: 100,47 / 102,00 − 1 = −0,0150, es decir, −1,50 %.r_t = P_t / P_(t−1) − 1
  2. Rentabilidad logarítmica. Es el logaritmo natural del mismo cociente. Día 3: ln(0,985) = −0,015114, o sea, −1,5114 %. Su ventaja es que se suman: 1,9803 − 1,5114 + 2,9519 − 2,0207 = 1,4001 %, que coincide con ln(101,41 / 100). La rentabilidad simple acumulada del periodo es 101,41 / 100 − 1 = 1,41 %.l_t = ln(P_t / P_(t−1))
  3. Media de las rentabilidades logarítmicas. 1,4001 % / 4 = 0,3500 % diario.
  4. Desviaciones al cuadrado respecto a la media, en puntos porcentuales al cuadrado: (1,9803 − 0,3500)² ≈ 2,66; (−1,5114 − 0,3500)² ≈ 3,46; (2,9519 − 0,3500)² ≈ 6,77; (−2,0207 − 0,3500)² ≈ 5,62. Suma ≈ 18,51.
  5. Varianza y desviación típica muestrales. Se divide entre n − 1 = 3 porque estimamos a partir de una muestra: 18,51 / 3 ≈ 6,17. La raíz cuadrada da una volatilidad diaria de ≈ 2,48 %. Es lo que hace log_ret.std(ddof=1).s = √( Σ (l_t − media)² / (n − 1) )
  6. Anualización. Con unas 252 sesiones al año y suponiendo rentabilidades independientes entre días: 2,48 % × √252 ≈ 2,48 × 15,87 ≈ 39,4 % anual.
  7. Máximo drawdown. El máximo previo es 103,48 (día 4); el día 5 cierra en 101,41: 101,41 / 103,48 − 1 ≈ −2,00 %. Es la peor caída desde un pico dentro de esta pequeña serie.

Ojo con la muestra. Con cuatro rentabilidades la cifra de volatilidad solo sirve para aprender la mecánica. Con datos reales se usan cientos de observaciones y, aun así, la volatilidad pasada describe lo que ocurrió: no garantiza cómo se comportará el precio en el futuro.

todo --lista ia-generativaIA generativa con cabeza

Los modelos de lenguaje resumen, reformulan y proponen código con rapidez. También inventan cifras con total aplomo. En el módulo 5 practicarás un flujo de trabajo en el que la herramienta ayuda y tú verificas. Esta es la lista que usamos:

todo.txt7 tareas

$ todo --lista resumen-de-informe

  • Pedir un resumen del informe anual indicando que cite la página de cada dato. (herramienta)
  • Pedir un primer borrador de código pandas para un cálculo concreto. (herramienta)
  • Reescribir un párrafo técnico en un lenguaje más claro. (herramienta)
  • Comprobar cada cifra del resumen contra el documento original. (tú)
  • Ejecutar el código con un caso cuyo resultado ya conoces, como el ejemplo de arriba. (tú)
  • Quitar datos personales o confidenciales antes de pegar nada en un servicio externo. (tú)
  • Decidir qué conclusión es razonable y firmarla: la responsabilidad no se delega. (tú)

[x] se puede delegar en la herramienta · [ ] queda siempre en manos humanas

Primer plano de un chip sobre una placa de circuitos con pistas doradas
# La herramienta procesa texto; el criterio lo pones tú.

Ética y protección de datos

No subas extractos bancarios, nóminas, datos de clientes ni documentos internos a un servicio de IA. Revisa las condiciones de uso de cada herramienta, porque algunas reutilizan lo que escribes. En el bootcamp trabajamos solo con precios públicos y datos sintéticos, y verás qué exige el Reglamento General de Protección de Datos cuando un análisis toca información de personas.

man datos-y-mercadosPreguntas frecuentes

NOMBRE

¿Qué es «Datos y mercados»?

Un bootcamp online y gratuito de cinco módulos para aprender a analizar datos financieros con hojas de cálculo, Python y herramientas de IA generativa. Su finalidad es exclusivamente educativa.

SINOPSIS

¿Cómo se organiza y cuánto tiempo necesito?

Cada módulo reúne lecciones breves, un notebook o una plantilla de ejemplo y un ejercicio con solución. Calcula entre 3 y 4 horas por módulo. No hay fechas de entrega: avanzas a tu ritmo.

REQUISITOS

¿Necesito saber programar o matemáticas avanzadas?

No. Basta con manejarte con porcentajes y con una hoja de cálculo. Python se explica desde la instalación y las fórmulas se trabajan siempre sobre ejemplos numéricos como el de esta página.

DESCRIPCIÓN

¿Me diréis en qué invertir o cuándo comprar?

No. Bravura-global no da recomendaciones, señales ni carteras modelo, y no analiza tu situación personal. Enseñamos a calcular e interpretar métricas y a reconocer las limitaciones de cualquier modelo.

ADVERTENCIAS

¿Aprenderé a construir un bot que gane dinero por mí?

No, y conviene desconfiar de quien lo prometa. En el curso automatizas cálculos y gráficos, no decisiones de inversión. Una buena parte del temario está dedicada precisamente a entender por qué los resultados históricos engañan.

PRIVACIDAD

¿Qué hacéis con mis datos de inscripción?

Los usamos solo para gestionar tu plaza y para escribirte o llamarte sobre el bootcamp. No los cedemos a nadie. Tienes todos los detalles en la política de privacidad.

VÉASE TAMBIÉN

¿Dónde contrasto información sobre productos de inversión?

En las guías para el inversor que publica la Comisión Nacional del Mercado de Valores (CNMV) y en los materiales de educación financiera del Banco de España. Antes de invertir, comprueba también que la entidad esté registrada. Y lee nuestro aviso de riesgos.

nano datos-y-mercados.confReserva tu plaza gratuita

datos-y-mercados.conf

# Completa los valores. Todos los campos marcados con * son obligatorios.

# Aquí recibirás el acceso y los notebooks.

# Con prefijo +34; también se aceptan números internacionales.

# Sin coste. Puedes darte de baja cuando quieras.
Información básica sobre protección de datos
ResponsableEl titular del sitio web Bravura-global.
FinalidadGestionar tu plaza en el bootcamp «Datos y mercados», enviarte los materiales y contactarte sobre el programa; y, solo si lo marcas, enviarte avisos de nuevos cursos.
LegitimaciónTu consentimiento, que puedes retirar en cualquier momento.
DestinatariosNo se ceden datos a terceros, salvo obligación legal.
DerechosAcceso, rectificación, supresión, oposición, limitación y portabilidad, escribiendo a info@bravura-global.com.
Más infoPolítica de privacidad.

Con la inscripción reservas una plaza gratuita en el bootcamp online «Datos y mercados». Esto es lo que recibes:

  • Acceso a los cinco módulos, con sus lecciones y ejercicios resueltos.
  • Notebooks y plantillas de ejemplo por email, listos para abrir y modificar.
  • Un aviso cuando se publique cada lección nueva o se corrija una existente.
  • Respuesta a tus dudas técnicas sobre el temario a través de soporte.

Solo te contactaremos por email o por teléfono para asuntos relacionados con el bootcamp. No compartimos tus datos y no te ofreceremos productos financieros: no los tenemos.