Saltar al contenido
Lecciones de Finanzas

Creadores de mercado automatizados (AMM)

La fórmula de producto constante: x · y = k

La única ecuación que pone precio a cada operación de un AMM. Cómo x·y=k convierte dos reservas de tokens en un precio, por qué un swap recorre el pool a lo largo de una curva, la comisión del 0,3 % y un swap resuelto al detalle.

9 min Actualizado 4 jun 2026

La lección anterior os dejó con una promesa: un AMM pone precio a las operaciones contra un pool usando una fórmula, y esa fórmula es todo el truco de magia. Aquí la tenéis, en toda su anticlimática gloria:

xy=kx \cdot y = k

Dos reservas. Las multiplicáis. Mantenéis la respuesta constante. Esa única línea decide el precio de cada swap, por qué las operaciones grandes cuestan más, por qué el pool nunca se puede quedar seco y cómo cobran los proveedores de liquidez. Es la multiplicación más trascendental de las finanzas descentralizadas — y en cuanto hace clic, el resto de los AMM son solo notas al pie. Vamos a hacer que haga clic.

Antes de leer — adivina

Un pool tiene 100 ETH y 200.000 USDC. Alguien compra ETH añadiendo USDC. Justo después de ese swap, ¿qué debe ser cierto del producto (reserva de ETH) × (reserva de USDC)?

El invariante: mantén el producto constante

Llamad a las dos reservas xx e yy — digamos que xx es el ETH del pool e yy es el USDC. El pool vive según una sola regla:

xy=kx \cdot y = k

donde kk es un número fijo, el invariante. A un swap se le permite cambiar xx y cambiar yy tanto como quiera — pero debe dejar su producto kk sin cambios. Metéis un token dentro (esa reserva sube), sacáis el otro token fuera (esa reserva baja), y el contrato elige exactamente cuánto sale para que el producto siga siendo igual a kk.

Pensadlo como un balancín con una regla muy concreta: los dos asientos pueden moverse libremente, pero el área del rectángulo que trazan está atornillada a una constante. Empujad un lado hacia abajo y el otro tiene que subir — y no en igual medida, sino en lo que haga falta para mantener el producto fijo.

Metamos nuestros números. Un pool de 100 ETH y 200.000 USDC tiene:

k=100×200000=20,000,000k = 100 \times 200000 = 20{,}000{,}000

Esos 20 millones son el carné de identidad del pool. Cada estado legal de este pool — cada combinación de ETH y USDC en la que puede estar tras cualquier secuencia de swaps — se sitúa sobre la curva donde xy=20,000,000x \cdot y = 20{,}000{,}000.

Info:

k no es un precio

Un error tentador: pensar que kk es el precio. No lo es. kk solo mide cuánta liquidez tiene el pool — apenas cambia. El precio sale del cociente de las reservas, que haremos a continuación. Dos pools pueden compartir el mismo precio pero tener un kk radicalmente distinto (uno profundo, otro superficial). Mantened separados en la cabeza “producto = profundidad, cociente = precio”.

El precio spot = el cociente de las reservas

Entonces, ¿dónde está el precio? Es el cociente de las dos reservas. El precio spot del ETH en términos de USDC es:

precio=yx=reserva de USDCreserva de ETH\text{precio} = \frac{y}{x} = \frac{\text{reserva de USDC}}{\text{reserva de ETH}}

Para nuestro pool:

precio=200000100=2000\text{precio} = \frac{200000}{100} = 2000

Un ETH se cotiza a $2000. Intuitivamente: hay 2000 USDC en el pool por cada 1 ETH, así que el pool los valora a 2000 contra 1. Este es el precio spot — el precio para una operación infinitesimalmente pequeña, la pendiente de la curva en el punto actual del pool. En el instante en que operáis una cantidad real y finita, el cociente se desplaza y el precio que pagáis de verdad se aleja de él. Esa brecha es toda la historia de la siguiente sección.

Rellena la mecánica de un pool de producto constante.

Pick the right option for each blank, then check.

Un pool de producto constante mantiene el de sus dos reservas igual a una constante . El precio spot del token X es la reserva de . Cuando vendes el token X al pool, la reserva de X y la reserva de Y , así que el precio de X — medido como y entre x — .

Un swap recorre el pool a lo largo de la curva

Aquí está la imagen geométrica que lo hace todo intuitivo. Reordenad el invariante:

y=kxy = \frac{k}{x}

Eso es una hipérbola — una curva que se precipita pronunciadamente por la izquierda, se aplana en el medio y se ciñe a los ejes en los extremos. Cada estado posible del pool es un único punto que se desliza por esta curva. Un swap no salta el punto a algún sitio nuevo; lo recorre a lo largo de la hipérbola desde las reservas viejas hasta las nuevas.

