Skip to content

ADR-002: Hyperliquid Integration

Status: Proposed
Date: 2026-03-06
Replaces: Binance-only Legacy Architecture


1. Kontext: Warum Hyperliquid?

1.1 Binance Probleme

  • Zentralisierte Custody
  • API-Key-Risiko
  • Rate Limits
  • Regulatory Risiko

1.2 Hyperliquid Vorteile

  • Dezentrale Perp-DEX
  • Self-Custody (Wallet)
  • Vault-System fรผr Sub-Accounts
  • Bessere Liquiditรคt fรผr Alts

1.3 Neue Herausforderungen

  • EIP-712 Signing komplex
  • On-Chain Confirmation Delays
  • Gas Costs (aber auf L2)

2. Entscheidung: Architektur

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚              HYPERLIQUID INTEGRATION                    โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                                                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚  Core Engine โ”‚โ”€โ”€โ”€โ–ถโ”‚  Execution   โ”‚โ”€โ”€โ”€โ–ถโ”‚  HL Mock  โ”‚ โ”‚
โ”‚  โ”‚              โ”‚    โ”‚  Router      โ”‚    โ”‚ (Default) โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚                              โ”‚                        โ”‚
โ”‚                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              โ”‚
โ”‚                    โ†“                   โ†“              โ”‚
โ”‚              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         โ”‚
โ”‚              โ”‚  Paper   โ”‚       โ”‚  Real HL โ”‚         โ”‚
โ”‚              โ”‚  Engine  โ”‚       โ”‚  Gateway โ”‚         โ”‚
โ”‚              โ”‚ (active) โ”‚       โ”‚ (BLOCKED)โ”‚         โ”‚
โ”‚              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         โ”‚
โ”‚                                                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚           AUTHENTICATION FLOW                    โ”‚    โ”‚
โ”‚  โ”‚                                                  โ”‚    โ”‚
โ”‚  โ”‚  Option A: External Signer (recommended)         โ”‚    โ”‚
โ”‚  โ”‚    - Private Key niemals im System             โ”‚    โ”‚
โ”‚  โ”‚    - Signer-Service oder Hardware Wallet        โ”‚    โ”‚
โ”‚  โ”‚                                                  โ”‚    โ”‚
โ”‚  โ”‚  Option B: Vault (fรผr spรคter)                   โ”‚    โ”‚
โ”‚  โ”‚    - Hyperliquid Vault fรผr Sub-Account         โ”‚    โ”‚
โ”‚  โ”‚    - Delegated Signing                          โ”‚    โ”‚
โ”‚  โ”‚                                                  โ”‚    โ”‚
โ”‚  โ”‚  Option C: ENV (BLOCKED)                        โ”‚    โ”‚
โ”‚  โ”‚    - Private Key in ENV                         โ”‚    โ”‚
โ”‚  โ”‚    - NIE FรœR PRODUKTION!                        โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ”‚                                                         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

3. Hyperliquid-Spezifika

3.1 Authentication

Nicht wie Binance:

// โŒ Binance-Style
const signature = hmac_sha256(params, api_secret);

Aber EIP-712:

// โœ… Hyperliquid-Style
const signature = eip712_sign(typed_data, private_key);

Typed Data Example:

const action = {
  type: 'order',
  asset: 'BTC',
  is_buy: true,
  limit_px: 50000,
  sz: 0.1,
  reduce_only: false
};

// Sign with EIP-712
const signature = signTypedData(domain, types, action, privateKey);

3.2 Symbols

Binance (alt) Hyperliquid (neu)
BTCUSDT BTC-USD
ETHUSDT ETH-USD
SOLUSDT SOL-USD

3.3 Order Types

Type Verfรผgbar Nutzung
Market โœ… Primary (im Paper-Canary)
Limit โœ… Fรผr prรคzise Entries
Stop-Market โœ… SL Orders
TP-Market โœ… TP Orders

4. Sicherheits-Architektur

4.1 Private Key Handling

ABSOLUT VERBOTEN:

// โŒ NIE MACHEN
const privateKey = process.env.HL_API_PRIVATE_KEY;

Akzeptabel (Paper/Mock):

// โœ… Mock-Mode, kein echter Key
const mockWallet = '0x' + '1'.repeat(40); // Dummy

Zukunft (Live):

// โœ… External Signer-Server
const signerUrl = process.env.HL_SIGNER_URL;
const signature = await http_post(signerUrl, action);

4.2 Hard Security Gates

// src/config/security_gates.js
const SECURITY_GATES = {
  // Gate 1: Execution Master Switch
  ENABLE_EXECUTION_LIVE: {
    default: false,
    change_requires: ['manual_approval', 'strategy_lab_complete'],
    hard_block: true
  },

  // Gate 2: Mainnet Blocker
  MAINNET_TRADING_ALLOWED: {
    default: false,
    change_requires: ['phase_9_complete', 'written_sign_off'],
    hard_block: true
  },

  // Gate 3: Mode Validation
  HL_MODE: {
    allowed: ['mock', 'paper'],  // 'testnet', 'mainnet' BLOCKED
    change_requires: ['manual_approval']
  },

  // Gate 4: Private Key Check (nicht als Freigabe!)
  PRIVATE_KEY_PRESENT: {
    action: 'log_only',
    never_triggers_go: true
  }
};

5. Implementierungs-Phasen

Phase 1-6: Mock/Paper only

// Nur diese Modi erlaubt
const allowedModes = ['mock', 'paper'];

Phase 7: Strategy Lab

  • Backtests mit Hyperliquid-Daten
  • Keine Live-Integration

Phase 8+: Live-Freigabe

  • ERST nach manueller Freigabe durch Nutzer
  • External Signer Setup
  • Testnet (wenn verfรผgbar)
  • Mainnet (extrem restriktiv)

6. ENV-Variablen

6.1 Erlaubt (Paper/Mock)

# Mode
HL_MODE=mock                    # oder "paper"

# Mock/Placeholder (kein echter Wert!)
HL_MOCK_WALLET=0x1234...      # Dummy fรผr Tests

# RPC (nur lesend in Paper)
HL_RPC_ENDPOINT=https://api.hyperliquid.xyz

6.2 BLOCKIERT (bis manuelle Freigabe)

# โŒ NICHT setzen ohne ausdrรผckliche Genehmigung:
HL_API_PRIVATE_KEY=<PRIVATE_KEY>
HL_VAULT_ADDRESS=<VAULT>
HL_MODE=testnet
HL_MODE=mainnet
ENABLE_EXECUTION_LIVE=true
MAINNET_TRADING_ALLOWED=true

7. Konsequenzen

7.1 Positiv

  • Self-custody (kein Exchange-Risiko)
  • Besseres Altcoin-Universum
  • Transparente on-chain Verification

7.2 Negativ

  • Komplexeres Signing (EIP-712)
  • Initial: kein Testnet (HL hat kein รถffentliches Testnet)
  • On-chain Latency

7.3 Risken

  • Smart Contract Risiken
  • Bridge-Risiken (fรผr Ein-/Auszahlung)

8. Alternativen

Alternative Abgelehnt wegen
Beibehaltung Binance Custody-Risiko
dYdX Weniger Liquiditรคt
GMX Hรถhere Fees

9. Nรคchste Schritte

  1. Hyperliquid Mock-Modul implementieren
  2. Paper-Trading mit HL-Preisen
  3. ERST nach Phase 7: External Signer evaluieren
  4. ERST nach Phase 9: Manuelle Live-Freigabe

Approved: 2026-03-06
Implementation: Mock-Modul in Phase 1-2