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

Changelog

API changes and deprecations for Hypercall testnet and mainnet alpha.

See also: REST API Reference · WebSocket API · Authentication


No new release - July 3, 2026

Additions

  • RFQ provider quote visibility: GET /options-summary can include raw RFQ quote-provider indicative quotes by passing include_rfq_provider_quotes=true or the backward-compatible alias rfq_provider_quotes=true. Limit per-instrument provider quotes with rfq_provider_quotes_limit, provider_quotes_limit, or limit.
  • Indicative market data stream: IndicativeMarketData WebSocket messages now include rfq_provider_quotes so clients can inspect the per-provider RFQ indicative quote set behind the aggregate bid and ask.

Fixes

  • Options summary query parameters: the REST API reference now documents the new /options-summary provider quote query parameters.
  • Unavailable provider quotes: RFQ provider quotes that are no longer available stop appearing in market-data responses promptly.

No new release - June 26, 2026

Deprecation Notices

  • Omitted order route: PlaceOrder accepts omitted route until at least July 4, 2026. POST /order treats omitted route as best_execution and returns Deprecation, Sunset, X-Deprecation-Removal-Unix, and Warning headers. Clients should send route and include it in the PlaceOrder typed data. route will not become required before July 4, 2026, but may become required later.

Additions

  • Optional order route: POST /order now accepts an optional signed route field on PlaceOrder. Clients can send best_execution, book_only, or rfq_only. Omitted route defaults to the current best_execution behavior during the scheduled deprecation window.
  • Book-only order route: clients can send route=book_only to skip RPI/RFQ discovery and dispatch directly to the orderbook. route=best_execution keeps the existing RPI-then-book behavior. route=rfq_only is reserved and currently rejected for /order until RFQ-only order history semantics are implemented.
  • Bulk order route validation: POST /bulk_order supports route=book_only for route-aware requests. Omitted route keeps the existing book-only behavior. route=best_execution and route=rfq_only are rejected on bulk because the bulk endpoint does not run RPI/RFQ routing.

No new release - June 25, 2026

Documentation Fixes


No new release - June 10, 2026

Documentation Fixes

  • API Reference base URLs: corrected the generated REST API Reference to list the public environments as https://testnet-api.hypercall.xyz for testnet and https://api.hypercall.xyz for production.

v1.0.1-mainnet-alpha - June 10, 2026

Fixes

Execution

  • RPI empty-book fills: single-leg RPI now treats the user limit as the execution cap or floor when there is no executable resting book liquidity. Eligible price-improvement responses at the displayed limit can fill instead of being rejected for failing to improve over the limit itself. If executable resting book liquidity exists, quote providers still need to improve that book price by at least one tick. See Order Priority.
  • Quote-provider responses: RFQ responses now follow the same limit-price rule as the API. Natural quotes at the taker limit are accepted when no book reference exists, while quotes outside the taker limit or quotes that fail to improve executable book liquidity are still declined.

Trollbox

  • Mainnet routing: production Trollbox now points at the mainnet worker, so app chat uses the live Trollbox environment.

v1.0-mainnet-alpha - 2026년 6월 1일

참고: 메인넷 런칭 포스트

주요 변경 사항 (Breaking Changes)

  • 메인넷 환경: 프로덕션 클라이언트는 메인넷용으로 구성된 메인넷 앱, API, 체인 ID, 컨트랙트 주소, 서명 도메인을 사용해야 합니다. 테스트넷 서명, 테스트넷 API 키, 테스트넷 에이전트 키, 포싯(faucet) 관련 가정을 메인넷에 재사용하지 마십시오.
  • 런칭 거래 범위: 메인넷 알파는 위험이 한정된(defined-risk) 옵션 거래로 제한됩니다. 네이키드 숏, 광범위한 포트폴리오 증거금, 포싯 자금 조달, 테스트넷 대회 경로는 일반 메인넷 사용자에게 제공되지 않습니다.
  • 실거래 빌드에서 포싯 경로 차단: 포싯 전용 자금 조달 경로는 프로덕션 빌드에서 사용할 수 없습니다. 메인넷 사용자는 앱의 자금 조달 플로우를 통해 USDC로 입금합니다.

추가 사항

메인넷

  • 메인넷 알파: Hypercall이 app.hypercall.xyz에서 실제 USDC 결제와 함께 런칭 마켓인 SPCX 옵션으로 서비스를 시작했습니다.
  • SPCX 런칭 마켓: SpaceX 옵션이 메인넷에서 콜옵션, 풋옵션, 스트래들, 스트랭글, 위험이 한정된 스프레드와 함께 제공됩니다. 메인넷 SPCX 계약은 미국 동부시간(ET) 오후 4시에 만기됩니다. 이 마켓은 주문 우선순위에 문서화된 것과 동일한 주문 라우팅 모델을 사용합니다.
  • 메인넷 체인 구성: 지갑 연결, 옵션 주문 서명, 컨트랙트 주소, 환경별 UI 문구가 이제 하드코딩된 테스트넷 가정 대신 활성화된 메인넷/테스트넷 구성에서 파생됩니다.
  • 프로덕션 거래 게이트: 런칭 구성은 알파 롤아웃을 위한 통제된 리스크 설정을 유지하면서 거래가 중단되지 않도록 합니다.
  • 프로덕션 API: 메인넷 클라이언트를 위한 공개 프로덕션 API가 제공됩니다.