Para hacer un swap, vendéis una cantidad Δx\Delta x del token X al pool. Las nuevas reservas son:

  • Nueva reserva de X: x=x+Δxx' = x + \Delta x (añadisteis X)
  • Nueva reserva de Y: y=kxy' = \dfrac{k}{x'} (forzada por el invariante)
  • Y que recibís: Δy=yy\Delta y = y - y' (la caída de la reserva de Y)

Trabajemos un ejemplo real. Queréis comprar ETH añadiendo 2.000 USDC. Aquí el ETH es el token que sale (X) y el USDC el que entra (Y), así que lo más limpio es seguir la reserva de USDC como aquella a la que añadimos:

  • Reservas viejas: 100 ETH, 200.000 USDC, con k=20,000,000k = 20{,}000{,}000.
  • Añadid 2.000 USDC → nueva reserva de USDC y=200000+2000=202000y' = 200000 + 2000 = 202000.
  • El invariante fuerza la nueva reserva de ETH: x=ky=2000000020200099,0099x' = \dfrac{k}{y'} = \dfrac{20000000}{202000} \approx 99{,}0099.
  • ETH que recibís: 10099,00990,990100 - 99{,}0099 \approx 0{,}990 ETH.

Así que 2.000 USDC os compraron unos 0,990 ETH. ¿Qué precio pagasteis de verdad?

precio medio=20000.9902020\text{precio medio} = \frac{2000}{0.990} \approx 2020

Pagasteis unos $2020 por ETH — ya peor que el precio spot de $2000 que veíais antes de operar, aunque solo moviérais el pool un par de miles de dólares. Y el nuevo precio spot del pool también se ha movido:

precio nuevo=20200099.00992040\text{precio nuevo} = \frac{202000}{99.0099} \approx 2040

La siguiente persona que compre ETH parte de $2040, no de $2000. Vuestra operación empujó el precio hacia arriba, y se queda arriba hasta que alguien opere en sentido contrario. Arrastrad el deslizador de abajo y observad cómo el punto del pool se arrastra por la curva — las lecturas muestran vuestro precio medio divergiendo del spot a medida que la operación crece.

Producto constante: x · y = kx · y = 20,000,000
Reserva de ETH (x)Reserva de USDC (y)
X vendido al pool
0
Y recibido
0
Precio spot anterior
2,000
Precio spot nuevo
2,000
Producto constante k100 × 200,000 = 20,000,000100 × 200,000 = 20,000,000

Empieza en 100 ETH / 200.000 USDC, con un precio spot de 2000. A medida que vendes más ETH al pool, el punto se desliza por la hipérbola: la reserva de ETH sube, la de USDC baja, y cada ETH extra que vendes consigue menos USDC que el anterior. El producto k se mantiene clavado. Esa brecha creciente entre el spot y lo que de verdad recibes es el deslizamiento (slippage) — lección 4.

Porque la hipérbola nunca toca los ejes. Mirad y=k/xy = k/x: a medida que compráis más y más ETH, la reserva de ETH xx encoge hacia 0 — y k/xk/x se dispara hacia el infinito. Para comprar ETH cuando solo queda una rendija, tendríais que verter una cantidad casi infinita de USDC, porque el precio (y/xy/x) se cohetea hacia el infinito cuando x0x \to 0. Lo mismo vale al revés: cuando y0y \to 0, el precio colapsa a cero. Así que las reservas se aproximan asintóticamente a los ejes pero nunca pueden alcanzarlos. Podéis comprar el 99,9 % del ETH si sois lo bastante ricos y temerarios, pero la última unidad es matemáticamente incomprable. Esa asíntota es la genialidad de usar una hipérbola: el pool se autoprotege y no puede vaciarlo una sola operación.

Por qué las operaciones grandes pagan peores precios

Fijaos en el patrón del ejemplo resuelto: una operación diminuta paga ≈ spot, pero el precio que de verdad obtenéis se degrada a medida que la operación crece. Eso no es un fallo — sale directamente de la forma de la curva. La hipérbola es convexa: cuanto más adentro empujáis una reserva, más empinado se vuelve el compromiso, así que cada unidad adicional que compráis cuesta más que la anterior.

Una rápida idea de la escala, todo desde el mismo pool de 100 ETH / 200.000 USDC:

USDC que añadesETH que obtienesPrecio medio pagadoNuevo precio spot
2.000≈ 0,990≈ $2.020≈ $2.040
20.000≈ 9,091≈ $2.200≈ $2.420
100.000≈ 33,33≈ $3.000≈ $4.500

Gastad el 1 % del pool y apenas lo notáis ($2020 frente a $2000). Gastad la mitad del pool y pagáis un 50 % por encima del spot. La lección: operaciones pequeñas ≈ precio spot; operaciones grandes pagan mucho más, y la penalización se acelera. Este empeoramiento es la semilla del impacto en precio / deslizamiento (slippage), que tiene su propia lección completa (lección 4) — por ahora, interiorizad que es la curva, no una comisión, lo que hace que el tamaño salga caro.

Clasifica cada afirmación según describa una operación PEQUEÑA o una operación GRANDE contra un pool de producto constante.

