Lección 1.2.6 · 60 min
Cripto: spot, perpetuos, funding y custodia
En cripto el producto más negociado no es el spot sino un futuro que nunca vence, sujeto a su precio por un pago cada ocho horas. La lección lo desmonta con dos años de datos horarios de un token ficticio, XSN: la prima del perpetuo, el funding que cobra o paga, el precio de liquidación de un largo apalancado y los riesgos de dejar los fondos en un exchange.
- 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
Tres formas de exponerse a un token
En los mercados de cripto conviven tres productos sobre el mismo activo, y los datos de cada uno cuentan cosas distintas:
| Producto | Qué se compra | Vencimiento | Cómo se ata al spot | Apalancamiento |
|---|---|---|---|---|
| Spot | El token, con entrega | No tiene | Es el spot | No (salvo margen del exchange) |
| Futuro con vencimiento | Un contrato que liquida en una fecha | Trimestral, mensual… | Converge al vencer, como en la lección 1.2.3 | Sí, con margen |
| Perpetuo | Un contrato sin fecha de vencimiento | No tiene | Pagos periódicos de funding | Sí, con margen |
El perpetuo es el producto característico de cripto. Es un futuro que nunca vence: no hay convergencia al vencer que lo ate al precio del token, así que la ata otra cosa, un pago periódico entre largos y cortos. Si el perpetuo cotiza por encima del precio de referencia, los largos pagan a los cortos; si cotiza por debajo, al revés. El pago encarece la posición del lado que empuja el precio fuera de su sitio y premia al que lo devuelve.
El precio de referencia no es el spot de un exchange concreto, sino un índice compuesto de los precios spot de varios exchanges. Con ese índice se calcula el funding y, sobre todo, se decide cuándo se liquida una posición: si dependiera del último precio de un solo libro, bastaría barrerlo un instante para liquidar posiciones ajenas.
Fuente Mermaid
flowchart TB P[Prima positiva] --> F[Funding positivo] F --> L[Largos pagan] L --> A[Arbitraje] A --> V[Vende perpetuo] A --> C[Compra spot] V --> I[Prima se cierra] C --> I
El diagrama es el mecanismo de vuelta: cuando la prima sube, un arbitrajista vende el perpetuo y compra el token (posición sin riesgo de dirección) y cobra el funding. Su venta empuja el perpetuo hacia abajo y su compra el spot hacia arriba. A esa estrategia se la llama cash and carry o basis trade.
Dos años de XSN, hora a hora
Los datos son de XSN, un token ficticio, cada hora de 2024 y 2025: el spot en un exchange, el perpetuo lineal
(liquidado en USD) y el indice compuesto que usa el exchange para el funding y la liquidación. Son sintéticos,
con volatilidad de cripto (en torno al 75 % anual), colas gruesas y una caída brusca a principios de octubre de 2025.
import numpy as np
import pandas as pd
xsn = pd.read_parquet("xsn_1h.parquet").set_index("ts")
print(len(xsn), "horas;", xsn.index.min(), "→", xsn.index.max())
horas_por_dia = xsn.groupby(xsn.index.date).size()
print("horas por día:", horas_por_dia.unique())
xsn.head(3)17544 horas; 2024-01-01 00:00:00+00:00 → 2025-12-31 23:00:00+00:00
horas por día: [24]
spot perpetuo indice
ts
2024-01-01 00:00:00+00:00 24.0855 24.0727 24.0727
2024-01-01 01:00:00+00:00 24.0662 24.0609 24.0635
2024-01-01 02:00:00+00:00 24.0721 24.0629 24.062224 horas cada uno de los 731 días, fines de semana incluidos: en cripto no hay sesiones, festivos ni subastas, y las marcas de tiempo vienen en UTC. Lo primero que se pierde al pasar de acciones a cripto es el calendario (lección 1.1.2); lo segundo, la idea de «precio de cierre», que aquí es una convención (a menudo, la vela diaria que empieza a las 00:00 UTC).
Los tres precios casi coinciden. La diferencia relativa entre el perpetuo y el índice es la prima del perpetuo; la del spot de un exchange frente al índice, la base de ese exchange. Medidas en puntos básicos (0,01 %):
xsn["prima_pb"] = 1e4 * (xsn["perpetuo"] / xsn["indice"] - 1)
xsn["base_spot_pb"] = 1e4 * (xsn["spot"] / xsn["indice"] - 1)
xsn[["prima_pb", "base_spot_pb"]].describe().round(2) prima_pb base_spot_pb
count 17544.00 17544.00
mean 1.01 -0.07
std 5.54 4.00
min -17.98 -15.62
25% -2.72 -2.77
50% 0.99 -0.07
75% 4.75 2.57
max 19.64 14.80El spot del exchange se mueve alrededor del índice con media casi nula y una desviación de 4 puntos básicos: lo sigue de cerca. La prima del perpetuo es positiva de media, un punto básico, y oscila más, con extremos de unos ±20 puntos básicos. ¿De qué depende? De la presión de los apalancados: cuando el mercado sube, se abren largos en el perpetuo y su precio se adelanta al spot; cuando cae, al revés.
xsn["ret_30d"] = xsn["indice"].pct_change(30 * 24)
tramo = pd.qcut(xsn["ret_30d"], 5, labels=["caída fuerte", "caída",
"plano", "subida",
"subida fuerte"])
xsn.groupby(tramo, observed=True)["prima_pb"].mean().round(2)ret_30d
caída fuerte -1.54
caída -1.19
plano 1.85
subida 2.09
subida fuerte 3.27
Name: prima_pb, dtype: float64En el quinto de horas con la tendencia de 30 días más alcista, la prima media es de 3,27 puntos básicos; en el de la más bajista, de −1,54. Hora a hora la relación es débil, pero en el horizonte de semanas es clara: el perpetuo recoge el sentimiento de los apalancados, y el funding se encarga de cobrárselo a quien empuja.
El funding, pago a pago
El funding de XSN se liquida cada ocho horas, a las 00:00, 08:00 y 16:00 UTC, como en el perpetuo estándar de Binance,
cuya fórmula sigue1Nota 1 · Binance, «Introduction to Binance Futures Funding Rates»: intervalo por defecto de ocho horas a las 00:00, 08:00
y 16:00 UTC, tipo de interés de 0,01 % por periodo y la fórmula con el clamp de ±0,05 % (enlace en los recursos).
Otros exchanges usan intervalos y topes distintos.. El tipo de cada periodo se calcula con la prima media de las ocho horas anteriores, , más un
término de interés de 0,01 % por periodo recortado a ±0,05 %:
con un tope adicional de ±0,75 % por periodo en estos datos. Si es positivo, cada largo paga por el valor nocional de su posición (cantidad por precio del índice) a los cortos; si es negativo, cobra.
funding = pd.read_csv("xsn_funding_8h.csv",
parse_dates=["ts"]).set_index("ts")
tasa = funding["tasa_funding"]
print(len(tasa), "periodos de 8 h")
print(f"Exactamente 0,01 %: {(tasa.round(6) == 0.0001).mean():.1%}")
print(f"Negativos (cortos pagan): {(tasa < 0).mean():.1%}")
print(f"Máximo: {tasa.max():.4%} mínimo: {tasa.min():.4%}")
por_año = tasa.groupby(tasa.index.year).sum()
print("Suma por año:", (100 * por_año).round(2).to_dict())2192 periodos de 8 h
Exactamente 0,01 %: 64.2%
Negativos (cortos pagan): 12.9%
Máximo: 0.1240% mínimo: -0.1104%
Suma por año: {2024: 11.4, 2025: 10.67}El 64 % de los periodos el funding es exactamente el 0,01 %: mientras la prima media está entre −0,04 % y +0,06 %, el
clamp no recorta y es justo 0,01 %. Ese tipo base, tres veces al día, equivale a un 0,03 %
diario y a casi un 11 % al año: es lo que paga un largo en un mercado tranquilo. En los periodos de euforia el
funding se multiplica por más de diez, y en un 13 % de los periodos es negativo y cobran los largos.
La regla se puede comprobar: con la prima horaria se reconstruye cada tipo publicado. Es el tipo de verificación que conviene hacer con datos reales antes de usarlos en un backtest, porque el instante exacto de cálculo (qué horas entran en la media) cambia el resultado.
prima = xsn["perpetuo"] / xsn["indice"] - 1
# media de las 8 horas ANTERIORES: [t-8h, t), etiquetada en t
p_media = prima.resample("8h", closed="left", label="left").mean()
p_media.index = p_media.index + pd.Timedelta("8h")
calc = (p_media + (0.0001 - p_media).clip(-0.0005, 0.0005)
).clip(-0.0075, 0.0075)
comp = pd.concat([tasa, calc.rename("calculada")], axis=1,
join="inner")
dif = (comp["tasa_funding"] - comp["calculada"]).abs()
print(f"{len(comp)} periodos; diferencia máxima: {dif.max():.1e}")2192 periodos; diferencia máxima: 5.0e-07Los 2.192 tipos coinciden con la reconstrucción salvo por el redondeo a seis decimales del fichero. Si se usa la ventana equivocada (por ejemplo, la media de las ocho horas que siguen a la marca de tiempo) la reconstrucción ya no coincide, y un backtest que usara esa media para anticipar el funding estaría mirando el futuro.
La figura muestra la relación en los tres meses alrededor de la caída de octubre de 2025: arriba, la prima media de
cada periodo de ocho horas; abajo, el funding que sale de ella. Las dos líneas de puntos del panel de arriba marcan la banda de −4 a +6
puntos básicos en la que el clamp no recorta: mientras la prima media está dentro, el funding queda clavado en 1
punto básico. Cuando sale, el funding la sigue: hasta 9,84 puntos básicos el 11 de septiembre, en plena subida, y
por debajo de cero varias veces desde la caída de octubre, con un mínimo de −5,94 el 24 de octubre.
Lo que cuesta un largo apalancado
El funding se paga sobre el nocional, no sobre el margen. Con apalancamiento, un tipo que parece pequeño se convierte en una parte grande del capital puesto. Un largo de 10.000 USD de XSN abierto el primer día de 2025 y mantenido todo el año, con la misma cantidad de tokens:
t25 = tasa.loc["2025"]
precio_funding = xsn["indice"].reindex(t25.index)
cantidad = 10_000 / xsn["indice"].loc["2025-01-01 00:00"]
pagos = cantidad * precio_funding * t25 # > 0: el largo paga
acumulado = pagos.cumsum()
print(f"Cantidad: {cantidad:.2f} XSN; pagos: {len(pagos)}")
print(f"Funding pagado en 2025: {acumulado.iloc[-1]:,.2f} USD")
for apal in (1, 3, 5, 10):
margen = 10_000 / apal
print(f" {apal:>2}x: margen {margen:>8,.0f} USD, funding = "
f"{acumulado.iloc[-1] / margen:.1%} del margen")Cantidad: 158.81 XSN; pagos: 1095
Funding pagado en 2025: 1,060.01 USD
1x: margen 10,000 USD, funding = 10.6% del margen
3x: margen 3,333 USD, funding = 31.8% del margen
5x: margen 2,000 USD, funding = 53.0% del margen
10x: margen 1,000 USD, funding = 106.0% del margenEl funding no se paga a ritmo constante: de enero a marzo, con XSN cayendo de 63 a 39, la cuenta apenas se mueve e incluso cobra; de abril a septiembre, con XSN al alza, se dispara. Al final del año, el total queda cerca de lo que habría costado el tipo base solo (la recta discontinua). Sin apalancamiento, el funding de un año cuesta un 10,6 % de lo invertido: más que un préstamo bancario. Con 3x, un tercio del margen; con 10x, más del margen entero. Para comparar, comprar el token en spot no paga funding (aunque sí cuesta la custodia y el capital inmovilizado). Por eso los largos apalancados en perpetuos son una mala forma de mantener una posición durante meses, y por eso el cash and carry (comprar spot y vender perpetuo, cobrando el funding) es una de las estrategias más populares del sector, con su propio riesgo: la caída del exchange donde está la pata corta o la liquidación de esa pata en una subida violenta.
Dónde se liquida una posición
Un perpetuo se opera con margen: el exchange exige un margen inicial (1/L del nocional con apalancamiento L) y un margen de mantenimiento (un porcentaje menor, ). Si las pérdidas dejan el margen por debajo del de mantenimiento, el motor de riesgo del exchange cierra la posición: la liquidación. Con margen aislado (solo responde el margen de esa posición), sin comisiones ni funding, un largo abierto a se liquida cuando el índice llega a:
y un corto, en . La fórmula es una simplificación: cada exchange aplica su escala de márgenes por tamaño de posición, comisiones de liquidación y un fondo de seguro. Pero da el orden de magnitud: con 10x, una caída de algo menos del 10 % se lleva todo el margen.
def precio_liquidacion(entrada, apal, mant=0.005, lado="largo"):
"""Margen aislado, sin comisiones ni funding."""
if lado == "largo":
return entrada * (1 - 1 / apal + mant)
return entrada * (1 + 1 / apal - mant)
camino = xsn.loc["2025-10-05":"2025-10-15", "indice"]
entrada = camino.iloc[0]
print(f"Entrada: {entrada:.4f} el {camino.index[0]:%Y-%m-%d %H:%M} UTC")
filas = []
for apal in (2, 3, 5, 7, 10, 20):
p_liq = precio_liquidacion(entrada, apal)
tocado = camino[camino <= p_liq]
filas.append({"apal": apal, "p_liq": round(p_liq, 2),
"caida_pct": round(100 * (p_liq / entrada - 1), 1),
"liquidado": (tocado.index[0].strftime("%m-%d %H:%M")
if len(tocado) else "no")})
pd.DataFrame(filas).set_index("apal")Entrada: 85.4608 el 2025-10-05 00:00 UTC
p_liq caida_pct liquidado
apal
2 43.16 -49.5 no
3 57.40 -32.8 no
5 68.80 -19.5 no
7 73.68 -13.8 10-10 22:00
10 77.34 -9.5 10-07 10:00
20 81.62 -4.5 10-05 17:00La figura de la cabecera dibuja el mismo episodio: el índice de XSN del 1 al 15 de octubre de 2025 y el precio de liquidación de cada apalancamiento para un largo abierto el día 5 a las 00:00. El índice cae casi un 15 % en seis días, hasta 72,86 el 11 de octubre. El largo de 20x dura 17 horas; el de 10x, algo más de dos días; el de 7x, casi seis. Los de 5x, 3x y 2x sobreviven, y el 13 de octubre el índice ya ha recuperado buena parte de la caída. La lección es la habitual del apalancamiento (lecciones 0.1.2 y 1.1.5), con un matiz propio de cripto: el mercado no cierra nunca, así que la liquidación puede llegar un domingo a las cuatro de la mañana.
salida = camino.iloc[-1]
for apal in (2, 3, 5):
margen = 1 / apal # por unidad de nocional
pnl = salida / entrada - 1
print(f"{apal}x: margen {pnl / margen:+.1%} "
f"(el índice {pnl:+.1%})")2x: margen -14.9% (el índice -7.4%)
3x: margen -22.3% (el índice -7.4%)
5x: margen -37.1% (el índice -7.4%)Las posiciones que sobreviven terminan el periodo con una pérdida que es su apalancamiento multiplicado por la caída del índice. Y las que se liquidaron no recuperan nada aunque el precio vuelva: la liquidación cristaliza la pérdida en el peor momento. En un backtest, una estrategia apalancada en cripto tiene que simular la liquidación contra el índice hora a hora (o minuto a minuto); usar solo cierres diarios esconde los mínimos intradía que liquidan posiciones.
Futuros con vencimiento y base
Los exchanges de cripto también listan futuros con vencimiento (mensuales o trimestrales), que funcionan como los de la lección 1.2.3: no pagan funding y su precio converge al índice el día del vencimiento. La diferencia con el spot, la base, recoge lo que el mercado espera pagar de funding hasta esa fecha. Anualizada:
con los días hasta el vencimiento. Un futuro trimestral de XSN que descontara el funding medio de 2025 cotizaría con una base anualizada en torno al 11 %. Comprar spot y vender ese futuro fija la base al abrir la operación, sin depender de cómo evolucione el funding: es el cash and carry con fecha.
funding_anual = t25.mean() * 3 * 365
S0 = xsn.loc["2025-12-31 23:00", "indice"]
d = 90
F_teorico = S0 * (1 + funding_anual) ** (d / 365)
print(f"Funding medio de 2025, anualizado: {funding_anual:.2%}")
print(f"Spot {S0:.2f} → futuro a {d} días {F_teorico:.2f} "
f"(base {100 * (F_teorico / S0 - 1):.2f} % en el periodo)")Funding medio de 2025, anualizado: 10.67%
Spot 48.26 → futuro a 90 días 49.49 (base 2.53 % en el periodo)Custodia: CEX, DEX y stablecoins
En acciones, los títulos están en un depositario central y el bróker los registra a nombre del cliente (lección 1.1.1). En cripto, la custodia depende de dónde se opere:
Fuente Mermaid
flowchart TB U[Usuario] -- deposita --> X[Exchange CEX] X --> CX[Custodia del CEX] X --> LI[Libro interno] U -- firma --> W[Wallet propia] W --> SC[Contrato del DEX] SC --> PL[Pool de liquidez]
- Exchange centralizado (CEX). El usuario deposita sus tokens o dólares y el exchange los custodia en sus propias wallets. Las operaciones se cruzan en un libro de órdenes interno, como en una bolsa, y solo se apuntan en su contabilidad: no pasan por la cadena. Es rápido y barato, pero el saldo del usuario es un crédito contra el exchange. Si el exchange quiebra, sufre un robo o congela las retiradas, el usuario es un acreedor más.
- Exchange descentralizado (DEX). El usuario opera desde su propia wallet, firmando cada transacción, contra un contrato inteligente. En los más comunes no hay libro, sino un pool de liquidez que fija el precio con una fórmula. No hay custodio intermediario, pero hay otros riesgos: errores en el contrato, comisiones de la red, operaciones de terceros que se adelantan a la propia y, sobre todo, la custodia de las claves: quien las pierde, pierde los fondos.
Una stablecoin es un token diseñado para mantener un precio fijo frente a una moneda, casi siempre el dólar. Las más usadas están respaldadas por reservas (efectivo, letras del Tesoro) que custodia su emisor, y son la «moneda» de casi todos los pares de cripto: XSN/USDT o XSN/USDC, no XSN/USD. Su riesgo es el de su emisor y sus reservas: si el mercado duda de que pueda reembolsar, la stablecoin cotiza por debajo de 1 (pierde la paridad o depeg), y todos los precios expresados en ella quedan distorsionados.
Datos de cripto: lo que hay que vigilar
- Cada exchange tiene su precio. El spot de XSN en un exchange se separa del índice unos puntos básicos de media, y en momentos de estrés mucho más. Un backtest con los precios de un exchange y una ejecución en otro mezcla dos activos ligeramente distintos.
- Precio de marca, índice y último precio. Para el funding y la liquidación cuenta el índice o el precio de marca (mark price), no el último precio del perpetuo. Muchas APIs devuelven por defecto el último precio.
- 24/7 y UTC. Velas diarias a las 00:00 UTC, fines de semana con poca liquidez y pagos de funding a horas fijas. Un remuestreo con la zona horaria local desplaza todo (lección 0.4.4).
- Volumen declarado. Algunos exchanges inflan el volumen con operaciones contra sí mismos. Para comparar liquidez, la profundidad del libro y la horquilla dicen más que el volumen (lecciones 1.1.3 y 1.3.5).
- Símbolos y contratos. En ccxt, el spot es
XSN/USDTy el perpetuo linealXSN/USDT:USDT; un perpetuo inverso (liquidado en el propio token) tiene otra fórmula de P&L. Hay que saber cuál se descarga.
Con ccxt, la misma API sirve para casi cualquier exchange. Este código descarga velas y el histórico de funding de un perpetuo real; no se ejecuta aquí porque necesita red (la descarga con paginación y reintentos es la lección 1.4.1):
import ccxt
ex = ccxt.binanceusdm() # futuros de margen en USDT
simbolo = "BTC/USDT:USDT" # perpetuo lineal
velas = ex.fetch_ohlcv(simbolo, timeframe="1h", limit=500)
historial = ex.fetch_funding_rate_history(simbolo, limit=500)
funding_real = pd.DataFrame(historial)[["datetime",
"fundingRate"]]fetch_ohlcv devuelve una lista de velas [ms, apertura, máximo, mínimo, cierre, volumen] (el mismo formato que
xsn_ccxt_ohlcv.json, el ejemplo de los datos del nivel) y fetch_funding_rate_history, una lista de diccionarios con
la marca de tiempo y el tipo de cada periodo.
Ejercicios
- Calcula el resultado de un cash and carry con XSN en 2025: comprar 10.000 USD de spot el 1 de enero y vender la misma cantidad de tokens en el perpetuo, cobrando el funding. ¿Cuánto gana la posición por funding y cuánto por precio? (Ignora comisiones y supón que las dos patas se cierran el 31 de diciembre a las 23:00.)
Solución
ini, fin = "2025-01-01 00:00", "2025-12-31 23:00"
spot_pnl = cantidad * (xsn.loc[fin, "spot"] - xsn.loc[ini, "spot"])
perp_pnl = -cantidad * (xsn.loc[fin, "perpetuo"]
- xsn.loc[ini, "perpetuo"])
cobrado = pagos.sum() # el corto cobra lo que pagan los largos
print(f"Precio, spot: {spot_pnl:+,.2f} perpetuo: {perp_pnl:+,.2f}")
print(f"Funding cobrado: {cobrado:+,.2f} USD")
total = spot_pnl + perp_pnl + cobrado
print(f"Total: {total:+,.2f} USD ({total / 10_000:+.2%})")Precio, spot: -2,333.66 perpetuo: +2,337.33
Funding cobrado: +1,060.01 USD
Total: +1,063.68 USD (+10.64%)Las dos patas de precio casi se anulan: −2.333,66 USD en el spot y +2.337,33 en el perpetuo, un neto de 3,67 USD que sale de la pequeña diferencia entre los dos precios al abrir y al cerrar. Del resultado, +1.063,68 USD (un 10,64 %), casi todo es funding cobrado. Es un rendimiento sin riesgo de dirección, pero no sin riesgo: el capital está en un exchange (riesgo de contraparte) y la pata corta puede liquidarse en una subida brusca si no se mantiene margen suficiente.
- Repite la tabla de liquidaciones para cortos abiertos a las 00:00 del 11 de octubre de 2025, cerca del mínimo de la caída, y comprueba cuáles se liquidan antes del 15 de octubre.
Solución
tramo = xsn.loc["2025-10-11":"2025-10-15", "indice"]
p0 = tramo.iloc[0]
print(f"Entrada del corto: {p0:.4f}")
for apal in (3, 5, 10, 20):
p_liq = precio_liquidacion(p0, apal, lado="corto")
toca = tramo[tramo >= p_liq]
cuando = (toca.index[0].strftime("%m-%d %H:%M") if len(toca)
else "no")
print(f"{apal:>2}x: liquidación en {p_liq:.2f} → {cuando}")Entrada del corto: 72.8819
3x: liquidación en 96.81 → no
5x: liquidación en 87.09 → 10-13 12:00
10x: liquidación en 79.81 → 10-12 02:00
20x: liquidación en 76.16 → 10-11 16:00Un corto abierto tras la caída sufre el rebote: el índice sube desde 72,88 hasta por encima de 87 en poco más de dos días, y los cortos de 5x o más se liquidan en la subida; el de 20x, a las 16 horas de abrirse. El riesgo de liquidación es simétrico: la volatilidad de cripto castiga el apalancamiento en las dos direcciones.
- Un amigo guarda sus stablecoins en un CEX porque «una stablecoin no puede bajar». Enumera los riesgos que asume.
Solución
Dos capas de riesgo. La de la stablecoin: su precio depende de que el emisor tenga reservas suficientes y líquidas y pueda reembolsarlas; si el mercado lo duda, pierde la paridad, y en la UE conviene comprobar si el emisor está autorizado con MiCA. La del exchange: el saldo es un crédito contra el CEX, que puede quebrar, sufrir un robo o congelar las retiradas; y si el exchange no está autorizado para operar en su país, la protección es menor. Repartir entre emisores y exchanges, o custodiar en una wallet propia (con el riesgo de perder las claves), reduce el riesgo, pero no lo elimina.
Footnotes
-
Binance, «Introduction to Binance Futures Funding Rates»: intervalo por defecto de ocho horas a las 00:00, 08:00 y 16:00 UTC, tipo de interés de 0,01 % por periodo y la fórmula con el
clampde ±0,05 % (enlace en los recursos). Otros exchanges usan intervalos y topes distintos. ↩
Respuesta plegada en cada pregunta
Autoevaluación
El funding rate de un perpetuo es +0,03 % en un periodo de ocho horas. ¿Qué ocurre al liquidarse?
- ALos cortos pagan a los largos el 0,03 % de su posición
- BLos largos pagan a los cortos el 0,03 % del valor nocional de su posición
- CEl exchange cobra un 0,03 % a todos
- DNada: el funding solo se aplica al cerrar la posición
Ver respuesta
Respuesta B. Los largos pagan a los cortos el 0,03 % del valor nocional de su posición
Funding positivo significa que el perpetuo cotiza por encima del índice y los largos pagan a los cortos, en proporción al valor nocional de la posición, no al margen. El pago va de una parte a la otra; el exchange solo lo intermedia.
¿Por qué el funding de XSN es exactamente 0,01 % en el 64 % de los periodos?
- APorque la regla suma a la prima un término
clamp(0,01 % − P, ±0,05 %): mientras la prima media esté entre −0,04 % y +0,06 %, el resultado es justo 0,01 % - BPorque el exchange lo fija a mano
- CPorque la prima del perpetuo es siempre 0,01 %
- DPor casualidad
Ver respuesta
Respuesta A. Porque la regla suma a la prima un término
clamp(0,01 % − P, ±0,05 %): mientras la prima media esté entre −0,04 % y +0,06 %, el resultado es justo 0,01 %Con
Pentre −0,04 % y +0,06 %, el términoclamp(0,01 % − P, …)vale0,01 % − Psin recortar, yP + (0,01 % − P) = 0,01 %. Solo cuando la prima sale de esa banda el funding se separa del tipo base.- APorque la regla suma a la prima un término
Un largo de 10x en un perpetuo, con margen aislado y un margen de mantenimiento del 0,5 %, entra a 100. ¿Dónde se liquida, aproximadamente?
- AEn 90
- BEn 99,5
- CEn 90,5
- DEn 50
Ver respuesta
Respuesta C. En 90,5
La liquidación llega cuando la pérdida deja el margen en el de mantenimiento:
100 × (1 − 1/10 + 0,005) = 90,5. Una caída del 9,5 % se lleva el margen de una posición de 10x; con comisiones y el fondo de seguro, algo antes.¿Qué diferencia de custodia hay entre un CEX y un DEX?
- ANinguna: en los dos el usuario controla sus claves
- BEn un DEX el exchange custodia los fondos en una cámara
- CEn un CEX las operaciones se liquidan en la cadena una a una
- DEn un CEX el exchange custodia los fondos y el usuario tiene un saldo frente a él; en un DEX el usuario opera desde su propia wallet contra un contrato inteligente
Ver respuesta
Respuesta D. En un CEX el exchange custodia los fondos y el usuario tiene un saldo frente a él; en un DEX el usuario opera desde su propia wallet contra un contrato inteligente
Depositar en un CEX es prestar los activos al exchange: lo que el usuario ve es un apunte en su contabilidad interna. Si el exchange quiebra o congela las retiradas, ese saldo es un crédito contra él. En un DEX no hay intermediario custodio, pero el riesgo pasa al contrato y a la gestión de las propias claves.
¿Por qué el índice que usa un exchange para el funding y la liquidación es un precio compuesto de varios mercados?
- APara que sea más volátil
- BPara que una operación aislada o un libro poco profundo en un solo mercado no dispare liquidaciones ni funding extremos
- CPorque así lo exige MiCA
- DPorque el spot no existe en cripto
Ver respuesta
Respuesta B. Para que una operación aislada o un libro poco profundo en un solo mercado no dispare liquidaciones ni funding extremos
Si la liquidación dependiera del último precio del propio perpetuo, bastaría con barrer su libro un instante para liquidar posiciones ajenas. Un índice de varios exchanges es más difícil de mover. Por eso, al hacer un backtest, la liquidación se comprueba contra el índice (o el precio de marca), no contra el último precio.
Ideas clave
- Spot es comprar el token; un futuro con vencimiento converge al spot en una fecha; un perpetuo no vence y se mantiene cerca del índice con pagos periódicos de funding.
- Funding positivo: el perpetuo cotiza con prima y los largos pagan a los cortos. Se calcula sobre el nocional, así que con apalancamiento pesa mucho sobre el margen.
- En XSN, el funding de 2025 suma un 10,7 % del nocional: un largo de 3x mantenido todo el año paga en funding cerca de un tercio de su margen.
- Con margen aislado, un largo de L veces se liquida tras una caída de algo menos de 1/L. En la caída de octubre de 2025, los largos de 7x a 20x abiertos el día 5 quedaron liquidados; los de 5x y menos, no.
- En un CEX el exchange custodia los fondos; en un DEX los custodia el usuario y el riesgo pasa al contrato inteligente y a sus claves. Una stablecoin solo vale lo que valgan sus reservas y su emisor.
- Los datos cripto son 24/7 y en UTC, cada exchange tiene su propio precio y el volumen declarado no siempre es fiable: el índice y la fuente importan.