자금 조달

  • USDC 입금: 사용자는 앱을 통해 Hypercall 계정에 USDC를 입금할 수 있습니다. 이 플로우는 제출 전후에 경로, 소스 체인, 릴레이 상태, 목적지 계정, 입금 금액을 표시합니다.
  • Exchange 입금 귀속: Exchange USDC 입금 이벤트에 입금 대상 계정이 명시적으로 포함되어, 백엔드 서비스가 msg.sender로부터 소유권을 추론하는 대신 의도된 Hypercall 계정에 입금합니다. 컨트랙트: 온보딩을 참조하십시오.
  • 입금 잽(zap): 프론트엔드가 릴레이 견적 및 릴레이 상태 추적을 포함하여 앱을 통한 브리지-입금 통합 플로우를 지원합니다.
  • 출금: 메인넷 출금 지원이 시스템 액션을 통해 연결되어 계정 자금 조달 액션에 표시됩니다.
  • 입금 경로 선택: 입금 액션이 컨트랙트 구성에서 활성 경로를 선택하므로, 동일한 UI가 환경별 자금 조달 경로를 따를 수 있습니다.
  • 법적 동의: 계정 설정 및 자금 조달 플로우에 런칭 법적 동의 절차가 포함되며, 이용약관개인정보처리방침이 게시되어 있습니다.

체결

  • 단일 레그 주문의 RPI: 단일 레그 옵션은 자격을 갖춘 경우 소매 가격 개선(Retail Price Improvement) 경매를 통해 라우팅되며, 적격 호가가 낙찰되지 않으면 오더북으로 폴백됩니다.
  • 멀티 레그 패키지의 RFQ: 멀티 레그 전략 패키지는 전량 체결(all-or-nothing)을 위해 RFQ를 통해 라우팅됩니다. 프로덕션 이중 모드 주문은 패키지 체결이 필요한 경우 RFQ를 우선합니다.
  • 런칭 수수료: 런칭 구성에서 메이커 및 테이커 수수료가 비활성화되어 있습니다. 수수료를 참조하십시오.
  • 결합 주문 라우팅: 결합 주문은 프론트엔드 전용 패키지 가정 대신 백엔드 RPI/RFQ 경로를 통해 라우팅됩니다.
  • 호가 제공자 숏: 등록된 호가 제공자는 공개 런칭 범위가 제한된 상태에서 RFQ/RPI 유동성을 위해 필요한 숏 레그를 체결할 수 있습니다.

수정 사항

  • 입금 페이지 접근: 앱 호스트의 서드파티 자금 조달 경로 및 입금 모달 동작이 프로덕션 자금 조달 플로우에서 차단 해제되었습니다.
  • 입금 허용 목록 제거: 런칭 자금 조달 접근을 위해 프로덕션 입금 화이트리스트 게이트가 비활성화되었습니다.
  • RFQ 수량 산정: 비용 모드 RFQ 수량이 제출 전에 정확히 반올림되어, 패키지 수량 산정에서 소수 정밀도 오차가 발생하지 않습니다.
  • 멀티 레그 만기손익 호가: 멀티 레그 만기손익 차트가 레그 호가 리졸버를 사용하므로 차트에 표시되는 값이 선택된 패키지와 일치합니다.
  • 음수 값: 음수 값이 이제 런칭 UI 화면에서 명시적인 부호와 함께 렌더링됩니다.
  • 오래된 입금 주소 정리: 런칭 검증 후 오래된 입금 주소와 사용되지 않는 브리지 상태가 제거되었습니다.

v0.09-testnet - 2026년 5월 22일-6월 1일

참고: 메인넷 런칭 포스트

주요 변경 사항 (Breaking Changes)

  • 테스트넷 외 포트폴리오 증거금 비활성화: 테스트넷이 아닌 환경에서는 이제 포트폴리오 증거금 설정을 거부합니다. 메인넷 알파는 표준 증거금만 사용합니다.
  • 주문 상태 정규화: 주문 수명주기 레이블이 접수됨/오픈 상태와 부분/전량 체결 상태를 보다 일관되게 구분합니다. 원시 상태 문자열을 표시하는 클라이언트는 이를 사용자에게 노출되는 정식 상태로 취급해야 합니다.

추가 사항