Place each item in the right group.

  • Empuja el punto del pool un largo trecho hacia abajo por la hipérbola
  • Apenas mueve el punto del pool a lo largo de la curva
  • El precio medio está muy cerca del precio spot
  • El nuevo precio spot queda casi sin cambios después
  • El precio medio acaba muy por encima del spot
  • Deja al siguiente operador frente a un precio notablemente distinto

La comisión: cómo cobran de verdad los LP

Hasta ahora la matemática ha sido sin fricción, y un pool sin fricción no pagaría nada a sus proveedores de liquidez. Los AMM reales añaden una comisión de swap. La comisión clásica de Uniswap v2 es del 0,3 %, y el mecanismo es deliciosamente sencillo: la comisión se descrema de vuestro input y se deja dentro del pool en lugar de operarse contra la curva.

Concretamente, cuando añadís 2.000 USDC con una comisión del 0,3 %:

  • La comisión es 0.003×2000=60.003 \times 2000 = 6 USDC.
  • Solo el 99,7 % de vuestro input — 1.994 USDC — opera de verdad contra la curva y determina vuestro ETH de salida.
  • Los 6 USDC de comisión se depositan en el pool de todos modos.

Como los tokens de comisión se quedan en el pool sin comprar ningún ETH de salida, el pool termina cada swap conteniendo un poco más de lo que el invariante exigía estrictamente — así que kk no se mantiene perfectamente constante, sino que sube un pelín en cada swap. Ese crecimiento lento e implacable de kk es exactamente el ingreso de los LP: su participación en el pool representa ahora un montón mayor de reservas del que pusieron. Cada operación engorda el pool un poco, y los LP poseen una porción del engorde. (Por esto el ”xy=kx \cdot y = k se mantiene constante” de la lección 1 venía con un casi en voz baja — las comisiones lo empujan hacia arriba.)

Info:

Producto constante es un invariante, no el único

Hemos estado estudiando la fórmula de producto constante en concreto — el diseño de Uniswap v2, donde xy=kx \cdot y = k. Es el AMM canónico, pero no el único: los pools para activos que deberían cotizar cerca entre sí (dos stablecoins en dólares, por ejemplo) usan un invariante stableswap distinto que se mantiene casi plano por el medio para recortar el deslizamiento, y otros diseños concentran la liquidez en rangos de precio. La misma gran idea — una fórmula sobre reservas — distinta curva. Esta lección es el cimiento sobre el que todos improvisan.

Empareja cada término con su significado preciso en un pool de producto constante.

Pick a term, then click its definition.

Puntos clave

Success:

Lo que hay que recordar

  • Un pool de producto constante obedece una regla: xy=kx \cdot y = k. Un swap puede cambiar cada reserva pero debe dejar su producto (el invariante kk) esencialmente sin cambios.
  • El precio spot del token X es el cociente de reservas y/xy/x — la profundidad es el producto, el precio es el cociente. Un pool de 100 ETH / 200.000 USDC tiene k=20,000,000k = 20{,}000{,}000 y un precio spot de $2000.
  • Un swap recorre el pool a lo largo de la hipérbola y=k/xy = k/x: añade Δx\Delta x, el invariante fuerza y=k/(x+Δx)y' = k/(x+\Delta x), y recibes yyy - y'. Añadir 2.000 USDC compra ≈0,990 ETH a una media de ≈$2020 — ya por encima del spot.
  • La curva es convexa, así que las operaciones grandes pagan mucho peor que el spot mientras que las diminutas ≈ spot. Esa es la semilla del deslizamiento (lección 4).
  • Nunca puedes vaciar el pool: cuando una reserva → 0 el precio → ∞, así que la curva solo se aproxima asintóticamente a los ejes.
  • La comisión del 0,3 % se descrema de tu input y se deja en el pool, así que kk trepa hacia arriba en cada swap — que es cómo cobran los proveedores de liquidez.

Big picture

La fórmula de producto constante de un vistazo

  • x · y = k
    • El invariante
      • El producto de las reservas es fijo
      • k = profundidad, no precio
      • Los swaps preservan k (casi)
    • Precio
      • Precio spot = y / x
      • Cociente, no producto
      • 100 ETH / 200k USDC → $2000
    • Un swap
      • Recorre y = k/x
      • Convexa → las operaciones grandes cuestan más
      • Nunca puede vaciar el pool
    • La comisión
      • 0,3 % descremado del input
      • Dejada en el pool, empuja k hacia arriba
      • Paga a los LP
Una pantalla para x·y=k — el cimiento sobre el que se construye cada lección posterior de AMM.

Repaso de la lección 2

Pregunta 1 de 50 correctas

Un pool tiene 50 ETH y 100.000 USDC. ¿Cuál es su invariante k y su precio spot para el ETH?

Check your answer to continue.

A continuación: los proveedores de liquidez y los tokens LP — quién llena de verdad el pool, qué reciben a cambio y cómo ese kk que trepa se convierte en su nómina.

Marcar lección como completada