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.

Fig. — Cierre semanal sin ajustar de NOVA, 2018–2025: el split de 2021 parte la serie en dos
Lecciones del nivel 1
  1. 1.1 · Cómo funcionan los mercados

    1. 1.1.1 Participantes y centros de negociación
    2. 1.1.2 Sesiones, subastas, festivos y calendarios
    3. 1.1.3 Libro de órdenes: bid, ask, spread y profundidad
    4. 1.1.4 Tipos de órdenes
    5. 1.1.5 Costes, liquidación, apalancamiento y margen
  2. 1.2 · Clases de activos

    1. 1.2.1 Acciones: splits, dividendos y eventos corporativos
    2. 1.2.2 ETFs: réplica, tracking error, apalancados y UCITS
    3. 1.2.3 Futuros: especificaciones, margen, roll y contango
    4. 1.2.4 Forex: pares, pips, lotes, rollover y CFD
    5. 1.2.5 Opciones: call, put, valor intrínseco y valor temporal
    6. 1.2.6 Cripto: spot, perpetuos, funding y custodia
    7. 1.2.7 Renta fija y tipos de interés; CFDs y productos apalancados
  3. 1.3 · Fuentes de datos de mercado

    1. 1.3.1 Tipos de datos de mercado: EOD, barras, ticks, libro y referencia
    2. 1.3.2 Fuentes de datos gratuitas
    3. 1.3.3 APIs de datos retail y prosumer
    4. 1.3.4 Proveedores de datos profesionales
    5. 1.3.5 Datos de cripto y on-chain
    6. 1.3.6 Brókeres como fuente de datos
    7. 1.3.7 Licencias y términos de uso de datos
    8. 1.3.8 Cómo elegir proveedor de datos
  4. 1.4 · Ingeniería de datos financieros

    1. 1.4.1 Descarga por REST y websockets: paginación, límites y reintentos
    2. 1.4.2 Limpieza de datos: faltantes, ticks erróneos, huecos y zonas horarias
    3. 1.4.3 Ajustes por splits y dividendos: precios ajustados y sin ajustar
    4. 1.4.4 Universos sin sesgo de supervivencia: deslistados, fusiones y cambios de símbolo
    5. 1.4.5 Construcción de barras: tiempo, ticks, volumen, dólar y desequilibrio
    6. 1.4.6 Series continuas de futuros: reglas de roll, ajuste por diferencia y ajuste por ratio
    7. 1.4.7 Almacenamiento: CSV, Parquet, particionado, DuckDB, TimescaleDB y ArcticDB
    8. 1.4.8 Pipeline reproducible: descarga, validación, actualización incremental y tests de calidad
  5. 1.5 · Datos fundamentales y macro

    1. 1.5.1 Estados financieros, ratios, XBRL y SEC EDGAR
    2. 1.5.2 Datos macro, calendarios económicos, estimaciones y transcripciones
  6. 1.6 · Análisis exploratorio financiero

    1. 1.6.1 Rentabilidades, volatilidad, correlaciones móviles y drawdown
    2. 1.6.2 Hechos estilizados: colas gruesas, agrupamiento, autocorrelación y apalancamiento
    3. 1.6.3 Estacionalidad: día de la semana, mes, cambio de mes y sesiones intradía
  7. 1.7 · Análisis técnico programado

    1. 1.7.1 Indicadores técnicos en Python
    2. 1.7.2 Implementación propia frente a TA-Lib: validar resultados
    3. 1.7.3 Patrones de velas y soportes y resistencias
    4. 1.7.4 Multi-timeframe sin anticipación

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:

EventoAccionesPrecioValor para el accionista
Split (desdoblamiento) N por 1× N÷ NIgual
Contrasplit 1 por N÷ N× NIgual
Dividendo en efectivoIgualBaja el importe en la fecha exIgual: recibe el efectivo
Dividendo en acciones (scrip)SubeBaja en proporciónIgual si no se venden los derechos
Ampliación con derechos por debajo de mercadoSubeBaja hasta el precio teóricoIgual si ejerce o vende los derechos
Ampliación sin derechos (colocación)SubePuede bajarSe diluye
Recompra de accionesBajaSin ajuste mecánicoIgual para quien no vende
Escisión (spin-off)Recibe acciones de la filialBaja el valor de la filialIgual: la suma de las dos
Fusión o OPASe canjean o se paganConverge al precio de la ofertaDepende de la prima
Exclusión de cotizaciónDesapareceÚltimo precio negociadoLo 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:

IN [01]python
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"]
OUT [01]El split en los precios brutos
            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   6931159

El 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í:

IN [02]python
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})")
OUT [02]Lo que ve un cálculo ingenuo
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:

IN [03]python
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)
OUT [03]Capitalización antes y después
fecha
2021-08-19    24.10
2021-08-20    24.00
2021-08-23    23.82
2021-08-24    23.82
dtype: float64

24,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:

AnuncioFecha exRegistroPago
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:

IN [04]python
ev = pd.read_csv("nova_eventos.csv",
                 parse_dates=["fecha_ex", "fecha_pago"])
print(ev["tipo"].value_counts())
ev.iloc[13:17]
OUT [04]Eventos corporativos de NOVA
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-01

El 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:

IN [05]python
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})
OUT [05]Caída esperada frente a hueco observado
     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.17

El 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.

Fig. — Caída esperada por el dividendo frente al hueco de apertura observado en cada fecha ex de NOVA, 2018–2025

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?

IN [06]python
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} %")
OUT [06]El ruido de una noche
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.

IN [07]python
div["rpd"] = div["importe"] / div["cierre_ant"]
anual = 100 * div.groupby(div["fecha_ex"].dt.year)["rpd"].sum()
anual.round(2)
OUT [07]Rentabilidad por dividendo de cada año
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: float64

Algo 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 NN acciones antiguas por cada nn nuevas, precio de mercado PP y precio de emisión EE, 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:

Pex=N⋅P+n⋅EN+n,D=P−Pex=n (P−E)N+nP_{\text{ex}} = \frac{N \cdot P + n \cdot E}{N + n}, \qquad D = P - P_{\text{ex}} = \frac{n\,(P - E)}{N + n}

donde DD 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 PexP_{\text{ex}}; los derechos cotizan aparte durante el periodo de suscripción.

IN [08]python
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)
OUT [08]Precio teórico y valor del derecho
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.0

Con 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.

AmpliaciónRecibe derechosEjerceVende derechosNo hace nadaValor intactoPierde el derecho
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 Pex/PP_{\text{ex}} / P, 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:

IN [09]python
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)
OUT [09]Miembros del índice en una fecha
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: float64

Los 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.

IN [10]python
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)
OUT [10]Tres formas de ponderar
       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.0
Fig. — Peso de cinco valores en un índice según cómo se pondere: por precio, por capitalización o a partes iguales

Por 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:

IN [11]python
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} %")
OUT [11]Un split en un índice ponderado por precio
Í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

  1. 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
IN [12]python
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())
OUT [12]Los mayores huecos sin el split
fecha
2018-04-27    13.49
2021-07-23    -9.39
2019-04-26    -7.55
dtype: float64
¿Alguno es fecha ex? False

Ninguno 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).

  1. 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
IN [13]python
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")
OUT [13]Pesos por precio de los 40 miembros
ticker
ZXQZ    17.52
ZXLZ    10.05
ZXZE     7.80
Name: cierre, dtype: float64
Equiponderado: 2.50 % cada uno

ZXQZ, 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.

  1. 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

  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». ↩

Respuesta plegada en cada pregunta

Autoevaluación

  1. 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.

  2. 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.

  3. ¿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.

  4. 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.

  5. 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.

Recursos