자금 조달 및 계정

  • 입금 경로 선택: 앱이 하드코딩된 환경 가정 대신 활성 컨트랙트 구성에서 입금 경로를 선택합니다.
  • Exchange 입금 잽: 이후 메인넷에 출시된 앱 측 브리지-입금 통합 플로우가 릴레이 견적/상태 처리를 포함하여 테스트넷에 추가되었습니다.
  • 명시적 입금 크레딧: Exchange USDC 입금이 입금 이벤트에 명시된 계정으로 입금되어, 라우터나 잽이 트랜잭션을 제출할 때 귀속이 모호해지는 문제를 방지합니다.
  • 표준 USDC 출금: 표준 지갑이 API/시스템 액션 경로를 통해 USDC 출금을 제출할 수 있습니다.
  • 계정 설정 증거금 부트스트랩: API 키 설정이 이제 온보딩 중에 지원되는 증거금 모드를 부트스트랩하여, 자금이 입금된 계정이 유효하지 않은 거래 상태에 놓일 가능성을 줄입니다.
  • 계정 설정 중앙화: 계정 환경설정과 설정이 정규화되어 자금 조달, 에이전트 키, Trollbox 표시 여부, 프로필 설정이 하나의 계정 화면을 공유합니다.

마켓 및 거래

  • 출시 예정 마켓: 앱이 출시 예정 마켓 카드를 거래 가능한 마켓으로 표시하지 않고 보여줄 수 있습니다.
  • 소수 단위 자산 미결제약정: 자산 미결제약정이 소규모 마켓의 값을 절사하지 않고 소수 값으로 표시됩니다.
  • 라이브 카탈로그 기반 지표성 리스크: 지표성 RFQ/리스크 마켓 목록이 오래된 프론트엔드 목록 대신 라이브 카탈로그에서 파생됩니다.
  • 참조 매수호가/매도호가 기반 체결 가능성 판단: 주문 입력 시 참조 매수호가/매도호가 데이터를 사용하여 주문의 체결 가능 여부를 판단합니다.
  • 혼합 소스 IV 언크로싱: 옵션 요약 내재변동성 계산이 IV를 산출하기 전에 혼합 소스 매수호가/매도호가의 역전(crossed) 상태를 해소합니다.
  • 네이티브 스티키 마크 행: 전략 마크 행이 네이티브 스티키 동작으로 전환되어 옵션 체인 스크롤이 더 깔끔해졌습니다.

UI 및 콘텐츠

  • 다크 모드: 거래 화면 전반에 걸친 완전한 다크 모드가 앱에 추가되었습니다.
  • 인터랙션 상태: 런칭 완성도를 위해 프론트엔드 인터랙션 상태가 다듬어졌습니다.
  • Hypercall 홈페이지 및 Insights 분리: 공개 웹 라우팅이 개편되어 Insights가 별도의 사이트로 분리되고, 제품 홈이 라이브 거래 화면을 가리키도록 변경되었습니다.
  • RPI vs RFQ 설명 문서: RPI 체결 관련 문서가 게시되고 런칭 자료에 링크되었습니다.

수정 사항

  • 마퀴 거래 가능성: 마퀴 출력이 상장된 마켓으로 제한되어, 사용자가 거래 불가능한 자산을 라이브로 보지 않도록 했습니다.

v0.08-testnet - 2026년 4월 28일-5월 21일

참고: 테스트넷 7주차 제품 업데이트

주요 변경 사항 (Breaking Changes)

  • 미사용 API 인터페이스 제거: 사용되지 않던 /limit_iv 엔드포인트와 중복된 /profile/username-request 라우트가 제거되었습니다. 클라이언트는 문서화된 REST API 레퍼런스의 라우트를 사용해야 합니다.
  • RFQ 패키지 폴백 강화: 멀티레그 RFQ는 패키지 거래로 처리되며, 더 이상 임의의 멀티레그 체결을 위해 호가창 폴백 시맨틱에 의존하지 않습니다. RPI/호가창 폴백 동작이 필요한 경우 단일 레그 주문 제출을 사용하십시오.
  • 서명 체인 ID 설정 가능: 옵션 주문 서명이 더 이상 단일 테스트넷 체인 ID를 가정하지 않습니다. 클라이언트는 활성 환경에서 서명 체인을 도출해야 합니다.

추가 사항

마켓

  • SPCX 테스트넷 마켓: SpaceX 프리 IPO 옵션이 테스트넷에 추가되었으며, 만기는 6월 12일 IPO 날짜로 제한됩니다.
  • 상장 마켓 마퀴 필터링: 프로덕션 및 스테이징 마켓 마퀴에는 상장된 마켓만 표시되어, 거래 불가능한 자산이 거래 가능한 것처럼 노출되지 않습니다.
  • 세션 인식 머니니스 변동성 모델: 머니니스에 민감한 마켓의 가격 산정 시 변동성 모델링이 세션 컨텍스트를 반영합니다.

전략 빌더

  • 원클릭 전략 빌더: 스트래들, 스트랭글, 수직 스프레드, 아이언콘도르 같은 일반적인 옵션 구조를 레그별로 조립하는 대신 전략 갤러리에서 선택할 수 있습니다.
  • 고급 빌더: 고급 모드에서는 행사가격 범위 설정, 캘린더형 구조를 위한 원월물 만기 선택, 매도 레그 전략 구성이 추가됩니다.
  • 새로운 멀티레그 주문 양식: 패키지 주문 입력이 레그별 견적 처리, 견적 만료 카운트다운, 슬리피지 안내 메시지, 더 깔끔한 최우선 견적 수락 플로우와 함께 새롭게 구축되었습니다.
  • 전략 라벨 및 배지: 전략 헤더에 이제 간결한 라벨, 데빗/크레딧 분류가 표시되며, 티커나 만기 컨텍스트가 이미 명확한 경우 더 짧은 이름이 표시됩니다.
  • 옵션 체인 인디케이터: 체인 뷰에 선택된 레그 필(pill), 고정된 마크 행, DTE 라벨, 손익분기점 화살표, 포지션 인디케이터가 체인, 폭(width), 스프레드 뷰 전반에 걸쳐 추가되었습니다.

