Cómo crear un bot de market making en Hyperliquid
- hyperliquid market maker
- tutorial de market making en HL
- bot market maker en Hyperliquid
- market making on-chain en perpetuos
- market making con la API de Hyperliquid
El market making es una de las estrategias más antiguas de los mercados financieros: el market maker coloca órdenes de compra y venta al mismo tiempo, busca capturar el diferencial entre ambas puntas —el spread— y, al hacerlo, aporta liquidez al mercado.
Con el crecimiento de exchanges de perpetuos on-chain como Hyperliquid, desarrolladores independientes y equipos cuantitativos pequeños pueden participar en estrategias de market making mediante APIs abiertas, sin necesitar una estructura institucional. En esta guía repasamos cómo construir un bot de market making en Hyperliquid: lógica de estrategia, arquitectura técnica, gestión de riesgos y buenas prácticas para proteger las claves de firma con una hardware wallet OneKey.
Qué significa hacer market making en contratos perpetuos
En un mercado spot tradicional, el market maker administra inventario físico del activo. En un mercado de contratos perpetuos, ese “inventario” se refleja como una exposición neta larga o corta.
Un market maker ideal intenta mantenerse lo más neutral posible en delta, es decir, sin apostar direccionalmente por la subida o caída del precio. Su objetivo es actualizar órdenes de compra y venta con frecuencia para capturar spread, no predecir el movimiento del mercado.
Hyperliquid usa una arquitectura de libro de órdenes similar a la de un exchange centralizado, pero con liquidación on-chain y fondos bajo autocustodia del usuario. Su documentación oficial describe los tipos de órdenes, estructura de comisiones y especificaciones de API; es lectura obligatoria antes de poner un bot en producción.
Lógica principal de un bot market maker
Cálculo del spread
La versión más simple de una estrategia simétrica consiste en colocar órdenes a ambos lados del precio medio (mid price):
precio_compra = mid_price * (1 - spread / 2)
precio_venta = mid_price * (1 + spread / 2)
El spread debe ser suficiente para cubrir costos y riesgos como:
- Comisiones de trading, especialmente si una orden termina ejecutándose como taker.
- Movimiento adverso del precio, también conocido como riesgo de adverse selection.
- Costos o variaciones asociados a la tasa de funding.
Consulta la documentación oficial de Hyperliquid para revisar los niveles de comisiones por mercado y definir un spread base acorde a tu tamaño de capital, frecuencia de operación y tolerancia al riesgo.
Lógica de actualización de órdenes
El precio cambia constantemente, por lo que las órdenes deben actualizarse para mantener cotizaciones razonables. Algunos disparadores comunes son:
- Por tiempo: refrescar cada cierto intervalo, por ejemplo, cada 5 segundos.
- Por desviación de precio: refrescar cuando el mid price se aleja de tus órdenes actuales más allá de un umbral definido.
- Por ejecución: cuando una orden se llena, colocar una nueva orden para reponer liquidez.
En producción, normalmente se combinan varios disparadores. La idea es evitar refrescar demasiado —lo que puede generar costos operativos y problemas con límites de API— sin dejar cotizaciones obsoletas que otros participantes puedan arbitrar.
Gestión del riesgo de inventario
Durante el market making es normal que se acumule inventario: una punta se ejecuta repetidamente mientras la otra no. Esto provoca que la posición neta se aleje de la neutralidad. El riesgo de inventario es uno de los principales riesgos de esta estrategia.
Formas comunes de controlarlo:
- Skew de posición: si el bot está netamente largo, desplaza tanto la compra como la venta hacia abajo para incentivar ventas y desincentivar compras. Si está netamente corto, hace lo contrario. Así intenta empujar la posición de vuelta hacia neutralidad.
- Límites duros de posición: si la posición neta supera un umbral, el bot deja de cotizar en la dirección que aumenta el riesgo hasta que la exposición vuelva a niveles aceptables.
# Pseudocódigo: ajuste de precios según posición neta
position = get_net_position("BTC") # positivo = largo, negativo = corto
skew_factor = -position * inventory_risk_param # parámetro ajustable
bid_price = mid_price * (1 - spread / 2) + skew_factor
ask_price = mid_price * (1 + spread / 2) + skew_factor
Arquitectura general del sistema
Un bot completo de market making suele dividirse en tres capas principales:
┌─────────────────────────────────────────────────────┐
│ Loop principal del bot │
├──────────────┬──────────────┬────────────────────────┤
│ Capa de datos│ Capa de │ Capa de ejecución │
│ │ estrategia │ │
│ WebSocket │ Cálculo de │ Órdenes/cancelaciones │
│ Libro de │ mid price │ vía REST API │
│ órdenes │ Cálculo de │ Gestión de órdenes │
│ Fills │ spread │ por lotes │
│ │ Skew de │ Firma │
│ │ inventario │ capa hardware OneKey │
│ │ Control de │ │
│ │ riesgo │ │
└──────────────┴──────────────┴────────────────────────┘
│ │
Datos de mercado Envío de órdenes a Hyperliquid
- La capa de datos se conecta por WebSocket para recibir snapshots del libro de órdenes y eventos de ejecución en tiempo real.
- La capa de estrategia calcula precios, spread, tamaño de órdenes y ajustes por inventario.
- La capa de ejecución cancela y coloca órdenes mediante REST API, idealmente por lotes, usando firmas estructuradas EIP-712 para asegurar las solicitudes.
Puntos clave de implementación técnica
Colocar órdenes con REST API
Las APIs de órdenes por lote permiten enviar simultáneamente órdenes de compra y venta, reduciendo latencia y simplificando la gestión:
def refresh_quotes(exchange, coin, bid_px, ask_px, order_size):
# Cancelar órdenes abiertas anteriores
open_orders = get_open_orders(coin)
if open_orders:
cancel_ids = [o["oid"] for o in open_orders]
exchange.bulk_cancel(coin, cancel_ids)
# Enviar nuevas cotizaciones
new_orders = [
build_limit_order(coin, is_buy=True, px=bid_px, sz=order_size),
build_limit_order(coin, is_buy=False, px=ask_px, sz=order_size),
]
return exchange.bulk_orders(new_orders)
Escuchar fills con WebSocket
El polling por REST no suele ser suficiente para reaccionar a ejecuciones en tiempo real. Para eso, conviene suscribirse a eventos de usuario por WebSocket:
def on_user_fill(fill_data):
coin = fill_data["coin"]
side = fill_data["side"] # "B" = compra ejecutada / "A" = venta ejecutada
sz = fill_data["sz"]
px = fill_data["px"]
update_inventory(coin, side, sz, px)
trigger_quote_refresh(coin) # refrescar cotización después del fill
Las conexiones WebSocket pueden caerse. Implementa reconexión automática, re-suscripción a canales y reconstrucción del estado local después de cada reconexión.
Principales riesgos
El market making no es “arbitraje sin riesgo”. Antes de operar con capital real, considera al menos estos riesgos:
- Riesgo de inventario: una posición neta puede crecer en una dirección y generar pérdidas si el mercado se mueve en contra.
- Adverse selection: tus órdenes pueden llenarse justo antes de un movimiento desfavorable.
- Riesgo de liquidez: en mercados poco profundos, salir de una posición puede ser costoso.
- Riesgo de funding: las tasas de funding pueden cambiar y afectar el resultado neto.
- Riesgo técnico: fallas de conexión, errores de código, latencia o problemas de sincronización pueden provocar pérdidas.
- Riesgo de claves: si una clave privada queda expuesta, los fondos asociados pueden estar en peligro.
OneKey hardware wallet: buenas prácticas para proteger las claves del bot
Un bot de market making necesita firmar operaciones con frecuencia, pero eso no significa que debas bajar los estándares de seguridad. Una hardware wallet OneKey mantiene la clave privada en un chip seguro aislado de internet; incluso si el servidor del bot se ve comprometido, un atacante no puede exportar la clave privada directamente.
Una arquitectura recomendada es:
- Usar la función de API Agent de Hyperliquid para crear una wallet o subcuenta dedicada al bot y vincularla a la cuenta principal.
- Administrar la clave de esa wallet o de la cuenta principal con una hardware wallet OneKey, según el flujo de seguridad elegido.
- Hacer que la lógica del bot construya los mensajes de transacción.
- Enviar esos mensajes a un servicio local de firma que interactúe con OneKey.
- Enviar a Hyperliquid la solicitud ya firmada.
Con este diseño, aunque el código del bot sea manipulado, la separación de permisos y la revisión mediante hardware reducen la superficie de ataque. Para estrategias con frecuencia extremadamente alta, puede ser necesario balancear seguridad y rendimiento usando una wallet operativa limitada, mientras OneKey protege la cuenta principal y los movimientos de fondos.
Recomendaciones de optimización
- Combina cancelación y nueva colocación de órdenes en operaciones por lote cuando sea posible.
- Prioriza órdenes
Alo—solo maker— para evitar ejecuciones taker no deseadas y optimizar comisiones maker. - Registra cada fill con timestamp, precio, tamaño y lado para analizar el desempeño de la estrategia.
- Separa el PnL por fuente: captura de spread, pérdidas por inventario, comisiones, funding y deslizamiento.
- Implementa un circuit breaker: si la pérdida diaria supera un umbral, el bot debe detenerse y enviar una alerta.
- Monitorea latencia, reconexiones WebSocket, órdenes rechazadas y respuestas de rate limit.
Preguntas frecuentes
Q1: ¿Cuánto capital necesito para empezar a hacer market making en Hyperliquid?
Hyperliquid no establece un capital mínimo oficial para hacer market making. En la práctica, el umbral depende del precio del mercado, el tamaño mínimo de orden y la volatilidad. Lo más prudente es empezar con tamaño muy pequeño, probar la lógica y aumentar gradualmente solo si el sistema demuestra estabilidad.
Q2: ¿De dónde viene la ganancia de un bot market maker?
Principalmente del spread entre compra y venta. Si el bot logra comprar y vender en precios cercanos capturando la diferencia después de comisiones, puede generar PnL positivo. Sin embargo, mercados más activos también suelen atraer más competencia, y el riesgo de inventario puede borrar o superar la ganancia por spread.
Q3: ¿Cómo puedo probar el bot sin arriesgar fondos reales?
Hyperliquid ofrece un entorno de testnet. Revisa la sección de configuración de testnet en la documentación oficial y cambia los endpoints de API para depurar la estrategia sin operar con capital real.
Q4: ¿Una hardware wallet OneKey puede convertirse en cuello de botella?
Para muchas estrategias cuantitativas, la velocidad de firma de OneKey puede ser suficiente. En escenarios de muy alta frecuencia, por ejemplo, decenas de firmas por segundo, suele ser más práctico usar una arquitectura con API Agent o una wallet operativa limitada, mientras OneKey protege la cuenta principal y las transferencias críticas. El diseño final depende de tu perfil de riesgo y tus necesidades de rendimiento.
Q5: ¿Cómo manejar los límites de API?
Hyperliquid aplica límites de frecuencia a las solicitudes. Consulta la documentación oficial para conocer los umbrales actuales. Una implementación robusta debería usar un algoritmo tipo token bucket, controlar la frecuencia de envío y aplicar retroceso automático cuando reciba respuestas de rate limit, como HTTP 429.
Una alternativa práctica: empezar con OneKey Perps
Construir un bot desde cero requiere tiempo, pruebas, monitoreo y una gestión de riesgo disciplinada. Si todavía estás explorando el mercado de perpetuos o quieres familiarizarte con la experiencia de trading antes de automatizar, OneKey Perps ofrece una interfaz lista para usar dentro del ecosistema OneKey.
Puedes descargar o abrir OneKey, conectar tu wallet y usar OneKey Perps para operar perpetuos de forma más directa, revisar el comportamiento del mercado y entender mejor spreads, funding, liquidez y ejecución antes de desarrollar un bot propio. Es un punto de partida práctico, sin promesas de rendimiento y sin reemplazar tu propio análisis de riesgo.
Conclusión
Crear un bot de market making en Hyperliquid combina finanzas cuantitativas, ingeniería de sistemas y seguridad on-chain. Desde el cálculo del spread hasta la gestión de inventario, cada componente puede mejorar o deteriorar el resultado. Y desde una clave en software hasta una firma protegida por OneKey, cada capa de seguridad importa.
Si no quieres empezar programando desde cero, prueba OneKey y usa OneKey Perps para familiarizarte primero con el trading de perpetuos. Cuando tengas clara la mecánica del mercado, podrás decidir si vale la pena avanzar hacia una estrategia automatizada.
Aviso de riesgo: el market making es una estrategia cuantitativa de alto riesgo. Puede generar pérdidas importantes por volatilidad, fallas técnicas, errores de estrategia, funding, deslizamiento o acumulación de inventario. Los contratos perpetuos con apalancamiento amplifican tanto ganancias como pérdidas potenciales. Este contenido es solo educativo y técnico; no constituye asesoría financiera, legal ni de inversión. Evalúa tu tolerancia al riesgo y cumple con las leyes y regulaciones de tu jurisdicción antes de operar.



