Lección 1.2.1 · 60 min
Acciones: splits, dividendos y eventos corporativos
El precio de una acción no solo cambia porque el mercado opine: también cambia porque la empresa reparte dinero, multiplica sus acciones o emite otras nuevas. Esta lección explica la economía de cada evento corporativo, lo mide en ocho años de precios sin ajustar de NOVA y termina con las tres formas de ponderar un índice.
- Módulo
- 1.2 · Clases de activos
- Duración
- 60 min
Lecciones del nivel 1
1.1 · Cómo funcionan los mercados
1.2 · Clases de activos
- 1.2.1 Acciones: splits, dividendos y eventos corporativos
- 1.2.2 ETFs: réplica, tracking error, apalancados y UCITS
- 1.2.3 Futuros: especificaciones, margen, roll y contango
- 1.2.4 Forex: pares, pips, lotes, rollover y CFD
- 1.2.5 Opciones: call, put, valor intrínseco y valor temporal
- 1.2.6 Cripto: spot, perpetuos, funding y custodia
- 1.2.7 Renta fija y tipos de interés; CFDs y productos apalancados
1.3 · Fuentes de datos de mercado
- 1.3.1 Tipos de datos de mercado: EOD, barras, ticks, libro y referencia
- 1.3.2 Fuentes de datos gratuitas
- 1.3.3 APIs de datos retail y prosumer
- 1.3.4 Proveedores de datos profesionales
- 1.3.5 Datos de cripto y on-chain
- 1.3.6 Brókeres como fuente de datos
- 1.3.7 Licencias y términos de uso de datos
- 1.3.8 Cómo elegir proveedor de datos
1.4 · Ingeniería de datos financieros
- 1.4.1 Descarga por REST y websockets: paginación, límites y reintentos
- 1.4.2 Limpieza de datos: faltantes, ticks erróneos, huecos y zonas horarias
- 1.4.3 Ajustes por splits y dividendos: precios ajustados y sin ajustar
- 1.4.4 Universos sin sesgo de supervivencia: deslistados, fusiones y cambios de símbolo
- 1.4.5 Construcción de barras: tiempo, ticks, volumen, dólar y desequilibrio
- 1.4.6 Series continuas de futuros: reglas de roll, ajuste por diferencia y ajuste por ratio
- 1.4.7 Almacenamiento: CSV, Parquet, particionado, DuckDB, TimescaleDB y ArcticDB
- 1.4.8 Pipeline reproducible: descarga, validación, actualización incremental y tests de calidad
1.5 · Datos fundamentales y macro
1.6 · Análisis exploratorio financiero
1.7 · Análisis técnico programado
Qué es una acción
Una acción es una parte alícuota del capital de una sociedad. Da dos tipos de derechos: económicos (una parte de los beneficios que se repartan, en forma de dividendos, y del patrimonio si la sociedad se liquida) y políticos (votar en la junta general). Muchas sociedades tienen además un derecho de suscripción preferente: cuando emiten acciones nuevas, los accionistas actuales pueden comprarlas primero, en proporción a lo que ya tienen.
Tres magnitudes conviene no confundir:
- Precio: lo que se paga por una acción en el mercado.
- Acciones en circulación: cuántas hay emitidas (menos las que la propia empresa tiene en autocartera).
- Capitalización: precio × acciones en circulación. Es lo que vale la empresa entera para el mercado. Los índices suelen usar la capitalización flotante (free float): solo las acciones que se negocian de verdad, sin las de accionistas de control.
El precio de una acción, por sí solo, no dice si una empresa es grande o cara: una acción de 1.600 USD puede ser de una empresa más pequeña que otra de 18 USD con muchas más acciones. Esta idea vuelve al final de la lección, con los índices.
Los eventos corporativos son las decisiones de la empresa que cambian el número de acciones, el precio o los dos. Cada uno tiene una economía distinta y una huella distinta en los datos:
| Evento | Acciones | Precio | Valor para el accionista |
|---|---|---|---|
| Split (desdoblamiento) N por 1 | × N | ÷ N | Igual |
| Contrasplit 1 por N | ÷ N | × N | Igual |
| Dividendo en efectivo | Igual | Baja el importe en la fecha ex | Igual: recibe el efectivo |
| Dividendo en acciones (scrip) | Sube | Baja en proporción | Igual si no se venden los derechos |
| Ampliación con derechos por debajo de mercado | Sube | Baja hasta el precio teórico | Igual si ejerce o vende los derechos |
| Ampliación sin derechos (colocación) | Sube | Puede bajar | Se diluye |
| Recompra de acciones | Baja | Sin ajuste mecánico | Igual para quien no vende |
| Escisión (spin-off) | Recibe acciones de la filial | Baja el valor de la filial | Igual: la suma de las dos |
| Fusión o OPA | Se canjean o se pagan | Converge al precio de la oferta | Depende de la prima |
| Exclusión de cotización | Desaparece | Último precio negociado | Lo que quede (lección 1.4.4) |
La columna de la derecha dice «igual» en casi todas las filas. Esa es la idea central: la mayoría de los eventos corporativos cambian la unidad de medida, no el valor. Pero el precio bruto sí cambia, y un sistema de trading que lee precios brutos ve movimientos que no existen. La forma de corregirlo, los precios ajustados, es la lección 1.4.3; aquí se trata de entender por qué saltan.
El split: el precio cambia y el valor no
En un split de 4 por 1, cada acción antigua se convierte en cuatro nuevas. El precio se divide por cuatro, la capitalización no cambia. Las empresas lo hacen sobre todo para que la acción tenga un precio «manejable»: con 240 USD por acción, un lote de 100 cuesta 24.000 USD.
La figura de la cabecera es el cierre semanal sin ajustar de NOVA desde 2018. El 23 de agosto de 2021 la serie se parte en dos. Los datos diarios lo muestran sin suavizar:
import pandas as pd
d = pd.read_csv("nova_diario_sin_ajustar.csv", parse_dates=["fecha"],
index_col="fecha")
d.loc["2021-08-18":"2021-08-25"] apertura maximo minimo cierre volumen
fecha
2021-08-18 241.43 247.29 233.13 245.16 1747289
2021-08-19 239.60 251.84 238.19 241.05 2471611
2021-08-20 238.75 240.55 227.85 240.00 2203366
2021-08-23 60.28 60.41 58.11 59.55 13427377
2021-08-24 59.63 60.11 57.33 59.55 13974110
2021-08-25 59.17 62.40 58.71 60.18 6931159El viernes 20 de agosto NOVA cierra a 240,00 USD; el lunes 23 abre a 60,28. Es el día de efectividad del split (la fecha ex del split): las acciones nuevas ya cotizan. El volumen en acciones pasa de unos 2 millones a más de 13 millones. Nada de esto es una noticia sobre la empresa. Un cálculo de rentabilidades que no lo sepa lo interpreta así:
r = d["cierre"].pct_change()
print(r.nsmallest(3).round(4))
antes = d.loc["2021-05-24":"2021-08-20", "volumen"].mean()
despues = d.loc["2021-08-23":"2021-11-19", "volumen"].mean()
print(f"Volumen medio: {antes:,.0f} antes, {despues:,.0f} después"
f" (x{despues / antes:.2f})")fecha
2021-08-23 -0.7519
2021-06-02 -0.1221
2025-03-26 -0.1210
Name: cierre, dtype: float64
Volumen medio: 3,331,806 antes, 11,516,047 después (x3.46)La peor sesión de la historia de NOVA, según este cálculo, es un −75,19 %: el día del split. Las dos siguientes, de un −12 %, son movimientos reales. Un backtest con esta serie compraría «la caída», saltaría un stop o daría una volatilidad absurda para 2021. El volumen medio de los tres meses siguientes es 3,46 veces el de los tres anteriores: casi el factor 4 del split, porque cada acción nueva es un cuarto de la antigua. Un filtro de liquidez basado en acciones negociadas cree que NOVA se ha vuelto cuatro veces más líquida; en dólares negociados (precio × volumen), no ha cambiado casi nada.
La comprobación de que el valor no cambia necesita el número de acciones, que no está en los datos. Con una cifra supuesta de 100 millones de acciones antes del split:
acciones = pd.Series(100e6, index=d.index)
acciones.loc["2021-08-23":] *= 4 # split 4 por 1
cap = d["cierre"] * acciones / 1e9
cap.loc["2021-08-19":"2021-08-24"].round(2)fecha
2021-08-19 24.10
2021-08-20 24.00
2021-08-23 23.82
2021-08-24 23.82
dtype: float6424,00 mil millones el viernes y 23,82 el lunes: una variación del −0,75 %, que es lo que se movió el mercado ese día. La regla práctica para los datos es doble: las rentabilidades se calculan sobre precios ajustados (lección 1.4.3) y los volúmenes se comparan en dólares o ajustados por el mismo factor.
El contrasplit (reverse split) es lo contrario: 1 acción nueva por cada N antiguas. Suele hacerlo una empresa cuyo precio ha caído mucho. En los datos, el precio bruto se multiplica de un día para otro: no es una subida, y casi siempre llega después de una larga caída.
Dividendos: cuatro fechas y una caída
Un dividendo en efectivo saca caja de la empresa y la entrega a los accionistas. La empresa vale menos exactamente lo que paga, y el precio lo descuenta. El calendario tiene cuatro fechas:
Fuente Mermaid
flowchart LR A[Anuncio] --> E[Fecha ex] E --> R[Registro] R --> P[Pago]
- Anuncio (declaration date): la junta o el consejo aprueba el importe y las fechas.
- Fecha de registro (record date): quien figure como accionista en los registros ese día cobra.
- Fecha ex (ex-dividend date): la primera sesión en la que la acción se negocia sin derecho al dividendo. Quien compra ese día o después ya no lo cobra; quien vende ese día lo cobra igualmente.
- Pago (payment date): el efectivo llega a la cuenta.
La fecha ex depende de la liquidación. Para aparecer en el registro hay que haber liquidado la compra; con liquidación en T+1 (EE. UU., desde mayo de 2024), una compra hecha en la fecha de registro ya no llega a tiempo. Por eso, según la SEC, la fecha ex se fija en la fecha de registro (o el día hábil anterior si la de registro no lo es). Con liquidación en T+2, como en la UE, el razonamiento da un día hábil antes del registro. Para un dividendo muy grande, del 25 % del precio o más, la regla de EE. UU. es otra: la fecha ex se aplaza al día hábil siguiente al pago.
nova_eventos.csv recoge los 34 eventos de NOVA: 32 dividendos trimestrales, uno extraordinario y el split. Los
importes anteriores al split son por acción antigua:
ev = pd.read_csv("nova_eventos.csv",
parse_dates=["fecha_ex", "fecha_pago"])
print(ev["tipo"].value_counts())
ev.iloc[13:17]tipo
dividendo 32
split 1
dividendo_extraordinario 1
Name: count, dtype: int64
fecha_ex tipo ratio importe fecha_pago
13 2021-05-10 dividendo NaN 0.60 2021-06-01
14 2021-08-10 dividendo NaN 0.60 2021-08-31
15 2021-08-23 split 4.0 NaN 2021-08-20
16 2021-11-10 dividendo NaN 0.15 2021-12-01El dividendo pasa de 0,60 USD a 0,15 USD justo después del split. No es un recorte: 0,60 / 4 = 0,15. Quien tenía una acción y cobraba 0,60 tiene ahora cuatro y cobra 4 × 0,15. Un análisis del «crecimiento del dividendo» que no ajuste por el split vería un recorte del 75 %.
En la apertura de la fecha ex, el precio debería caer, en teoría, el importe del dividendo. Se puede comprobar comparando el hueco entre el cierre anterior y la apertura con la caída que explica el dividendo:
d["cierre_ant"] = d["cierre"].shift()
div = ev[ev["tipo"] != "split"].merge(
d[["apertura", "cierre_ant"]], left_on="fecha_ex",
right_index=True)
div["esperado_pct"] = -100 * div["importe"] / div["cierre_ant"]
div["hueco_pct"] = 100 * (div["apertura"] / div["cierre_ant"] - 1)
cols = ["fecha_ex", "tipo", "importe", "esperado_pct", "hueco_pct"]
div[cols].iloc[23:27].round({"esperado_pct": 2, "hueco_pct": 2}) fecha_ex tipo importe esperado_pct hueco_pct
24 2023-11-10 dividendo 0.17 -0.44 -0.95
25 2023-12-14 dividendo_extraordinario 1.50 -3.51 -3.20
26 2024-02-12 dividendo 0.18 -0.37 -0.68
27 2024-05-10 dividendo 0.18 -0.31 0.17El extraordinario del 14 de diciembre de 2023, 1,50 USD sobre un cierre de 42,75, explica una caída del 3,51 %, y la apertura cae un 3,20 %: se ve a simple vista. Los trimestrales de alrededor explican caídas de entre el 0,31 % y el 0,44 %, y los huecos observados son −0,95 %, −0,68 % y +0,17 %: el dividendo está ahí, pero lo tapa el resto de lo que pasó esa noche. En la del 10 de mayo de 2024 la acción incluso abrió por encima del cierre anterior.
La figura enfrenta las dos magnitudes en las 33 fechas ex. Si el hueco fuera solo el dividendo, todos los puntos estarían sobre la diagonal. El extraordinario está casi encima; los trimestrales forman una columna estrecha (todos explican entre un −0,17 % y un −0,44 %) y muy alta. ¿Cuánto ruido hay en una noche normal?
ordinarios = div[div["tipo"] == "dividendo"]
print(ordinarios[["esperado_pct", "hueco_pct"]].mean().round(2))
print("Huecos positivos en fecha ex:",
(ordinarios["hueco_pct"] > 0).sum(), "de", len(ordinarios))
hueco = 100 * (d["apertura"] / d["cierre_ant"] - 1)
sin_evento = hueco.drop(ev["fecha_ex"])
print(f"Desviación típica del hueco sin evento: "
f"{sin_evento.std():.2f} %")esperado_pct -0.29
hueco_pct -0.55
dtype: float64
Huecos positivos en fecha ex: 9 de 32
Desviación típica del hueco sin evento: 0.97 %De media, los dividendos trimestrales explican un −0,29 % y el hueco observado es un −0,55 %: el signo y el orden de magnitud cuadran, pero en 9 de las 32 fechas ex la acción abrió por encima del cierre anterior. La desviación típica del hueco de una noche sin eventos es del 0,97 %, tres veces la caída del dividendo. Que no se vea no quiere decir que no importe: es dinero que el accionista recibe y que la serie de precios no recoge.
div["rpd"] = div["importe"] / div["cierre_ant"]
anual = 100 * div.groupby(div["fecha_ex"].dt.year)["rpd"].sum()
anual.round(2)fecha_ex
2018 0.85
2019 1.08
2020 1.13
2021 1.11
2022 1.13
2023 4.98
2024 1.30
2025 1.33
Name: rpd, dtype: float64Algo más del 1 % al año, y casi un 5 % en 2023 por el extraordinario. En ocho años, una estrategia que mida su rentabilidad solo con precios pierde nueve o diez puntos que el inversor sí cobró. Es la diferencia entre un índice de precios y uno de rentabilidad total (lección 1.2.2), y la razón de los precios ajustados por dividendos (lección 1.4.3).
Ampliaciones de capital y derechos de suscripción
Una ampliación de capital emite acciones nuevas para captar dinero. Si las nuevas se venden por debajo del precio de mercado, los accionistas antiguos pierden valor salvo que tengan derecho a comprarlas en proporción. Ese es el derecho de suscripción preferente: cada acción antigua recibe un derecho, y con un número fijo de derechos se suscribe una acción nueva al precio de emisión.
Con acciones antiguas por cada nuevas, precio de mercado y precio de emisión , el precio teórico tras la ampliación (TERP, theoretical ex-rights price) es la media ponderada de lo que vale la empresa más el dinero nuevo:
donde es el valor teórico de un derecho (uno por acción antigua). El día en que los derechos se separan de las acciones, la acción cotiza «ex derecho» y su precio cae, en teoría, hasta ; los derechos cotizan aparte durante el periodo de suscripción.
def ampliacion(P, E, N, n):
"""Precio teórico ex derecho y valor teórico de un derecho."""
p_ex = (N * P + n * E) / (N + n)
return p_ex, P - p_ex
p_ex, derecho = ampliacion(P=60.0, E=40.0, N=4, n=1)
print(f"Precio teórico: {p_ex:.2f} derecho: {derecho:.2f}")
tengo = 400
print("Antes:", tengo * 60.0)
print("Ejerce (paga 100 x 40):", (tengo + 100) * p_ex - 100 * 40)
print("Vende los derechos:", tengo * p_ex + tengo * derecho)
print("No hace nada:", tengo * p_ex)Precio teórico: 56.00 derecho: 4.00
Antes: 24000.0
Ejerce (paga 100 x 40): 24000.0
Vende los derechos: 24000.0
No hace nada: 22400.0Con una acción nueva por cada cuatro a 40 USD sobre un precio de 60, el precio teórico es 56 USD y cada derecho vale 4 USD. Quien ejerce o vende los derechos conserva sus 24.000 USD; quien no hace nada y los deja caducar pierde 1.600 USD, un 6,7 %. En la práctica el mercado no clava el precio teórico, pero el orden de magnitud es este.
Fuente Mermaid
flowchart TB A[Ampliación] --> D[Recibe derechos] D --> X[Ejerce] D --> V[Vende derechos] D --> N[No hace nada] X --> I[Valor intacto] V --> I N --> L[Pierde el derecho]
En los datos, una ampliación con derechos es una caída del precio en la fecha ex derecho que los proveedores ajustan con un factor , igual que un dividendo. Otras dos variantes son frecuentes en España:
- Dividendo en acciones o scrip («dividendo flexible»): la empresa da derechos de asignación gratuita; el accionista elige entre recibir acciones nuevas o vender los derechos (a la propia empresa a un precio fijo o en el mercado). Para los datos se parece a una ampliación liberada: más acciones y un precio ajustado.
- Colocación acelerada sin derechos: la empresa vende acciones nuevas a institucionales en pocas horas, con descuento. No hay derecho que compense, así que el accionista que no participa se diluye. En los datos aparece como una caída real, no como un ajuste.
Recompras, escisiones, fusiones y exclusiones
- Recompra: la empresa compra sus propias acciones en el mercado. Es otra forma de devolver dinero: las acciones en circulación bajan y el beneficio por acción sube. No hay ajuste de precio, porque no hay un día en que el valor cambie de golpe. Para un análisis fundamental sí importa: el número de acciones de un trimestre a otro cambia (lección 1.5.1).
- Escisión (spin-off): la empresa reparte acciones de una filial. El precio de la matriz cae lo que vale la filial, y el accionista recibe acciones nuevas. Un proveedor que no lo ajuste enseña una caída que el accionista no sufrió.
- Fusión u OPA: el precio de la empresa comprada converge al de la oferta y deja de cotizar. Si la operación es por canje de acciones, el accionista pasa a tener acciones de la compradora.
- Exclusión: la acción deja de cotizar, por una fusión, una quiebra o una decisión de la propia empresa. Si los datos solo tienen las empresas que cotizan hoy, faltan todas las que salieron, que son precisamente las que acabaron mal: el sesgo de supervivencia (lección 1.4.4).
- Cambio de símbolo: el ticker cambia y la empresa es la misma. Una base de datos que indexe por ticker la parte en dos series sin relación.
Índices: cómo se pondera una cesta
Un índice resume el precio de una cesta de acciones en un número. Lo que cambia de uno a otro es cuánto pesa cada acción. Las tres ponderaciones básicas son:
- Por precio: el índice es la suma de los precios dividida por un divisor. Una acción de 1.600 USD pesa cien veces más que una de 16, sea cual sea el tamaño de la empresa. El Dow Jones Industrial Average funciona así, según su metodología.
- Por capitalización: cada acción pesa lo que su capitalización, normalmente flotante. Es la ponderación de la mayoría de los índices de S&P Dow Jones Indices y, entre otros, del S&P 500 y del IBEX 35.1Nota 1 · Según la metodología de matemáticas de índices de S&P Dow Jones Indices (en los recursos), la mayoría de sus índices de acciones se ponderan por capitalización flotante; el capítulo 358 del reglamento de la CME describe el S&P 500 como «un índice compuesto ponderado por valor» y la ficha de MEFF del futuro IBEX 35, el IBEX 35 como «un índice ponderado por capitalización».
- Equiponderado: todas pesan lo mismo y se reequilibra periódicamente. Da más peso a las pequeñas que la ponderación por capitalización.
Los datos del universo del curso (lección 1.4.4) dicen qué valores eran miembros de un índice ficticio de 40 cada día. El 2 de junio de 2025:
miembros = pd.read_csv("universo_miembros.csv",
parse_dates=["alta", "baja"])
dia = pd.Timestamp("2025-06-02")
vivos = miembros[(miembros["alta"] <= dia)
& (miembros["baja"].isna() | (miembros["baja"] > dia))]
print(len(vivos), "miembros el", dia.date())
precios = pd.read_parquet("universo_precios.parquet")
p = precios[precios["fecha"] == dia].set_index("ticker")["cierre"]
p[vivos["ticker"]].describe().round(2)40 miembros el 2025-06-02
count 40.00
mean 229.40
std 302.12
min 17.70
25% 51.24
50% 108.38
75% 309.10
max 1607.97
Name: cierre, dtype: float64Los 40 miembros cotizan entre unos 18 USD y unos 1.600 USD. Para comparar ponderaciones bastan cinco, con un número de
acciones en circulación supuesto (los datos no lo incluyen). Los cierres de universo_precios.parquet están ajustados;
para una sola fecha cercana al final de la serie, eso no cambia el ejemplo.
acciones = pd.Series({"ZXQZ": 50, "ZXLZ": 300, "ZXGM": 900,
"ZXAD": 2500, "ZXHW": 6000}) # millones
cesta = pd.DataFrame({"precio": p[acciones.index],
"acciones_m": acciones})
cesta["cap_m"] = cesta["precio"] * cesta["acciones_m"]
pesos = pd.DataFrame({
"precio": cesta["precio"] / cesta["precio"].sum(),
"capitalizacion": cesta["cap_m"] / cesta["cap_m"].sum(),
"igual": 1 / len(cesta),
})
print(cesta.round(2))
(100 * pesos).round(1) precio acciones_m cap_m
ZXQZ 1607.97 50 80398.5
ZXLZ 921.91 300 276573.0
ZXGM 171.20 900 154080.0
ZXAD 36.58 2500 91450.0
ZXHW 17.70 6000 106200.0
precio capitalizacion igual
ZXQZ 58.4 11.3 20.0
ZXLZ 33.5 39.0 20.0
ZXGM 6.2 21.7 20.0
ZXAD 1.3 12.9 20.0
ZXHW 0.6 15.0 20.0Por precio, ZXQZ es el 58,4 % del índice: su acción es la más cara, pero con 50 millones de acciones es la empresa más pequeña de las cinco (80.398 millones de capitalización). Por capitalización pesa el 11,3 %, y la mayor es ZXLZ, con un 39,0 %. El índice equiponderado da un 20 % a cada una. Tres índices con los mismos cinco valores pueden tener rentabilidades muy distintas: el ponderado por precio es, en la práctica, una apuesta por ZXQZ.
El divisor de un índice ponderado por precio es lo que lo hace continuo. Si ZXQZ hiciera un split de 10 por 1, su precio pasaría de 1.607,97 a 160,80 y el índice caería por un evento que no cambia el valor de nada. El proveedor recalcula el divisor para que el nivel sea el mismo justo antes y justo después:
divisor = 5.0
nivel = cesta["precio"].sum() / divisor
print(f"Índice: {nivel:.2f}")
tras = cesta["precio"].copy()
tras["ZXQZ"] /= 10 # split 10 por 1
print(f"Sin ajustar el divisor: {tras.sum() / divisor:.2f}")
nuevo = tras.sum() / nivel
print(f"Divisor nuevo: {nuevo:.4f}, índice {tras.sum() / nuevo:.2f}")
peso = 100 * tras["ZXQZ"] / tras.sum()
print(f"Peso de ZXQZ tras el split: {peso:.1f} %")Índice: 551.07
Sin ajustar el divisor: 261.64
Divisor nuevo: 2.3739, índice 551.07
Peso de ZXQZ tras el split: 12.3 %Sin ajuste, el índice pasaría de 551,07 a 261,64, un −52,5 % ficticio. Con el divisor nuevo (2,3739), el nivel sigue en 551,07. Pero el peso de ZXQZ cae del 58,4 % al 12,3 % sin que la empresa haya cambiado: es la rareza de la ponderación por precio. En un índice por capitalización, el mismo split no cambia nada, porque precio × acciones es el mismo.
Los índices de capitalización también tienen divisor, y lo ajustan en otros eventos: altas y bajas de miembros, ampliaciones, recompras grandes o cambios del capital flotante. En todos, la regla es la misma: el nivel del índice solo cambia por los precios, nunca por la mecánica.
Lo que esto cambia en tus datos
- Precios sin ajustar para operar, ajustados para medir. El precio al que se ejecutó una orden es el bruto; la rentabilidad de una posición se mide con el ajustado (lección 1.4.3). Mezclarlos da rentabilidades del −75 % o stops que saltan solos.
- El volumen también se ajusta. Tras un split, el volumen en acciones se multiplica; en dólares, no.
- La fecha que cuenta es la ex. El ajuste por dividendo se aplica en la fecha ex; usar la de pago lo desplaza.
- Los dividendos son rentabilidad. Algo más del 1 % al año en NOVA, invisible en el gráfico, real en la cuenta. Una estrategia corta los paga.
- El índice no es la suma de sus empresas. Antes de comparar una estrategia con un índice, hay que saber cómo pondera y si es de precios o de rentabilidad total.
- Los eventos se guardan aparte. Una tabla de eventos (
fecha_ex, tipo, ratio, importe) permite rehacer cualquier ajuste; una serie ya ajustada no permite deshacerlo.
Ejercicios
- Sin contar el split, ¿cuáles son los tres huecos de apertura más grandes (en valor absoluto) de NOVA? ¿Coinciden con alguna fecha ex-dividendo?
Solución
grandes = hueco.drop(pd.Timestamp("2021-08-23")).abs().nlargest(3)
print(hueco[grandes.index].round(2))
print("¿Alguno es fecha ex?",
grandes.index.isin(ev["fecha_ex"]).any())fecha
2018-04-27 13.49
2021-07-23 -9.39
2019-04-26 -7.55
dtype: float64
¿Alguno es fecha ex? FalseNinguno coincide con un dividendo. Los grandes huecos de NOVA llegan el día siguiente a una presentación de resultados (tras el cierre del cuarto jueves de enero, abril, julio y octubre, según el README de los datos). Un hueco del 13 % no lo explica ningún evento corporativo: es información nueva. Distinguir un hueco «mecánico» (split, dividendo) de uno informativo es el primer paso de cualquier limpieza de datos (lección 1.4.2).
- Calcula el peso de cada miembro del índice el 2 de junio de 2025 si el índice estuviera ponderado por precio. ¿Qué peso tiene el mayor? ¿Y cuánto tendría en uno equiponderado?
Solución
p40 = p[vivos["ticker"]]
peso_precio = 100 * p40 / p40.sum()
print(peso_precio.nlargest(3).round(2))
print(f"Equiponderado: {100 / len(p40):.2f} % cada uno")ticker
ZXQZ 17.52
ZXLZ 10.05
ZXZE 7.80
Name: cierre, dtype: float64
Equiponderado: 2.50 % cada unoZXQZ, con el precio más alto, pesaría un 17,52 % en un índice de 40 valores ponderado por precio: siete veces el 2,50 % que le daría uno equiponderado. Los tres más caros suman más de un tercio del índice. Por eso los índices ponderados por precio son hoy una rareza histórica.
- Una empresa española anuncia un dividendo y una fecha de registro el jueves. Con liquidación en T+2, ¿cuál es el último día para comprar con derecho a cobrarlo? Si en lugar de comprar quieres vender y cobrar el dividendo, ¿cuál es el primer día en que puedes vender?
Solución
Con T+2, una compra del martes se liquida el jueves y aparece en el registro: el martes es el último día con derecho (last trading date) y el miércoles es la fecha ex, un día hábil antes del registro. Quien quiere vender y conservar el dividendo puede hacerlo desde el miércoles, la fecha ex: ese día ya se vende «sin» el dividendo, que sigue siendo suyo. El razonamiento es el mismo que el de EE. UU., con un día más de liquidación (lección 1.1.5).
Footnotes
-
Según la metodología de matemáticas de índices de S&P Dow Jones Indices (en los recursos), la mayoría de sus índices de acciones se ponderan por capitalización flotante; el capítulo 358 del reglamento de la CME describe el S&P 500 como «un índice compuesto ponderado por valor» y la ficha de MEFF del futuro IBEX 35, el IBEX 35 como «un índice ponderado por capitalización». ↩
Respuesta plegada en cada pregunta
Autoevaluación
NOVA hace un split de 4 por 1. Un inversor tenía 100 acciones a 240 USD. ¿Qué tiene al día siguiente, sin contar lo que se mueva el mercado?
- A100 acciones a 60 USD: ha perdido el 75 %
- B400 acciones a 60 USD: lo mismo que antes
- C400 acciones a 240 USD: ha cuadruplicado su inversión
- D100 acciones a 240 USD y 300 derechos
Ver respuesta
Respuesta B. 400 acciones a 60 USD: lo mismo que antes
Un split multiplica el número de acciones y divide el precio por el mismo factor. El valor de la posición (100 × 240 = 400 × 60 = 24.000 USD) y la capitalización de la empresa no cambian. Solo cambia la unidad de medida.
En EE. UU., con liquidación en T+1, una empresa fija la fecha de registro de un dividendo el lunes 16 de marzo. ¿Cuál es el último día en que hay que comprar para cobrarlo?
- AEl propio lunes 16
- BEl viernes 13
- CEl martes 17
- DEl día del pago
Ver respuesta
Respuesta B. El viernes 13
Con T+1, la fecha ex coincide con la de registro (el lunes 16). Quien compra el 16 o después ya no cobra; quien compra el viernes 13 liquida el lunes 16 y aparece en el registro.
¿Por qué en los datos de NOVA los dividendos trimestrales casi no se distinguen en el hueco de apertura de su fecha ex?
- APorque los dividendos se pagan después y no afectan al precio
- BPorque la caída que explican (un 0,3 % de media) es pequeña frente al ruido normal de una noche (desviación típica del 0,97 %)
- CPorque el proveedor ya ha ajustado los precios
- DPorque los dividendos solo afectan al cierre, no a la apertura
Ver respuesta
Respuesta B. Porque la caída que explican (un 0,3 % de media) es pequeña frente al ruido normal de una noche (desviación típica del 0,97 %)
El precio cae por el dividendo, pero también se mueve por todo lo demás. Un 0,3 % queda enterrado en un ruido tres veces mayor; el extraordinario de 1,50 USD (3,5 %) sí se ve. Que no se vea a simple vista no significa que no importe: sumado, son algo más del 1 % al año.
Una acción cotiza a 60 USD y la empresa amplía capital: 1 acción nueva por cada 4 antiguas a 40 USD. ¿Cuál es el valor teórico de cada derecho?
- A20 USD
- B5 USD
- C4 USD
- D0 USD: los derechos no valen nada
Ver respuesta
Respuesta C. 4 USD
El precio teórico tras la ampliación es (4 × 60 + 1 × 40) / 5 = 56 USD, y cada acción antigua lleva un derecho que vale 60 − 56 = 4 USD. Quien no hace nada y deja caducar los derechos pierde esos 4 USD por acción.
En un índice ponderado por precio, una de sus acciones hace un split de 10 por 1. ¿Qué hace el proveedor del índice?
- ANada: el índice cae y se recupera solo
- BCambia el divisor para que el índice valga lo mismo justo antes y justo después del split
- CMultiplica por 10 el precio de esa acción para siempre
- DSaca la acción del índice
Ver respuesta
Respuesta B. Cambia el divisor para que el índice valga lo mismo justo antes y justo después del split
Sin ajuste, el índice caería por un evento que no cambia el valor de nada. El divisor se recalcula para que el nivel sea continuo. El efecto secundario es que, desde entonces, esa acción pesa mucho menos en el índice.
Ideas clave
- Capitalización = precio × acciones en circulación. Un split cambia los dos factores y deja el producto igual; un dividendo saca caja de la empresa y baja el precio en su importe.
- En los precios sin ajustar de NOVA, el split de 2021 es un salto del −75 % y el volumen se multiplica por cuatro; un cálculo de rentabilidades que no lo sepa ve la peor sesión de su historia.
- Quien cobra un dividendo lo decide la fecha ex. En EE. UU., con T+1, la fecha ex coincide con la de registro; la caída del precio llega en la apertura de la fecha ex.
- Los dividendos ordinarios se pierden en el ruido de una noche, pero sumados son algo más del 1 % al año en NOVA: una serie solo de precios infravalora la rentabilidad.
- Una ampliación con derechos baja el precio de mercado hasta el precio teórico; el derecho compensa al accionista que lo vende o lo ejerce.
- Un índice ponderado por precio da más peso a la acción de precio más alto, no a la empresa más grande. Tras un split, el divisor se ajusta y el peso de esa acción se desploma.