RPI 및 RFQ

  • 리테일 가격 개선 (Retail Price Improvement): 적격 상품의 단일 레그 주문은 호가창으로 폴백하기 전에 RPI 경매를 거칩니다. 주문 우선순위를 참조하십시오.
  • 지시적 RFQ 리스크 스트림: 지시적 견적과 리스크 업데이트가 WebSocket을 통해 스트리밍되어, 활성 견적 화면에 대한 폴링을 줄입니다.
  • 고수준 RFQ 클라이언트 빌더: Rust 클라이언트와 트레이드 CLI에 RFQ 견적 요청 구성을 위한 헬퍼가 추가되었습니다.

계정 및 에이전트 키

  • 에이전트 키 폐기 패널: 계정 설정에서 이제 활성 에이전트 키 목록과 폐기 플로우를 제공합니다. 에이전트 인증을 참조하십시오.
  • 에이전트 키 알림: 활성 키가 너무 많은 사용자는 폐기 패널로 연결되는 권장 알림을 받습니다.
  • 메인넷 대응 체인 선택: 서명 체인 ID, Privy 지갑 체인, 지갑 전환 동작이 이제 환경 설정에서 도출됩니다.

트롤박스 (Trollbox)

  • 데스크톱 트롤박스: 드래그 가능한 채팅 패널이 데스크톱 앱에 도입되었으며, 표시/숨김 설정이 제공됩니다.
  • 텔레그램 브리지: 메시지, 답장, 미디어, 리액션, 전달 출처 표시, 스티커, 명령 카드가 웹 트롤박스와 텔레그램 사이에서 연동됩니다.
  • 텔레그램 계정 연결: 사용자는 일회용 코드 플로우를 통해 텔레그램을 지갑에 연결할 수 있습니다.
  • 트롤박스 딥링크 및 미리보기: 메시지 링크에 OG 미리보기, 미디어 이미지, 공유된 메시지에 대한 앱 라우트가 제공됩니다.

프로필 및 UI

  • 프로필 이미지: 사용자는 프로필 이미지를 업로드, 자르기 또는 가져올 수 있으며, 설정하지 않은 경우 결정론적 폴백 아바타가 표시됩니다.
  • 주문 검토 플로우: 모바일 주문 입력에 검토 단계와 슬라이드 제출 확인이 추가되었습니다.
  • 테마 및 레이아웃 개선: 테마 변수, 차트 라벨, 빠른 작업, 전략 필(pill), 버튼 상태가 데스크톱과 모바일 전반에 걸쳐 다듬어졌습니다.
  • 성능: 자산 페이지와 리더보드에서 중복 페칭이 줄었으며 첫 렌더링 시 더 유용한 데이터가 표시됩니다.
  • 통합 계정 순자산: 포트폴리오 증거금 및 Hydromancer 피드 조회가 계정 순자산에 포트폴리오 상태를 사용하여, 증거금 표시 전반의 일관성이 향상되었습니다.

수정 사항

  • 티어 매도 단위 불일치: 티어 기반 주문 접수에서 매도 단위 처리와 증거금 행 롤백이 수정되었습니다.
  • 첫 주문 티어 설정: 티어 상태가 없는 지갑은 티어 누락 오류를 발생시키는 대신 첫 주문 시 초기화됩니다.
  • 만기 상품: 카탈로그 정합화가 이제 만기 틱 처리 중 누락된 풋/콜 쌍과 만기된 활성 상품을 처리합니다.
  • 트롤박스 안정성: WebSocket 하트비트, 환경 라우팅, 아바타 로딩, 미디어 정규화, 리액션 지속성, 유휴 연결 해제 처리가 수정되었습니다.

v0.07-testnet — April 17–27, 2026

See also: Week 6 Product Update

Additions

RFQ

  • Request for Quote (RFQ) trading system — new trading mode for markets without deep orderbook liquidity. Submit an RFQ, receive real-time quotes over the authenticated WebSocket rfq channel, and accept or decline. Falls back to a limit order on the orderbook when no quotes are received. Enables fast listing of new assets (US500, USOIL, GOLD, HYPE) without waiting for organic liquidity.
  • Auto-execute mode — new SubmitAutoExecuteRfq EIP-712 signature type pre-authorizes execution up to a limit price. The first eligible quote within the limit executes immediately in a single round trip. Falls back to a limit order on the orderbook if no quotes arrive or all quotes exceed the limit.
  • RFQ quote cards — quotes display per-leg prices, total net premium, and a countdown timer to expiry. Accept or decline with one click.
  • Slippage controls — configurable slippage tolerance (1%, 2%, 3%, 5%) relative to the indicative price when submitting an RFQ.

