이 페이지는 자동 번역되었습니다. 영어 원문이 정본입니다. 영어로 읽기 →
메인 콘텐츠로 건너뛰기

PM 리스크 시뮬레이션

포트폴리오 증거금에서 설명하는 모든 수치는 사용자 계정 기준으로 조회할 수 있고, 모든 거래는 전송하기 전에 미리 확인할 수 있습니다. 시뮬레이터는 별도의 모델이 아닙니다. 주문을 검사하고 청산 감시 프로세스를 실행하는 것과 동일한 증거금 코드를, 동일한 정책과 동일한 엔진 스냅샷 위에서 실행합니다.

앱에서 확인하기​

포트폴리오 증거금 페이지(/risk/span)는 PM 계정에 대해 다음을 보여줍니다.

  • 자산가치(equity), IM, MM, 매수 가능 금액, 유지 버퍼
  • 스캐닝 리스크, 옵션 하한(floor), 감마 오버레이를 각각 별도로 표시
  • 기초자산별 시나리오 그리드와 각 시나리오 및 각 레그의 손익
  • 포지션 시뮬레이션: 현재 포트폴리오에 가상 레그를 추가하거나 포트폴리오 전체를 대체한 뒤, 현재 IM 및 MM과 시뮬레이션된 IM 및 MM을 비교합니다. 시뮬레이션은 주문을 넣거나 계정 상태를 변경하지 않습니다.

이 페이지는 5초마다 갱신됩니다.

엔드포인트​

엔드포인트확인할 수 있는 내용인증
GET /portfolio?wallet=현재 자산가치, IM, MM 및 포지션없음
GET /risk/grid?wallet=현재 스캐닝 리스크, 하한, 오버레이, 기초자산별 시나리오 매트릭스없음
POST /risk/simulate/portfolio포지션이 달라졌을 경우의 IM 및 MM없음
POST /risk/simulate/orders주문 또는 패키지가 증거금 검사를 통과하는지 여부와 그 IM 비용없음
GET /liquidation/status?wallet=청산 상태 및 부족액없음

모든 엔드포인트는 wallet으로 사용자의 매니저 지갑을 받으며, Hypercall이 이를 PM 계정으로 매핑합니다. GET /risk/grid는 PM 계정에 대해서만 응답합니다.

리스크 그리드​

GET /risk/grid는 계정의 현재 증거금 요건과 함께, 기초자산별로 해당 기초자산이 평가되는 시나리오(추가 시나리오를 포함한 해당 기초자산 고유의 그리드)를 다음 항목과 함께 반환합니다.

  • scenarios[]: id, spot_shock_pct, vol_shock_pct, pnl_weight, is_tail 및 해당 시나리오에서 기초자산의 total_pnl
  • extended_risk_matrix.instruments[]: scenarios와 순서가 맞춰진 레그별 scenario_pnls

최상위의 scanning_risk가 실제로 부과되는 수치이며, 각 기초자산의 최대 가중 손실을 합산한 값입니다. 매트릭스의 worst_scenario_index는 단일 기초자산 그리드에 대한 진단용 값이며, 기초자산 전체에 걸친 증거금 산정에는 사용되지 않습니다.

포트폴리오 시뮬레이션​

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(기본값)는 부호가 있는 각 수량을 현재 포지션에 더합니다. false는 포트폴리오를 목록에 있는 포지션으로 정확히 대체합니다.
  • 최대 50개 심볼까지 지정할 수 있으며, 각 심볼은 한 번만 나열해야 합니다. 옵션 심볼과 퍼프 심볼을 모두 사용할 수 있습니다.
  • 포지션은 현재 마크 가격으로 평가됩니다. 프리미엄은 부과되지 않으며 호가창도 참조하지 않습니다.

응답에는 current, simulated, delta가 포함됩니다. 각 요약에서 다음 필드를 확인하십시오.

필드의미
equity방법론 페이지에서 정의한 자산가치
position_initial_margin포지션에 대한 IM: max(스캐닝 리스크, 하한) + 오버레이
position_maintenance_marginMM, 0.85 × 포지션 IM
open_orders_initial_margin현재 대기 중인 주문에 대한 예약분
total_initial_margin포지션 IM과 미체결 주문 IM의 합
initial_margin_available자산가치에서 총 IM을 뺀 값. 음수이면 새로운 리스크가 거부됩니다
maintenance_margin_available자산가치에서 MM을 뺀 값. 음수이면 청산됩니다
scanning_risk, option_floor, gamma_overlay세 가지 구성 요소
underlyings[]GET /risk/grid와 동일한 기초자산별 시나리오 매트릭스
venue_liquidationHyperliquid 퍼프를 보유한 경우에 표시됩니다. 각 Hyperliquid 구획이 그리드를 견디는지 여부(hedge_survives), 손실될 담보, 거래소를 반영한 IM 및 MM을 나타냅니다

metadata는 시뮬레이션이 실행된 엔진 스냅샷(l2_seq, evaluated_at_ms)을 식별합니다.

주문 시뮬레이션​

POST /risk/simulate/orders는 실제로 주문을 넣지 않고 주문 접수 과정 중 재무적인 부분을 실행합니다.

  • execution_mode: "resting"은 정확히 하나의 주문을 받아 대기 주문으로 증거금을 부과합니다.
  • execution_mode: "atomic"은 콤보 주문의 증거금 산정 방식처럼, 레그들을 함께 체결되는 하나의 패키지로 평가합니다.
  • hypothetical_open_orders를 사용하면 아직 넣지 않은 대기 주문을 추가할 수 있으며, 이는 orders보다 먼저 평가됩니다.

응답에는 admissible이 추가되며, 값이 false인 경우 rejection_reason이 함께 반환됩니다. delta 블록은 해당 주문이 소비할 IM을 보여줍니다. 요청 예시는 인증에 있습니다.

주문 시뮬레이터는 증거금 관련 질문에만 답합니다. 매칭, 가격 밴드, RPI, 논스, 요청 한도, 거래 중단은 시뮬레이션되지 않으며, 실제 주문을 전송하기 전에 엔진 상태가 바뀔 수 있습니다.

오류​

상태error의미
400invalid_simulation잘못된 형식의 요청, 알 수 없거나 만기된 심볼, 중복 심볼, 또는 50개를 초과하는 항목
429risk_simulation_saturated시뮬레이션 처리 용량은 공유되며 제한되어 있습니다. 백오프를 적용해 재시도하십시오
503risk_inputs_unavailable입력값이 누락되었거나 오래되었습니다. 예를 들어 옵션에 IV 마크가 없거나 HyperCore 스냅샷이 오래된 경우입니다. 실제 주문도 같은 이유로 거부됩니다

시뮬레이션에 대한 요청 한도는 요청 한도에 나와 있습니다.

관련 문서​