Digitaler Fingerabdruck eines Traders: Wie man einen Market Maker am Verhalten im Orderbuch erkennt
Verhaltens-Fingerabdruck eines Handelsalgorithmus: einzigartige Muster bei Timing, Größe und Platzierung
Jeder Algorithmus hinterlässt einen einzigartigen Fingerabdruck. Lernen Sie ihn zu lesen — und Sie wissen, wer auf der anderen Seite Ihres Trades steht.
Einleitung: Das Orderbuch als Tatort
Wenn ein Ermittler an einem Tatort eintrifft, sucht er nach Fingerabdrücken, Schuhabdrücken, DNA-Spuren — allem, was ein Ereignis mit einer bestimmten Person verknüpft. Das Orderbuch ist ein Ort, an dem jede Sekunde Hunderte Teilnehmer ihre "Fingerabdrücke" hinterlassen: Orders bestimmter Größe, mit bestimmter Frequenz, in bestimmtem Abstand vom Preis, mit bestimmter Lebensdauer.
An zentralisierten Börsen (CEX) sind diese Fingerabdrücke anonym — man sieht nur das aggregierte Volumen auf jedem Preislevel. Aber selbst aus aggregierten Daten lässt sich viel ablesen. Und auf DEX-Börsen mit On-Chain-Orderbuch — wie Hyperliquid — ist jede Order an eine konkrete Wallet-Adresse gebunden, und die "Fingerabdrücke" werden persönlich.
In diesem Artikel untersuchen wir, wie man ein System "verhaltensbasierter Fingerabdrücke" zur Identifikation von Teilnehmertypen und konkreten Market-Maker-Algorithmen aufbaut.
Teil 1: Was ist ein Verhaltens-Fingerabdruck
Radar-Diagramm: fünf Schlüsseldimensionen des Verhaltens-Fingerabdrucks eines Traders
Jeder Algorithmus ist ein Satz von Regeln
Ein Market-Making-Bot ist ein Programm, das Entscheidungen anhand starrer (oder erlernter) Regeln trifft:
- Wie weit vom Mid-Price sollen Orders platziert werden? Jeder MM hat sein eigenes "Spread-Profil".
- Welche Größe? Runde Lots (100, 500, 1000)? Zufallszahlen? Feste Größe mit ±5% Rauschen?
- Wie oft werden Quotes aktualisiert? Alle 50ms? Nur wenn sich der Mid-Price ändert? Nach einem Timer?
- Wie wird auf Fills reagiert? Sofortiges Requoting? Pause? Verschiebung der Restseite?
- Wie wird auf Volatilität reagiert? Spread-Ausweitung? Rückzug der Quotes? Größenreduktion?
- Wie wird das Inventar gemanagt? Quote-Skew bei Positionsaufbau?
Jede Kombination von Antworten auf diese Fragen ist eine einzigartige "Signatur" des Algorithmus.
Fünf Dimensionen des Fingerabdrucks
┌─────────────────────────────────────────────────────────────────┐
│ DIGITAL FINGERPRINT OF A TRADER │
│ │
│ 1. TIMING │ Inter-order intervals, reaction │
│ │ to events, circadian patterns │
│──────────────────┼───────────────────────────────────────────── │
│ 2. SIZING │ Order size distribution, │
│ │ round-lot ratio, dispersion │
│──────────────────┼───────────────────────────────────────────── │
│ 3. PLACEMENT │ Distance from mid-price, │
│ │ bid/ask symmetry, level anchoring │
│──────────────────┼───────────────────────────────────────────── │
│ 4. REACTION │ Response to fills, cancels, price jumps, │
│ │ volatility changes │
│──────────────────┼───────────────────────────────────────────── │
│ 5. LIFECYCLE │ Average order lifetime, │
│ │ cancel conditions, modify vs cancel+new │
│──────────────────┴───────────────────────────────────────────── │
└─────────────────────────────────────────────────────────────────┘
Teil 2: Feature-Extraktion
Selbsterregender Hawkes-Prozess: Ereignis-Cluster mit exponentiellem Abklingen
Timing: Wann und wie oft
Das Timing-Muster ist das am schwersten zu fälschende Element des Fingerabdrucks. Es wird von der Architektur des Algorithmus, der Netzwerklatenz, der Hardware und sogar der Zeitzone der Entwickler bestimmt.
Schlüsselmetriken:
-
Inter-Order-Intervall (IOI) — die Zeit zwischen aufeinanderfolgenden Orders desselben Teilnehmers. Bei einem HFT-Bot: IOI = 50–500 Mikrosekunden. Bei einem manuellen Trader — Sekunden bis Minuten.
-
Reaktionszeit auf einen Trade — die Verzögerung zwischen einem Order-Fill und der nächsten Aktion. Spiegelt die interne Architektur des Bots wider.
-
Zirkadianes Muster — das tägliche Aktivitätsprofil. Ein institutioneller MM agiert während der Handelssitzungen. Ein Krypto-Bot läuft rund um die Uhr.
-
Selbsterregung (Hawkes-Intensität) — wie stark eine aktuelle Order die nächste "auslöst". Market Maker zeigen eine starke Selbsterregung.
Zur Modellierung von Timing-Mustern eignen sich Hawkes-Prozesse — selbsterregende Punktprozesse — hervorragend. Die Parameter des Hawkes-Prozesses (Basisintensität μ, Erregungskoeffizient α, Abklingrate β) bilden einen kompakten "chronologischen Fingerabdruck" eines Teilnehmers.
Sizing: Wie viel und wie
- Größenverteilung — die Verteilung der Ordergrößen. Professionelle MMs verwenden oft runde Lots mit Rauschen: 100 ± 5, 500 ± 10.
- Größe-Tiefe-Korrelation — hängt die Ordergröße von der aktuellen Tiefe des Buchs ab?
- Bid-Ask-Größenasymmetrie — das Verhältnis der Größen auf Bid und Ask. Das Skew-Muster ist die "Handschrift" des Inventar-Managements.
- Größen-Autokorrelation — Wiederholbarkeit der Größen über die Zeit.
Placement: Wo im Buch
- Spread-Offset — Abstand vom Mid-Price in Ticks oder Basispunkten
- Level-Präferenz — Verankerung an bestimmten Levels (runde Zahlen?)
- Quoting-Symmetrie — wie symmetrisch sind Bid- und Ask-Orders
- Multi-Level-Footprint — wie viele Levels werden gleichzeitig gequotet
Reaction: Wie auf Ereignisse reagiert wird
- Post-Fill-Verhalten — was passiert, nachdem eine Order gefüllt wurde
- Volatilitätsreaktion — wie sich das Verhalten bei steigender Volatilität ändert
- Quote-to-Trade-Ratio (QTR) — das Verhältnis von Order-Updates zu Fills
- Reaktion auf adverse Selektion — Reaktion auf eine Preisbewegung gegen die Position
Lifecycle: Der Lebenszyklus der Order
- Verteilung der Order-Lebensdauer — durchschnittliche Order-Lebenszeit
- Modify vs. Cancel+New — wird über Modify oder Cancel+New aktualisiert?
- Cancel-Clustering — wird einzeln oder in Batches storniert?
Teil 3: Klassifikation der Teilnehmer
Taxonomie der Marktteilnehmer: Market Maker, HFT, opportunistische, fundamentale und Noise-Trader
Taxonomie der Marktteilnehmer
Anhand von Verhaltensmerkmalen lassen sich Teilnehmer in stabile Kategorien einteilen. Forschung der CFTC (Kirilenko et al., 2011):
1. Market Maker
- Zweiseitige Quotes (Bid + Ask) für >80% der Zeit
- Netto-Position nahe null am Tagesende
- Hohe QTR (>100:1)
- Reagieren auf Volatilität mit Spread-Ausweitung
2. High-Frequency-Trader (HFT)
- Extrem hohe Nachrichtenrate (>1000 Ereignisse/Minute)
- Sehr kurze Haltedauer (Sekunden)
- Reaktionszeiten im Submillisekundenbereich
3. Opportunistische Trader
- Moderate Frequenz
- Reagieren auf spezifische Marktbedingungen
- Unregelmäßiges Timing, geclustert um Ereignisse
4. Fundamentale Trader
- Bauen langfristige Positionen auf
- Niedrige Frequenz, große Ordergrößen
- TWAP/VWAP-Algorithmen zur Ausführung
5. Noise-Trader (Retail)
- Kleine Größen, unregelmäßiges Timing
- Reaktiv: handeln nach Preisbewegungen, nicht davor
- Market Orders bei Spitzenvolatilität
Klassifikationsmethoden
Supervised Learning: Für DEX-Daten (Hyperliquid) lässt sich ein Trainingsdatensatz aus Adressen bekannter Market Maker zusammenstellen. RNN-Modelle erreichen eine Genauigkeit >85%.
Unsupervised Learning:
- Spectral Clustering (Cont et al., 2023) — Clustering nach Ähnlichkeitsmatrix der Order-Flow-Muster
- FIDR-SCAN (2024) — Feature-Interpolation + Dimensionsreduktion + dichtebasiertes Clustering
- Inverse Reinforcement Learning (CFTC, 2014) — Rekonstruktion der Belohnungsfunktion jedes Traders
Teil 4: Identifikation konkreter Market Maker
Von der Klassifikation zur Identifikation
Klassifikation beantwortet die Frage "Ist das ein Market Maker?" Identifikation beantwortet die Frage "Ist das genau dieser Market Maker?"
Aufbau des Fingerprint-Vektors
Aus den fünf Dimensionen extrahieren wir einen numerischen Vektor — das Embedding des Teilnehmers:
Fingerprint Vector (example):
┌──────────────────────────────────────────────────────────┐
│ Timing: │
│ hawkes_mu: 0.3 (base intensity) │
│ hawkes_alpha: 0.7 (self-excitation) │
│ hawkes_beta: 1.2 (decay rate) │
│ median_IOI_ms: 240 (ms between orders) │
│ circadian_peak_utc: 14.5 (peak activity) │
│ │
│ Sizing: │
│ median_size: 500 │
│ size_cv: 0.08 (coeff. of variation) │
│ round_lot_ratio: 0.92 (round lot share) │
│ bid_ask_size_ratio: 0.97 │
│ │
│ Placement: │
│ median_offset_bps: 3.2 (from mid-price) │
│ quoting_symmetry: 0.94 (0=asymmetric,1=symm) │
│ num_levels: 5 (quoted levels) │
│ │
│ Reaction: │
│ post_fill_delay_ms: 12 │
│ vol_spread_elasticity: 2.1 (spread/sigma) │
│ qtr: 850 (quote-to-trade ratio) │
│ │
│ Lifecycle: │
│ median_lifetime_ms: 1200 │
│ modify_ratio: 0.85 (modify vs cancel+new) │
│ batch_cancel_rate: 0.60 (batch cancel share) │
└──────────────────────────────────────────────────────────┘
Adress-Clustering: "Ein Betreiber — N Wallets"
Adress-Cluster-Graph: ein Betreiber — mehrere Wallets, gruppiert nach Verhaltensähnlichkeit
Auf Hyperliquid kann ein einzelner Market Maker über Dutzende oder Hunderte Adressen operieren.
Clustering-Algorithmus:
- Für jede aktive Adresse — einen Fingerprint-Vektor über ein Fenster von N Stunden erstellen
- Hierarchisches Clustering — Adressen mit Distanz < Schwellenwert zusammenführen
- Zeitliche Validierung — Stabilität des Clusters über die Zeit prüfen
- Cross-Pair-Validierung — wenn zwei Adressen unterschiedliche Paare handeln, aber die Fingerabdrücke übereinstimmen — starkes Signal
Cluster #7 (suspected: Wintermute)
├── 0x3a1f...2e8c — BTC/USDT, 45% of activity
├── 0x7b2d...9f1a — ETH/USDT, 30% of activity
├── 0xc4e8...5d3b — SOL/USDT, 15% of activity
└── 0x91fa...0c7e — ARB/USDT, 10% of activity
Common pattern: symmetric quoting, 5 levels, median_IOI=240ms,
median_size=500±8%, batch cancel 60%, presence 95%
Teil 5: Manipulationsszenarien und ihre Fingerabdrücke
Spoofing: Der Fingerabdruck einer Scheinwand
Spoofer fingerprint:
cancel_rate: > 95%
lifetime: < 2 seconds
placement: 1-3 ticks from mid-price
size: anomalously large (>10x median depth)
reaction_to_approach: cancel when price approaches
cyclicity: repeats >3 times / minute
Squeeze: Die Liquiditätsfalle
Vier Phasen: stille Akkumulation, Liquiditätsentzug, Stop-Order-Kaskade, Gewinnmitnahme. Echtzeiterkennung ist möglich, indem der Übergang von Phase 1 zu Phase 2 identifiziert wird.
Iceberg / verdeckte Akkumulation: Der stille Aufbau
Hidden accumulation fingerprint:
visible_size: small (10-50 lots)
refill_speed: instant (< 100ms after fill)
refill_count: > 20 at a single level per session
price_reaction: price does not move despite volume
Wash Trading: Selbstgeschäfte
Zwei oder mehr Adressen desselben Clusters sitzen gleichzeitig auf Bid und Ask und handeln gegeneinander. Zweck: Aufblähung des Volumens.
Teil 6: Umsetzung in Marketmaker.cc
Architektur des Verhaltens-Fingerprint-Systems
┌─────────────────────────────────────────────────────────────┐
│ DATA LAYER │
│ ├── Hyperliquid Node → L3 order-by-order + wallet IDs │
│ ├── CEX WebSocket → L2 depth + trades │
│ └── Historical Store → QuestDB / Parquet │
├─────────────────────────────────────────────────────────────┤
│ FEATURE EXTRACTION │
│ ├── Timing Engine → Hawkes fit, IOI distribution │
│ ├── Sizing Engine → Size stats, round-lot detection │
│ ├── Placement Engine → Offset calc, symmetry analysis │
│ ├── Reaction Engine → Post-fill tracker, vol response │
│ └── Lifecycle Engine → Lifetime stats, cancel patterns │
├─────────────────────────────────────────────────────────────┤
│ CLASSIFICATION / IDENTIFICATION │
│ ├── Online Classifier → Real-time participant tagging │
│ ├── Cluster Engine → Address clustering (DEX) │
│ ├── Similarity Search → Fingerprint matching │
│ └── Anomaly Detector → Spoof / squeeze / wash detection │
├─────────────────────────────────────────────────────────────┤
│ VISUALIZATION │
│ ├── Queue Position + Participant Labels │
│ ├── Cluster Graph (known MM clusters) │
│ ├── Alert System (manipulation detected) │
│ └── Historical Fingerprint Browser │
└─────────────────────────────────────────────────────────────┘
Was der Trader im Terminal sieht
╔═══════════════════════════════════════════════════════════════════════════╗
║ 10000 USDT │ Total: 3,200 ║
║──────────────┼───────────────────────────────────────────────────────── ║
║ Breakdown: │ 🤖 MM (cluster#7, ~Wintermute): 800 lots [5 levels] ║
║ │ 🤖 MM (cluster#12, unknown): 400 lots [3 levels] ║
║ │ ⚠️ Suspicious (spoof score 87): 500 lots [lifetime<2s]║
║ │ 🟡 @pro_scalper: 100 lots ║
║ │ 🔴 MINE: 10 lots ║
║ │ 👤 Retail / unclassified: 1,390 lots ║
║──────────────┼───────────────────────────────────────────────────────── ║
║ Queue ahead │ Real: ~1,200 (excl. spoof) Nominal: 1,800 ║
║ "Clean" ETA │ 6.7s (vs nominal 10s) ║
║ Wall type: │ MM-backed (65% MM volume) — likely to hold ║
╚═══════════════════════════════════════════════════════════════════════════╝
Alerts
- 🔴 Spoof auf Ihrem Preislevel erkannt — ein verdächtiger Block wurde vor Ihrer Order identifiziert
- 🟡 MM-Rückzug — ein Market Maker hat seine Quotes zurückgezogen, die Liquidität ist gesunken
- 🟡 Squeeze-Setup erkannt — ein Adress-Cluster baut eine Position auf und entzieht Liquidität
- 🟢 Wand verstärkt — Volumen eines bekannten MM wurde auf Ihrem Level hinzugefügt
Teil 7: Ethik und Grenzen
Was akzeptabel ist und was nicht
Akzeptabel und erwünscht:
- Klassifikation anonymer Teilnehmer nach Typ für die eigenen Handelsentscheidungen
- Erkennung von Manipulation zum Schutz vor adverser Selektion
- Clustering von Adressen auf DEX zum Verständnis der Marktstruktur
Nicht akzeptabel:
- Deanonymisierung von Personen anhand von Wallet-Adressen
- Verkauf identifizierter Muster ohne Zustimmung
- Nutzung der Daten zur Marktmanipulation
Grenzen
- Adaptive Algorithmen — fortgeschrittene MMs fügen Randomisierung hinzu
- Regimewechsel — ein einzelner Bot kann sein Verhalten je nach Marktregime ändern
- Falsch-Positive — zwei Teilnehmer können zufällig ähnliche Parameter aufweisen
- CEX-Intransparenz — L3-Daten sind an CEX nicht verfügbar
Fazit: Vom Lesen des Buchs zum Lesen der Teilnehmer
Ein traditioneller Trader sieht: 2.400 Lots auf dem Level 10000. Ein fortgeschrittener Trader sieht: "meine Order ist die 1.800. in der Warteschlange, ETA — 15 Sekunden." Doch ein Trader mit Verhaltens-Fingerprinting sieht:
"800 dieser 2.400 sind ein Market Maker (vermutlich Wintermute), die Wand ist solide. 500 sind mutmaßliche Spoofs, die reale Warteschlange vor mir beträgt 1.300, nicht 1.800. Angepasste ETA — 10 Sekunden. Der Market Maker zieht seine Quotes nicht zurück — also ist vorerst keine große Bewegung zu erwarten."
Jede neue Informationsebene ist ein Vorteil. Und anders als Geschwindigkeit ist die Qualität der Orderbuch-Interpretation ein Bereich, in dem ein Retail-Trader konkurrieren kann.
Bei Marketmaker.cc bauen wir dieses System — von der Warteschlangenposition bis zum Verhaltens-Fingerprinting — als einheitliches Produkt.
Vorheriger Artikel der Serie: "Warteschlange in der Wand: Analyse der Orderposition in der Orderbuch-Dichte"
Referenzen und weiterführende Lektüre
- Kirilenko A., Kyle A., Samadi M., Tuzun T. — "The Flash Crash: High-Frequency Trading in an Electronic Market" (CFTC, 2011)
- Paddrik M., Hayes R., Scherer W., Beling P. — "Gaussian Process-Based Algorithmic Trading Strategy Identification" (CFTC / OFR, 2014)
- Cont R. et al. — "Unsupervised spectral clustering of trader order flow" (2023)
- FIDR-SCAN — "Explainable Machine Learning for HFT Dynamics Discovery" (2024)
- Do B.L., Putniņš T.J. — "Detecting Layering and Spoofing in Markets" (SSRN, 2023)
- Hawkes A.G. — "Spectra of Some Self-Exciting and Mutually Exciting Point Processes" (Biometrika, 1971)
- Avellaneda M., Stoikov S. — "High-Frequency Trading in a Limit Order Book" (Quantitative Finance, 2008)
Authors
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.