Esta página fue traducida automáticamente. El original en inglés es la versión canónica. Leer en inglés →
Saltar al contenido principal

Simulación del riesgo PM

Cada cifra descrita en Portfolio Margin puede consultarse para su cuenta, y cada operación puede previsualizarse antes de enviarla. El simulador no es un modelo aparte: ejecuta el mismo código de margen, con la misma política y la misma snapshot del motor, que valida sus órdenes y ejecuta el monitor de liquidación.

En la app​

La página Portfolio margin (/risk/span) muestra, para una cuenta PM:

  • equity, IM, MM, poder de compra y colchón de mantenimiento
  • el riesgo de escaneo, el piso de opciones y el overlay de gamma por separado
  • la matriz de escenarios de cada activo subyacente, con el P&L de cada escenario y de cada pata
  • Simulate positions: añada patas hipotéticas a su cartera, o reemplácela, y compare el IM y el MM actuales con los simulados. Una simulación nunca coloca una orden ni modifica el estado de la cuenta.

La página se actualiza cada 5 segundos.

Endpoints​

EndpointQué respondeAutenticación
GET /portfolio?wallet=Equity, IM, MM y posiciones actualesNinguna
GET /risk/grid?wallet=Riesgo de escaneo, piso y overlay actuales, y la matriz de escenarios por activo subyacenteNinguna
POST /risk/simulate/portfolioEl IM y el MM si sus posiciones fueran distintasNinguna
POST /risk/simulate/ordersSi una orden o un paquete pasaría la validación de margen, y su costo de IMNinguna
GET /liquidation/status?wallet=Estado de liquidación y déficitNinguna

Todos reciben su manager wallet como wallet; Hypercall la resuelve a su cuenta PM. GET /risk/grid solo responde para cuentas PM.

Matriz de riesgo​

GET /risk/grid devuelve el requisito actual de la cuenta y, por activo subyacente, los escenarios con los que se evalúa ese activo subyacente (su propia matriz, incluidos los escenarios adicionales) con:

  • scenarios[]: id, spot_shock_pct, vol_shock_pct, pnl_weight, is_tail y el total_pnl del activo subyacente en ese escenario
  • extended_risk_matrix.instruments[]: scenario_pnls por pata, alineados con scenarios

scanning_risk en el nivel superior es la cifra que se cobra: la peor pérdida ponderada de cada activo subyacente, sumadas. El worst_scenario_index de la matriz es un dato de diagnóstico para la matriz de un solo activo subyacente y no determina el margen entre activos subyacentes.

Simulación de cartera​

curl -X POST https://api.hypercall.xyz/risk/simulate/portfolio \
-H 'Content-Type: application/json' \
-d '{
"wallet": "0xYourManagerWallet",
"add_positions": true,
"positions": [
{"symbol": "BTC-20261231-100000-C", "quantity": "-1"},
{"symbol": "BTC-20261231-110000-C", "quantity": "1"},
{"symbol": "BTC-PERP", "quantity": "0.25"}
]
}'
  • add_positions: true (el valor por defecto) suma cada cantidad con signo a su posición actual. false reemplaza su cartera exactamente por la lista.
  • Hasta 50 símbolos, cada uno listado una sola vez. Se aceptan tanto símbolos de opciones como de perpetuos.
  • Las posiciones se valoran a los precios de marca actuales. No se cobra prima ni se consulta el libro de órdenes.

La respuesta contiene current, simulated y delta. En cada resumen, lea:

CampoSignificado
equityEquity según se define en la página de metodología
position_initial_marginIM sobre posiciones: max(riesgo de escaneo, piso) + overlay
position_maintenance_marginMM, 0.85 × IM de posiciones
open_orders_initial_marginReserva para sus órdenes en reposo activas
total_initial_marginIM de posiciones más IM de órdenes abiertas
initial_margin_availableEquity menos IM total. Un valor negativo significa que se rechaza nuevo riesgo
maintenance_margin_availableEquity menos MM. Un valor negativo significa liquidación
scanning_risk, option_floor, gamma_overlayLos tres componentes
underlyings[]La matriz de escenarios por activo subyacente, como en GET /risk/grid
venue_liquidationPresente cuando mantiene perpetuos de Hyperliquid: si cada compartimento de Hyperliquid sobrevive a la matriz (hedge_survives), el colateral que se perdería, y el IM y el MM que tienen en cuenta el venue

metadata identifica la snapshot del motor sobre la que se ejecutó la simulación (l2_seq, evaluated_at_ms).

Simulación de órdenes​

POST /risk/simulate/orders ejecuta la parte financiera de la admisión de órdenes sin colocar nada:

  • execution_mode: "resting" acepta exactamente una orden y la cobra como orden en reposo.
  • execution_mode: "atomic" evalúa las patas como un paquete que se ejecuta en conjunto, del mismo modo en que se margina un combo.
  • hypothetical_open_orders le permite añadir órdenes en reposo que aún no ha colocado, evaluadas antes que orders.

La respuesta añade admissible y, cuando es false, un rejection_reason. El bloque delta muestra el IM que consumiría la orden. Hay ejemplos de solicitudes en Autenticación.

El simulador de órdenes solo responde la pregunta de margen. El matching, las bandas de precio, RPI, los nonces, los límites de tasa y las suspensiones de trading no se simulan, y el estado del motor puede cambiar antes de que envíe la orden real.

Errores​

EstadoerrorQué significa
400invalid_simulationSolicitud mal formada, símbolo desconocido o vencido, símbolo duplicado, o más de 50 elementos
429risk_simulation_saturatedLa capacidad de simulación es compartida y limitada; reintente con backoff
503risk_inputs_unavailableFalta un dato de entrada o está desactualizado, por ejemplo no hay marca de IV para una opción, o una snapshot de HyperCore está desactualizada. La orden real se rechazaría por el mismo motivo

Los límites de tasa de las simulaciones se indican en Límites de tasa.

Relacionado​