Multi-Leg Trading

  • Multi-leg options order builder — clicking an option in the chain adds it as a leg to a multi-leg RFQ order form. Multiple legs accumulate; X button removes individual legs. Legs persist in the URL (?legs=) so multi-leg orders survive refresh and are shareable.
  • Strategy auto-detection — detects and labels 28 strategy types: Bull/Bear Call/Put Spread, Long/Short Straddle, Long/Short Strangle, Calendar Spread, Diagonal Spread, Iron Condor, Iron Butterfly, Call/Put Butterfly, Call/Put Condor, Risk Reversal, Collar, Synthetic Long/Short, Ratio Spread, Backspread, Box Spread, Jade Lizard, Seagull, Broken Wing Butterfly, Split-Strike Conversion. Strategy names link to docs.
  • Combined payoff, chart, and greeks — multi-leg view shows a combined payoff diagram, a combined theoretical price chart (sum of all leg theos), and aggregated greeks (delta, gamma, theta, vega) with sign adjustment for sell legs.
  • Contract vs. strategy greeks toggle — switch between per-contract and aggregated strategy-level greeks in the bottom panel.
  • Max legs increased to 10 — up from 4.

Liquidation

  • Two-phase liquidation system: partial liquidation via backend-managed IOC close orders, escalating to full liquidation via on-chain auction when partial liquidation is insufficient.
  • Liquidations tab: new tab in the bottom panel showing liquidation events for the connected wallet.
  • GET /liquidations: public cursor-paginated liquidation transition history used by third-party liquidation bots for candidate discovery.
  • Example liquidator bot: new liquidator crate demonstrating standard-margin liquidation monitoring and signed Hypercall liquidation orders.

UI

  • P&L attribution on equity chart — toggle the layers icon to see per-position stacked area fills on the equity chart. A horizontal bar breakdown below the chart groups positions by underlying, shows per-symbol realized P&L, and supports checkbox filtering to isolate or hide individual positions. Crosshair hover updates the breakdown. See desktop guide.
  • Expandable markets panel with breadcrumbs — the left-side markets panel collapses to give the trading surface more room. Breadcrumbs show navigation context (e.g., Assets > BTC > Options).
  • Notifications bell — replaces the announcements megaphone. Tabbed dropdown with Notifications (fills) and Announcements tabs. Unread dot renders on first paint via SSR. Per-wallet dismissed-at state stored in localStorage.
  • Account hover menu — hovering the profile button shows a dropdown with equity, P&L, buying power, and position count. Users who haven't set a username see a "Choose name" prompt.
  • Help in navigation — help button in the navbar linking to documentation.
  • Service unavailable chip — red indicator in the header when the backend is unreachable.
  • Leaderboard rank chip — live rank badge in the navbar (replaces leaderboard link) with delta indicators showing rank changes as you trade.
  • Settled position detail pages — per-position detail view showing theoretical price chart, individual fills, realized P&L breakdown, and friendly instrument names (e.g., "BTC $55,000 Call Apr 14").
  • Dynamic social preview images — generated OG images for all shareable pages: instruments (theo chart + greeks), multi-leg strategies (payoff diagram + strategy name), profiles (P&L stats + rank), leaderboard (top 5 with medal badges), and trade confirmations.
  • Desktop navbar restructured — footer removed, connect button relocated to header, keyboard shortcut indicators (Ctrl+K) visible.
  • Chart header price truncation fixed — prices no longer overflow on desktop chart headers.

PWA

  • Root route cutover — all routes consolidated from /mobile/* to root /*. Legacy /mobile/* paths redirect automatically. Unified URL scheme across desktop and mobile.
  • iOS PWA upgrade flow — users who installed the old /mobile PWA see a native-style upgrade modal with step-by-step iOS install instructions (Share > View More > Add to Home Screen) using Apple's official iconography.
  • iOS splash screens and navigation preload — 12+ device-specific splash screens eliminate white flash on cold start. Navigation preload fetches the page while the service worker boots.
  • App shortcuts — long-press the home screen icon for quick access to Portfolio and Deposit.
  • Screen wake lock — keeps the screen on during trading sessions in standalone PWA mode. Auto-reacquires on app resume.
  • Persistent storage — requests navigator.storage.persist() to prevent browser from evicting cached app assets.

API

  • instrument_type on WebSocket eventsfill and order update events now include instrument_type ("option" or "perp"). Backward-compatible addition.
  • ?symbol= filter on GET /profile/trades — filter trade history by instrument symbol. Reduces payload for high-volume traders querying specific instruments.
  • Perp fills forwarded via WebSocket — Hydromancer perp fills are now published to the WebSocket feed (previously missing).
  • AcceptRfqQuote and PlaceOrder via WebSocket — the full order lifecycle (submit RFQ, receive quotes, accept, place order) can now run over a single WebSocket connection with zero REST calls.
  • fills field on PerpOrderResult — Rust SDK now returns fills inline with perp order responses. Fields: coin, side, size, price.

Fixes

  • IOC/FOK ghost orders — IOC and FOK orders that partially filled were leaving remainder quantity on the orderbook as ghost orders. Remainders are now canceled immediately after partial fill, and status is set to Canceled instead of PartiallyFilled.
  • Premium reservation on closing buys — buy orders that close a short position were incorrectly reserving premium, draining equity and triggering false liquidation. Premium reservation is now skipped for position-closing buy orders.
  • Expired chains after deploy — expired option chains briefly appeared as Active on server restart. Instruments are now checked against expiry timestamps at load time and immediately marked ExpiredPendingPrice.
  • RFQ no-quote fallback — auto-execute RFQ that received no eligible quotes previously showed an error. Now falls back to placing a limit order on the orderbook.
  • Marquee mover accuracy — top movers in the ticker bar now derive from the options summary cache using theoretical-vs-24h-theoretical price change, filtered to quoted options only. Previously used raw BBO data which produced noisy or stale values.
  • Options summary price_change — BBO reference for price change calculation now uses orderbook bid only, replacing the mark-vs-theo fallback that could produce misleading numbers.

v0.06-testnet — April 14–16, 2026

Breaking Changes

  • PUT /order and PUT /bulk_order — new atomic order replacement endpoints. Cancels the existing order and places a new one in the same engine tick. If the cancel fails (order already filled or not found), the new order is not placed. Uses the new ReplaceOrder EIP-712 signature type. Clients using the old cancel-then-place pattern should migrate.

Additions

API

  • GET /profile/realized-pnl — returns per-symbol realized PnL aggregated from fills and settlements. Accepts optional competition_id parameter to scope results to a competition window.
  • realized_pnl field on GET /profile/trades — each fill row now includes the realized PnL attributed to that specific trade.
  • net_deposits and attribution components on GET /profile/historical-pnl — historical equity snapshot points now include cumulative net deposits and P&L attribution breakdowns.
  • prev_day_px field on GET /markets — markets payload now includes previous-day reference price per instrument.

UI

  • Announcements megaphone — megaphone icon in desktop and mobile headers with unread count badge. Clicking opens a popover listing announcements (title, body, date, optional image/link). Per-wallet read/dismiss state.
  • Edit & replace orders — desktop: pencil icon on open orders for inline price/size editing, checkmark submits, X cancels, row highlights amber during edit. Mobile: tapping an order shows Cancel and Update buttons.
  • Settled positions on member page — new "Settled Positions" section between Positions and Trade History. Shows per-symbol realized PnL from expired options and closed trades with green/red coloring. See Settlement for how options settle.
  • Realized PnL column in trade history — displays per-fill realized PnL with color coding; position-opening fills show a dash.
  • API key management no longer flashes on load — agent list renders immediately instead of popping in after page load.
  • Empty positions table hidden — when the user has no open positions, the positions section is hidden entirely instead of showing empty table headers.
  • Connect buttons on empty state — restored missing wallet connect buttons on empty-state screens.

PnL

  • P&L is now net of premium paid — realized PnL now accounts for the premium paid to open the position. Previously only showed gross payout. Example: a wallet previously showing +162Krealizednowcorrectlyshows+162K realized now correctly shows +27K after accounting for $135K premium paid.
  • Settled options grouped by underlying — attribution no longer lists every individual expired symbol; settled positions are collapsed into per-underlying buckets (e.g., "BTC (settled)").
  • Live equity no longer drops to zero for OTM positions — the kink where OTM position value abruptly fell to zero on the live tail of the equity chart is fixed.
  • Attribution visible for wallets with only expired positions — wallets with no open positions but settled options now correctly show PnL attribution.

Fixes

  • GET /profile returning 500 — fixed for wallets with incomplete aggregate data.
  • Unrealized PnL stale after server restart — portfolios are now repriced immediately on restart instead of waiting for the next mark update.
  • DTE off-by-one in payoff diagrams — fixed days-to-expiry calculation that shifted breakeven and max-loss lines.
  • Focus steal — fixed focus stealing during UI interactions.
  • Chart rendering improvements — various chart display fixes.

v0.05-testnet — April 11–13, 2026

Additions

Push Notifications

  • Browser push notifications — subscribe to fill, liquidation, and settlement alerts via Web Push. New endpoints: POST /push/subscribe, POST /push/unsubscribe, POST /push/preferences. All push endpoints require an EIP-712 wallet signature. Per-type toggles (fills, liquidations, settlements) available in desktop Settings and mobile account preferences.
  • Desktop toast notifications — real-time toasts for order fills and errors on the desktop layout.

Trading

  • Greeks tab (desktop) — new tab in the bottom panel showing per-position delta, gamma, theta, vega, rho, and IV. Column headers have tooltips linking to Greeks reference. Per-underlying subtotal rows; portfolio total when positions span multiple underlyings.
  • Sortable leaderboard columns — profit, volume, and efficiency columns on the leaderboard are now clickable to sort.
  • Order form improvements — quick amount selectors, improved tooltips, responsive sizing.
  • PnL chart on member page — member profiles now show an equity-over-time chart.
  • HC/HL stats relocated to side pane — HyperCore and HyperLiquid statistics moved to a side panel.
  • Zero-size order rows removed — order list no longer displays orders with zero size.

Ghost Mode

  • Ghost mode — unauthenticated users can browse markets, order books, and charts without connecting a wallet. Settings page also accessible without auth. See the desktop guide for details.
  • Dynamic per-asset favicons — browser tab icon shows a green ring with the active asset icon. Call/put variants display when viewing options.

Charts

  • Vol surface visualization — interactive 3D vol surface viewer at /risk/vol-surface for all listed underlyings. See Oracles for how vol surfaces are sourced.
  • Portfolio chart defaults to 5-minute interval — smoother rendering on newer accounts (8H view instead of 4D view).
  • Chart updates on preference change — switching chart mode in preferences now takes effect immediately without a page reload.

API

  • Expiry filter on GET /options-summary — pass ?expiry=YYYY-MM-DD to scope the response to a single expiration.

Account

  • Username display names — wallets can set a display name shown on the leaderboard and member pages. Names take effect instantly (no moderator review). Editable inline from both desktop Settings and mobile settings.

Fixes

  • Bid/ask sides inverted for some orders — fixed incorrect side assignment depending on on-chain order direction.
  • Option chain load time reduced ~60% — faster loading via API expiry filtering and pre-fetched chart data for visible strikes.
  • Market switching is now instant — no full page reload when switching underlyings on desktop.
  • Tenor switching crash on desktop — fixed crash and slowness when switching between option tenors.
  • Desktop account page scroll — long trade history content now scrolls properly.
  • Mobile /preferences 404 — preferences page now reachable on mobile.
  • Buying power updates after deposit — balance now updates immediately after a testnet faucet deposit instead of requiring a refresh.
  • Trade gate shown when agent not set up — shows setup actions instead of a non-functional sign button.
  • Error banners auto-clear — persistent error banners now dismiss themselves.
  • Leaderboard layout on mobile — fixed scrunched values on mobile vs desktop.
  • Redirect flicker eliminated — removed visible redirects when navigating to the app.

v0.04-testnet — April 7–10, 2026

See also: Week 4: Desktop Goes Live

Additions

API

  • GET /historical-theos — theoretical option prices over time, replacing raw last-trade price history. Configurable time intervals and limits. See REST API Reference.
  • GET /historical-theos/batch — fetch theoretical price series for up to 50 instruments in one request. Parameters: instrument_names=A,B,C&interval=1h&limit=100.
  • realized_pnl on GET /profile/trades — fills now return realized PnL.

UI

  • Greeks now use theoretical marks — all Greeks calculations use theoretical prices instead of last-trade prices, significantly improving accuracy for illiquid strikes.
  • Theoretical price chart on instrument pages — option contract pages display a historical theoretical price chart (replaces raw trade price history).
  • Inline position on instrument page — your open position for the active instrument is shown directly on the contract page.
  • Empty state improvements — better copy and layout for empty charts and empty states.

Fixes

  • Faucet deposit cap — testnet faucet now respects remaining per-wallet allowance instead of a fixed max.
  • GET /portfolio intermittent 503s — fixed intermittent server errors on the portfolio endpoint.
  • Loading spinners — eliminated phantom loading spinners during page load.
  • GET /profile/trades returning 500 — fixed for wallets with fills.
  • Member page layout shift — fixed alignment shift on the member page.
  • Default chart label — clarified that default chart preference applies to assets.

v0.03-testnet — April 1–6, 2026

See also: Week 3 Product Update

Breaking Changes

  • Portfolio margin model changed — Initial Margin formula changed from scanning_risk to max(scanning_risk, option_floor) + gamma_overlay. Three new fields in REST and WebSocket portfolio responses: scanning_risk, option_floor, gamma_overlay. Available balance is now equity - total_margin_used (was cash - total_margin_used). Equity now includes perpetual unrealized PnL.
  • GET /risk/grid changes — removed include_open_orders parameter. Scenario model changed from single-axis {scenario_type, value} to combined shocks {spot_shock_pct, vol_shock_pct, pnl_weight, is_tail}. Worst-case PnL is now weighted.

Additions

Desktop

  • Desktop trading layout — full desktop shell with multi-panel trade view, keyboard navigation, instrument price chart, compact option symbols, and click-to-navigate from positions/orders to instruments.

API

  • Option instruments now include underlying symbol and price — option instrument responses expose their underlying asset. See REST API Reference.

Competition & Leaderboard

  • Competition system — new endpoints: GET /competitions, GET /leaderboard, GET /competition-metric-ranks, POST /submitUsernameRequest. Monthly schedule (1st to 1st at 4:00 PM ET). Testnet competition with real prizes (500/500/300/$200 in SYN). Market makers excluded from rankings.
  • Leaderboard UI — rank badge ("Rank #X" or "Trade to win" CTA), prize breakdown card, Hyperliquid Names integration, formatted option symbols ("04/10 $59,000 Call"), FIFO lot P&L, relative timestamps (5m, 2h, 3d).
  • Markdown in competition descriptions — competition descriptions support markdown formatting.

Portfolio

  • Portfolio margin — cross-margining across correlated positions. Expired instruments excluded from gamma overlay.

UI

  • Compact option symbols — human-readable format throughout the UI: "04/10 $59,000 Call".
  • Max button on order form — one-click max size based on available margin.
  • Thousands separators — all price and size fields display commas.
  • Click position/order → instrument — tapping a position or order row navigates to the corresponding contract.
  • Preferences page — tooltips, badge cycling, and synced preference state across sessions.

Fixes

  • Chart UTC centering — asset charts center on UTC boundaries; timeframe transitions stabilized.
  • Swipe gestures (mobile) — fixed erratic swipe-to-cancel and swipe navigation behavior.
  • Desktop URL stripping — removed /mobile prefix from URLs on desktop; strike selection fixed.

v0.02-testnet — March 24–31, 2026

See also: Week 2 Product Update

Additions

Charts

  • Historical PnL chart — equity-over-time chart on the home page with interactive crosshair. Touch/click to inspect any point; shows timestamp and updates balance display.
  • Asset chart — per-asset spot price chart with y-axis clamped to the visible period range.

Order Management

  • Section headers — positions, orders, and history sections have distinct headers for easier scanning.
  • Swipe-to-delete orders (mobile) — swipe left on an open order to cancel.
  • Cancel order confirmation — dedicated cancel-order dialog.
  • Click order row → contract page — tapping an order navigates to the instrument detail view.
  • Updated open order appearance — refreshed styling for open orders.

Connectivity

  • WebSocket disconnect banners — visible banners when the WS feed drops or the backend is unreachable.

Greeks

  • Position Greeks on asset page — aggregate delta, gamma, theta, vega on the asset detail page.
  • Contract Greeks on contract page — per-position Greeks on the contract view.
  • Breakeven prices across option types — breakeven prices calculated and displayed for calls, puts, and spreads.

Trade History

  • Execution time on GET /profile/trades — trade history rows now include the fill timestamp.
  • Options chain expiry persistence — selected expiry saved in URL query params and restored on navigation.
  • Option instruments include underlying symbol and price — option instruments expose their underlying asset in responses.

Account

  • Username system — set a display name for your wallet address, shown on leaderboard and member pages.

Fixes

  • GET /profile/trades returning 500 — fixed for wallets with fills.
  • Default position display order — positions default to showing value, then PnL, then cost basis (was inconsistent).
  • Order footer shows time-to-expiry — added TTE display; 1-second signing delay prevents accidental double-submits.
  • Logout on mobile — session state properly cleared on sign-out.
  • Light mode background — fixed background color in light mode.
  • Smoother page transitions — reduced visual stutter during navigation.
  • Swipe background — fixed background rendering during swipe interactions.

v0.01-testnet — March 16–23, 2026

See also: Week 1 Product Update

Additions

Theme & Appearance

  • Midnight dark mode — new high-contrast dark theme alongside the existing light mode.
  • Auto theme mode — theme automatically matches device light/dark preference. New users default to auto.

Dashboard & Stats

  • HL & HC stat fields — toggle between Hyperliquid-specific and Hypercall-specific statistics on the dashboard.
  • Put/call ratio — put/call ratio added to the Hypercall stats panel.
  • Outcome badges — visual badges for trade outcomes (profit, loss, expired worthless, etc.) with pie chart in position header.

Options Chain

  • Strike sorter and selection persistence — strike prices sortable; selection persists across sessions.
  • Price target seeding — price target page seeds with the current underlying price instead of blank.
  • Underlying price normalization — consistent underlying price display across all pages, including DEX perp data.

Order UX

  • Cancel message for filled/expired orders — cancel attempts on already-filled or expired orders show "This order has already been completed or cancelled" instead of a raw error.

Preferences

  • Preferences page — tooltips, badge cycling, and synced preference state across sessions.

Fixes

Connectivity

  • Data refreshes on WebSocket reconnect — orders, fills, and portfolio re-fetched on WS reconnect instead of showing stale data.
  • WS reconnect delay — backoff timer now resets after a healthy connection. Previously never reset, causing all reconnects to wait 30 seconds after a few normal disconnects.

Orders

  • Ghost orders on expired instruments — orders on settled instruments are now properly cleaned up, preventing "Orderbook not found" errors on cancel.
  • Negative cash balance rejection — BUY orders that would make cash balance negative are now rejected at submission. Rejection message: "Insufficient cash (Standard)". Can be bypassed for risk-reducing buy-to-close orders. See Standard Margin.

UI

  • Price target animation — fixed bouncing/stuck animation on the price target page.
  • Mobile asset chart clipping — fixed quick action clipping on mobile asset chart.
  • Mobile PWA loading hang — fixed an issue causing the mobile PWA to hang on "Loading...".

Known Issues

Before debugging client behavior, check the Hypercall status page for active incidents and maintenance first.

Staging behavior and known issues are communicated with access; contact the team for details.

Versioning Policy

Stability labels:

  • Stable: Router paths and core request/response shapes unlikely to change

Breaking changes: Will be documented here with migration guides.

References