Obelisk Terminal — Documentation

Interface institutionnelle de trading multi-venues — monitoring temps réel, gestion du risque, exécution d'ordres et analytics de performance niveau hedge fund.

● LIVE REST API v4.39 ⚗ PAPER MODE

Qu'est-ce que le Terminal ?

Le Terminal Obelisk est une interface de trading dense, inspirée des terminaux Bloomberg et Refinitiv, conçue pour surveiller et gérer l'ensemble du capital déployé sur les 6 venues de trading actives simultanément.

Contrairement à l'interface DEX classique, le terminal est orienté gestion de portefeuille et monitoring professionnel : toutes les données critiques sont visibles en un coup d'œil, sans navigation.

Cas d'usage

MODE PAPER ACTIF Tous les trades sont simulés — aucun executor réel n'est connecté. Le terminal affiche les données de portefeuille réelles mais les ordres sont exécutés en mode paper (pool interne Obelisk). Pour activer le trading réel, un executor live (APEX, Drift, MUX…) doit être connecté et configuré dans platform_config.js.

Architecture technique

FrontendHTML5 pur — aucun framework, JetBrains Mono throughout, canvas animations
Data pricesBinance Public REST API — api.binance.com/api/v3/ticker/24hr — polling 3s
Data positionsObelisk Backend API — localhost:3001 — polling 5s
DeploymentCloudflare Pages — obelisk-dex.pages.dev/terminal.html
PersistancelocalStorage pour état UI + historique P&L sparkline
RefreshPrix : 3s · Portfolio : 5s · Horloge UTC : 1s

Quick Start

1

Lancer le backend Obelisk

Le terminal se connecte automatiquement à localhost:3001. Le backend doit tourner via PM2.

pm2 restart obelisk
pm2 logs obelisk --lines 20
2

Ouvrir le terminal

Depuis le dashboard Obelisk, cliquer sur ⌥ TERMINAL dans la header. Ou accéder directement :

https://obelisk-dex.pages.dev/terminal.html
# ou en local (si servi via wrangler dev) :
http://localhost:8788/terminal.html
3

Vérifier la connexion

La top bar doit afficher ● LIVE. Si le backend est injoignable, les positions s'affichent depuis le dernier état sauvegardé en localStorage (mode cache).

Indicateurs de connexion :

  • Dot vert clignotant = feed Binance actif
  • Latence affichée (ex: 12ms) = API backend OK
  • Dot orange = service dégradé
  • Dot rouge = service hors ligne
4

Naviguer avec le clavier

Le terminal est optimisé pour une utilisation clavier. Voir la section Keyboard Shortcuts.

Terminal Layout

Le terminal est organisé en 5 zones fixes + une top bar permanente :

┌────────────────────────────── TOP STATUS BAR ──────────────────────────────────────┐ │ ◈ OBELISK v4.39 │ 09:47:23 2026-03-12 UTC │ BTC $84,230 ▲1.2% │ ETH $2,103 ▼0.4% │ │ │ │ NAV $28.45 │ P&L TODAY +$0.32 │ ●LIVE │ └──────────────────┴─────────────────────────┴────────────────────────────────────────┘ ┌──────────────────┬─────────────────────────────────────────┬────────────────────────┐ │ PORTFOLIO │ OPEN POSITIONS │ VENUES │ │ (Left Panel) │ (Center Top Panel) │ (Right Panel) │ │ │ │ │ │ Equity $28.45 │ SYM VENUE SIDE SZ ENTRY MARK PNL% │ APEX ● $6.00 ▲ │ │ Margin / Free │ ───────────────────────────────────── │ DRIFT ● $5.00 ● │ │ Today P&L │ BTC/U APEX LONG $5 84230 84105 +0.4%│ MUX ● $5.00 ● │ │ Win Rate 67% │ ETH/U DRIFT SHORT $5 2103 2108 +0.2%│ ASTER ● $5.00 ● │ │ │ │ MORPH ● $3.45 ● │ │ RISK METRICS │ │ OBELIS ● $4.00 ● │ │ Sharpe 1.42 │ │ │ │ MaxDD -3.2% │ │ ── SYSTEM ─────────── │ │ VaR(95) $0.85 │ │ mixbot ● UP 4d │ │ │ │ obelisk ● UP 2d │ │ EXPOSURE │ │ API 12ms │ │ [████──] LONG │ │ │ │ [██────] SHORT │ │ ── ALLOCATION ─────── │ │ │ │ [bar chart] │ │ [P&L Sparkline] ├─────────────────────────────────────────┤ │ │ │ EXECUTION LOG │ │ │ [NEW ORDER] │ 09:46:12 BTC LONG APEX +$0.12 ✓ │ │ │ [↻ REFRESH] │ 09:44:51 ETH SHORT DRIFT +$0.08 ✓ │ │ └──────────────────┴─────────────────────────────────────────┴────────────────────────┘

Zones et dimensions

ZoneTailleContenuRefresh
Top Status Bar28px heightHorloge UTC, prix live, KPIs globaux, status système1s / 3s
Left — Portfolio220px widthEquity, capital, P&L, risk metrics, exposure, sparkline5s
Center Top — Positionsflex 1Table des positions ouvertes avec tri interactif5s
Center Bottom — Log160px heightHistorique d'exécution en temps réel, export TSVevent-driven
Right — Venues/System200px widthVenue matrix, system health, allocation chart5s

Keyboard Shortcuts

Le terminal est entièrement opérable au clavier. Les raccourcis ne fonctionnent pas si le focus est dans un champ de saisie.

ROuvrir Risk Dashboard (modal)
NOuvrir le panneau New Order
F5Forcer un refresh immédiat
LScroll vers le haut du log
ESCFermer modal/panneau ouvert
CTRL+EExport log (.tsv)
💡
Cliquer sur les en-têtes de colonnes du tableau Positions pour trier (par P&L, venue, ou symbol). Double-clic inverse l'ordre.

Panel — Portfolio

Le panel gauche est le centre de contrôle financier. Il agrège toutes les données de capital et de risque de l'ensemble des venues.

Section CAPITAL

ChampDéfinitionFormule
Total EquityValeur nette totale du portefeuille (toutes venues)Σ equity_venue
Used MarginCapital actuellement engagé en positions ouvertesΣ (size / leverage)
Free MarginCapital disponible pour de nouveaux tradesEquity − Used Margin
Margin Util.Pourcentage du capital en cours d'utilisation(Used / Equity) × 100

La barre de marge passe de gold à orange au-delà de 70% d'utilisation — signal de risque.

Section P&L

ChampDéfinition
TodayP&L réalisé depuis minuit UTC (positions fermées)
UnrealisedP&L flottant des positions actuellement ouvertes
All TimeP&L cumulé depuis le démarrage du compte
Trades TodayNombre de trades exécutés dans la journée
Win Rate% de trades positifs (trade gagnant = P&L > 0)
Avg RRRapport reward/risk moyen (ex: 3.2 = gain moyen 3.2× la perte)

Section RISK

Voir la section Risk Metrics pour les définitions détaillées de chaque indicateur.

Section EXPOSURE

Visualise la direction du portefeuille :

Long ExposureSomme notionnelle de toutes les positions longues (Σ size_long)
Short ExposureSomme notionnelle de toutes les positions short (Σ size_short)
Net ExposureLong − Short (positif = biais haussier, négatif = biais baissier)
Gross NotionalLong + Short (exposition totale, sans tenir compte du sens)
Effective LeverageGross Notional / Equity (levier effectif du portefeuille)

Sparkline P&L 24H

Graphique canvas animé du P&L cumulé sur les 24 dernières heures (288 points max à 5min d'intervalle). La couleur de la courbe reflète le P&L en cours : vert si positif, rouge si négatif.

Panel — Open Positions

Table dense de toutes les positions ouvertes sur l'ensemble des venues. Chaque ligne est une position individuelle.

Colonnes

ColonneDescriptionFormat
SYMBOLPaire tradée (ex: BTC/USDC)BASE/QUOTE
VENUEPlateforme d'exécutionAPEX / DRIFT / MUX…
SIDEDirection de la positionLONG / SHORT
SIZETaille notionnelle en USD$5.00 / $3.45
ENTRYPrix moyen d'entrée84,230
MARKPrix actuel du marché (live)84,105
LIQ.Prix de liquidation (estimation)rouge si proche
LEVLevier utilisé3x
P&LProfit/Perte non réalisé en USD+$0.103
P&L%P&L en % de la taille+2.06%
ACTIONBouton CLOSE pour fermer la position

Code couleur des lignes

Bordure vertePosition LONG
Bordure rougePosition SHORT
P&L vertPosition profitable
P&L rougePosition en perte
Flash animationClignotement bref lors d'une mise à jour de prix

Tri

Cliquer sur l'en-tête d'une colonne pour trier. Ou utiliser les boutons en haut à droite du panel :

Fermeture de position

Cliquer sur CLOSE sur une ligne déclenche une confirmation + appel POST /api/trade/venue/close. Résultat affiché dans l'Execution Log.

RÈGLE CRITIQUE Toujours fermer les positions manuellement AVANT d'arrêter le bot MixBot : cd ~/mixbot && node close_all_dydx.js. Le bouton "CLOSE ALL" du terminal appelle l'API pour chaque position séquentiellement.

Panel — Execution Log

Journal d'exécution temps réel. Chaque événement (ordre soumis, rempli, rejeté, erreur système) est enregistré avec timestamp UTC précis.

Format d'une entrée

09:46:12  BTC/USDC  [LONG]  APEX  Order filled — ID:ord_4f2a1b  +$0.103  

Types d'entrées

IcôneTypeDescription
✓ vertokOrdre rempli avec succès, position fermée OK
✗ rougefailOrdre rejeté, erreur de connexion, close failed
● cyaninfoÉvénement système (démarrage, refresh, connexion)
! orangewarnAvertissement non bloquant (slippage, delay)

Export

Cliquer EXPORT génère un fichier .tsv (Tab-Separated Values) importable dans Excel/Google Sheets avec colonnes : Time · Symbol · Side · Venue · Message · PnL.

Time      Symbol    Side  Venue  Message              PnL
09:46:12  BTC/USDC  LONG  APEX   Order filled — OK    0.103
09:44:51  ETH/USDC  SHORT DRIFT  Order filled — OK    0.081

Panel — Venue Matrix

Chaque carte de venue affiche l'état en temps réel de la plateforme et du capital déployé.

Structure d'une carte venue

● APEX                 SONIC    $6.00
████████████████░░░░░             ← barre equity relative
pos: 2    +$0.032    +0.53%
Dot statusVert = venue active · Orange = dégradée · Gris = désactivée
Barre equityProportion relative de capital vs la venue la plus capitalisée
pos:Nombre de positions ouvertes sur cette venue
P&L 24hProfit/perte de la venue sur 24h
ROI%(equity − capital) / capital × 100

System Health

ServiceDescriptionÉtat OK
mixbotBot de trading principal (PM2)● vert + uptime
obeliskBackend API Obelisk (port 3001)● vert + latence
supa-filmGénérateur DIVINITÉS (tâche fond)● vert
supa-scienceChercheur warp drive autonome● vert
API latencyTemps de réponse moyen backend< 50ms idéal
Binance feedLatence du feed de prix public< 100ms idéal

Panel — Risk Dashboard R

Modal accessible depuis le bouton RISK ou la touche R. Présente les métriques institutionnelles de gestion du risque.

Les métriques sont calculées sur l'historique P&L disponible (jusqu'à 288 points / 24h). Avec moins de 5 points, les métriques sont estimées à partir des stats connues (67% win rate, 3:1 RR).

Les 6 métriques clés

Voir la section Risk Metrics pour les formules complètes. Résumé rapide :

MétriqueSeuil OKSeuil WARNSeuil BAD
Sharpe Ratio≥ 1.50.5 – 1.5< 0.5
Sortino Ratio≥ 1.50.5 – 1.5< 0.5
Max Drawdown> -10%-10% à -20%< -20%
VaR 95%
Calmar Ratio≥ 1.00.5 – 1.0< 0.5
Win Rate≥ 60%30% – 60%< 30%

Matrice de corrélation

Corrélation de Pearson des rendements journaliers par venue sur 30 jours glissants. Une corrélation proche de 1.0 = mauvaise diversification (les venues bougent ensemble). Idéalement les corrélations inter-venues doivent rester sous 0.5.

0.00 – 0.30Bonne diversification — venues décorrélées
0.30 – 0.60Corrélation modérée — surveiller
0.60 – 1.00Forte corrélation — risque de concentration

Panel — Order Entry N

Panneau flottant pour soumettre des ordres manuels directement depuis le terminal, sans passer par l'interface DEX.

Champs

ChampDescriptionValeur par défaut
SYMBOLPaire à traderBTC/USDC
VENUEPlateforme d'exécution cibleAPEX
SIZE (USD)Taille notionnelle. Max $10 recommandé.$5
LEVERAGELevier. Max 3x obligatoire (config CLAUDE.md)3x
STOP LOSS %Distance SL depuis le prix d'entrée2%
TAKE PROFIT %Distance TP depuis le prix d'entrée4%
LIMITE CRITIQUE : MAX 3x LEVIER Configuré dans ~/mixbot/platform_config.js. Ne jamais dépasser 3x sur aucune venue. L'API rejettera les ordres hors limite.

Flow d'exécution

1

Saisie

Renseigner les paramètres et cliquer ▲ LONG ou ▼ SHORT

2

API call

POST /api/trade/order avec source: "terminal"

3

Log

Résultat affiché immédiatement dans l'Execution Log (✓ ou ✗)

4

Refresh auto

Positions table se met à jour 1 seconde après confirmation

API — Overview

Le terminal communique avec le backend Obelisk via une API REST locale. Base URL : http://localhost:3001

Toutes les requêtes utilisent AbortSignal.timeout() (3–5s) pour éviter de bloquer l'UI. En cas d'échec, le terminal utilise les données en cache (localStorage).

Endpoints utilisés par le terminal

MéthodeEndpointUsageFréquence
GET/api/healthStatus backend + latence5s
GET/api/trade/equity?venue=mixbotEquity, positions, P&L5s
GET/api/trade/venue/statsStats par venue5s
GET/api/system/pm2Status services PM25s
POST/api/trade/orderSoumettre un ordreon-demand
POST/api/trade/venue/closeFermer une positionon-demand

Source de prix externe

SourceEndpointDonnéesAuth
Binance Publicapi.binance.com/api/v3/ticker/24hrPrix + variation 24h — BTC, ETH, SOL, ARB, DOGE, SAucune

API — Equity & Positions

GET /api/trade/equity Equity totale + positions ouvertes

Query Parameters

ParamTypeRequisDescription
venuestringrequisIdentifiant de venue : mixbot, apex, drift
includeHistorybooleanoptionnelInclure l'historique P&L (défaut: false)

Response

{
  "equity": 28.45,
  "balance": 28.45,
  "pnl_today": 0.32,
  "pnl_total": 1.84,
  "positions": [
    {
      "id": "pos_abc123",
      "symbol": "BTCUSDC",
      "side": "long",
      "size": 5.0,
      "entryPrice": 84230,
      "markPrice": 84315,
      "pnl": 0.103,
      "leverage": 3,
      "venue": "apex",
      "liquidationPrice": 56153
    }
  ],
  "venueBreakdown": {
    "apex":    { "capital": 6.0, "equity": 6.12, "positions": 2, "pnl24h": 0.12 },
    "drift":   { "capital": 5.0, "equity": 5.03, "positions": 1, "pnl24h": 0.03 },
    "mux":     { "capital": 5.0, "equity": 4.97, "positions": 0, "pnl24h": -0.03 },
    "aster":   { "capital": 5.0, "equity": 5.08, "positions": 1, "pnl24h": 0.08 },
    "morpher": { "capital": 3.45, "equity": 3.41, "positions": 2, "pnl24h": -0.04 },
    "obelisk": { "capital": 4.0, "equity": 3.84, "positions": 0, "pnl24h": -0.16 }
  }
}

API — Orders

POST /api/trade/order Soumettre un nouvel ordre

Request Body

ChampTypeRequisDescription
symbolstringrequisPaire : BTC/USDC, ETH/USDC
sidestringrequislong ou short
sizenumberrequisTaille en USD. Min $3 / Max $10
leveragenumberoptionnelLevier. Max 3x (défaut: 3)
stopLossnumberoptionnelStop loss en % (défaut: 2)
takeProfitnumberoptionnelTake profit en % (défaut: 4)
venuestringoptionnelVenue cible. Auto-sélectionnée si absent
sourcestringoptionnelIdentifiant source : terminal, mixbot

Response (succès)

{ "success": true, "orderId": "ord_4f2a1b", "venue": "apex", "pnl": null }

Response (erreur)

{ "success": false, "error": "Insufficient margin", "code": 2080 }
POST /api/trade/venue/close Fermer une position ouverte
ChampTypeRequisDescription
positionIdstringrequisID de la position (retourné par /equity)
venuestringrequisVenue de la position
{ "success": true, "pnl": 0.103, "closedAt": 84315 }

API — Venue Stats

GET /api/trade/venue/stats Statistiques agrégées par venue
{
  "venues": {
    "apex":  { "trades_24h": 12, "win_rate": 0.67, "pnl_24h": 0.32, "avg_rr": 3.1 },
    "drift": { "trades_24h": 8,  "win_rate": 0.62, "pnl_24h": 0.14, "avg_rr": 2.9 }
  },
  "total_trades_24h": 47,
  "total_pnl_24h": 0.89
}
GET /api/system/pm2 Status des processus PM2
[
  {
    "name": "mixbot",
    "pm2_env": {
      "status": "online",
      "pm_uptime": 1710000000000,
      "restart_time": 2,
      "memory": 285000000
    }
  },
  { "name": "obelisk",    "pm2_env": { "status": "online" } },
  { "name": "supa-film",  "pm2_env": { "status": "online" } },
  { "name": "supa-science","pm2_env": { "status": "online" } }
]

Risk Metrics — Définitions

Toutes les métriques suivent les standards institutionnels utilisés par les hedge funds et family offices.

Sharpe Ratio
Mesure le rendement excédentaire par unité de risque total (écart-type). Un Sharpe > 1 est considéré bon, > 2 excellent. Annualisé en multipliant par √252 (jours de trading).
Sharpe = (Rendement moyen − Taux sans risque) / Écart-type × √252
Sortino Ratio
Variante du Sharpe qui ne pénalise que la volatilité à la baisse (downside deviation). Plus pertinent pour les stratégies asymétriques comme notre RR 3:1. Typiquement plus élevé que le Sharpe.
Sortino = Rendement moyen / Downside Deviation × √252
Max Drawdown (MDD)
Plus grande perte cumulée depuis un pic jusqu'à un creux (peak-to-trough). Exprimé en %. Un MDD de -5% signifie que le portefeuille a perdu 5% de son sommet avant de récupérer. Critique pour évaluer le risque de ruine.
MDD = (Creux − Pic précédent) / Pic précédent × 100
VaR — Value at Risk (95%)
Perte maximale attendue sur 1 jour avec une confiance de 95%. Si VaR(95%) = $0.85, il y a 5% de chance de perdre plus de $0.85 dans une journée. Basé sur la distribution historique des rendements. Ici estimé à 3% de l'equity totale.
VaR(95%, 1D) ≈ 3% × Equity totale
Calmar Ratio
Rapport entre le rendement annualisé et le Max Drawdown. Mesure l'efficience du rendement par rapport au risque de perte maximale. Un Calmar > 1 est satisfaisant.
Calmar = Rendement annuel / |Max Drawdown|
Win Rate
Pourcentage de trades avec P&L positif. Avec un ratio reward/risk de 3:1, le break-even théorique est 25% — c'est-à-dire qu'on peut perdre 75% des trades et rester rentable. Notre cible : > 60%.
Win Rate = Trades gagnants / Total trades × 100 — Break-even (RR 3:1) = 1/(1+3) = 25%
Beta (BTC)
Corrélation du portefeuille avec le marché BTC. Beta = 0 : portefeuille neutre au marché. Beta = 1 : suit parfaitement BTC. Beta négatif : couverture inversée. Objectif : Beta proche de 0 (market-neutral).
Beta = Cov(Rport, RBTC) / Var(RBTC)

Modèle d'Exposition

Effective Leverage

Le levier effectif est calculé sur l'ensemble du portefeuille, pas par position individuelle. Un levier de 1.5x signifie que la stratégie est 1.5× exposée au marché par rapport au capital déployé.

Gross Notional = Σ all positions (long + short, valued at mark price)
Effective Leverage = Gross Notional / Total Equity

Configuration leverage par venue

VenueMax LeverageConfigNote
APEX3xplatform_config.jsSonic chain
DRIFT3xplatform_config.jsSolana perps
MUX3xplatform_config.jsArbitrum perps
ASTER3xplatform_config.jsBinance-compatible
MORPHER3xplatform_config.js0% fees, synthetics
OBELISK3xplatform_config.jsPool interne

Venues — Vue d'ensemble

VenueChainCapitalFeesStatusNote
APEXSonic$60% maker ✅ ACTIVE Trading actif, max positions
DRIFTSolana$5faible ✅ ACTIVE Solana perps, max positions
MUXArbitrum$50.06% ✅ ACTIVE Stable, faible slippage
ASTERBSC$50.035% ✅ ACTIVE Binance-compatible, rapide
MORPHERBase L2$3.450% ✅ ACTIVE Synthetics crypto+stocks+forex
OBELISKArbitrum$40.1% ✅ ACTIVE Pool interne, capital propre
dYdXCosmos0.02% 🔴 DISABLED Perte $72→$0.06. Audit requis.
GRVTZKsyncfaible 🔴 DISABLED Margin insuffisante (<$6 equity requis)

Structure des Frais

Les frais de trading sont critiques pour la profitabilité HFT. Un fee de 0.1% sur 200 trades/jour = 20% du capital perdu quotidiennement.

VenueMaker FeeTaker FeeImpact HFT (200 trades/j)
APEX0%0% maker0% — optimal
MORPHER0%0%0% — optimal
ASTER0.035%0.035%-7% profit/jour
MUX0.06%0.06%-12% profit/jour
OBELISK0.1%0.1%-16.4% profit/jour
dYdX ⛔0.02%0.05%DISABLED — audit requis
💡
Pour le HFT (200+ trades/jour), utiliser exclusivement APEX et MORPHER (0% fees). Pour les stratégies medium-freq (<50 trades/jour), ASTER et MUX sont acceptables.

Chains — Benchmarks

ChainTPS réelBlock timeGas/txHFT?
Sonic5,000–10,0001s$0.00105 ($0.00021 batch)✅ Champion
Solana3,000–5,000400ms$0.00025✅ Top
Cosmos100–2,0006s$0 (gas free)✅ Free
Arbitrum1,000–2,000250ms$0.02–0.50⚠ Coûteux
Base500–1,0002s$0.01⚠ Limité
Morpher L2~0.07~15s$0⚠ 247 trades/j max

Glossaire Institutionnel

Terminologie utilisée dans le terminal, les métriques et l'API.

NAV — Net Asset Value
Valeur nette du portefeuille à un instant donné. Somme de toute l'equity sur toutes les venues. Équivalent de l'"AUM" (Assets Under Management) à notre échelle.
P&L — Profit and Loss
Variation de valeur du portefeuille. Réalisé = positions fermées. Unrealisé / Flottant = positions encore ouvertes (peut changer).
Margin / Used Margin
Portion du capital bloquée comme garantie pour des positions ouvertes. Avec un levier 3x : une position $5 immobilise $1.67 de margin.
Used Margin = Position Size / Leverage
Mark Price
Prix actuel utilisé pour le calcul du P&L et des liquidations. Différent du "last price" — calculé à partir de l'index de plusieurs exchanges pour éviter la manipulation.
Liquidation Price
Prix auquel la position sera automatiquement fermée pour éviter une perte supérieure au capital. Avec 3x levier LONG : Liq = Entry × (1 − 1/3) = Entry × 0.67.
Liq (LONG) = Entry × (1 − 1/Leverage) — Liq (SHORT) = Entry × (1 + 1/Leverage)
RR — Reward/Risk Ratio
Rapport entre le profit cible (TP) et la perte maximale (SL). Config MixBot : SL 2% / TP 4% = RR de 2:1. Avec SL 2% / TP 6% = RR 3:1. Un RR plus élevé permet d'être rentable avec un win rate plus faible.
RR = Take Profit % / Stop Loss % — Break-even WR = 1 / (1 + RR)
Notional / Gross Notional
Valeur totale d'une position ou d'un ensemble de positions, calculée au prix de marché. Une position $5 avec 3x levier a un notional de $15. Le gross notional agrège long + short sans tenir compte du sens.
Net Exposure
Différence entre l'exposition longue et courte. Un net exposure positif = portefeuille bullish. Neutre = market-neutral. Cible pour une stratégie équilibrée : proche de 0.
Slippage
Différence entre le prix attendu et le prix d'exécution réel. Cause : liquidité insuffisante dans l'orderbook. Plus fréquent sur les DEX. Impact négatif sur la profitabilité HFT.
Trailing Breakeven
Technique de gestion du SL où le stop-loss monte automatiquement au prix d'entrée (breakeven) une fois que le trade atteint un certain profit, éliminant le risque de perte tout en laissant courir les gains.
Paper Trading / Paper Mode
Mode simulation où les trades sont exécutés dans un pool virtuel sans argent réel. Identique au live dans ses calculs (prix réels, frais réels) mais sans connexion blockchain effective. Actif tant qu'aucun executor live n'est configuré.
Executor
Module de code qui exécute effectivement un ordre sur une blockchain/exchange. Dans MixBot : apex_connector.js, drift_connector.js, etc. Un executor désactivé = venue en paper mode.
Batch / Auto-Batcher
Système qui regroupe plusieurs transactions blockchain en une seule pour réduire les gas fees. Économie de 80% vs transactions individuelles. Implementé via Multicall3 sur EVM (Sonic/Arbitrum).
HFT — High Frequency Trading
Stratégie de trading avec un très grand nombre d'ordres (100–10,000+ par jour). Requiert 0% ou quasi-0% de frais pour être rentable. Dans Obelisk : implémenté via sonic-hft-engine.js avec EMA+RSI filtres.
Macro Guard
Filtre de direction basé sur une EMA longue (EMA50) pour aligner les trades avec la tendance macro. Depuis V64.266 : pas de LONG si prix < EMA50 (marché en crash), pas de SHORT si prix > EMA50 (marché haussier).
VWAP — Volume Weighted Average Price
Prix moyen pondéré par le volume. Utilisé comme signal de biais directionnel dans les stratégies HFT. Si prix > VWAP : tendance haussière intraday. Si prix < VWAP : tendance baissière.
EMA — Exponential Moving Average
Moyenne mobile qui donne plus de poids aux prix récents. EMA5/EMA20 cross = signal d'entrée HFT. EMA50 = macro guard (tendance lente). Réagit plus vite qu'une SMA à la même période.
RSI — Relative Strength Index
Oscillateur mesurant la vitesse et l'amplitude des mouvements de prix (0–100). RSI < 28 : oversold (signal d'achat). RSI > 72 : overbought (signal de vente). Paramètres V2.1 du sonic-hft-engine.

Configuration

Fichiers de configuration clés

FichierRôleEditer pour…
~/mixbot/platform_config.jsConfig par venue (leverage, sizes, enabled)Activer/désactiver venue, changer max size
~/obelisk/ecosystem.config.jsConfig PM2 Obelisk (port, RAM, restart)Changer port, mémoire max
~/mixbot/ecosystem.config.jsConfig PM2 MixBot + toutes les stratégiesAjouter stratégie, changer restart policy
~/obelisk/src/backend/obelisk-perps.jsPool de liquidité interneTaille du pool, prix oracle
terminal.html (ligne const API)URL backend terminalChanger l'URL backend (ex: remote server)

Variables d'environnement backend

PORT=3001
NODE_ENV=production
WALLET_ADDRESS=0x377706801308ac4c3Fe86EEBB295FeC6E1279140
ARBITRUM_RPC=https://arb1.arbitrum.io/rpc
BINANCE_WS=wss://stream.binance.com:9443/ws

Refresh intervals (terminal.html)

const REFRESH_MS = 5000;   // Portfolio + positions: toutes les 5s
const PRICE_MS   = 3000;   // Prix Binance: toutes les 3s
// Horloge UTC: 1s (setInterval)

Changelog

2026-03-12
v4.39 Terminal Institutionnel
Création de terminal.html — Bloomberg-style, 5 panels, risk dashboard, order entry, venue matrix, correlation matrix, sparkline P&L, keyboard shortcuts.
2026-03-10
v64.266 MixBot — Macro Guard EMA50
Toutes les stratégies HFT ont un macro guard EMA50 — no LONG en crash, no SHORT en bull. 7 stratégies mises à jour.
2026-03-08
v3.42 Obelisk — Roadmap Paliers
Système de paliers d'activation progressifs défini. 8 paliers de $1 à $100 capital total.
2026-03-06
v64.200+ 1inch Aqua ACTIVE
Non-custodial liquidity layer. ship/dock USDC Sonic testé live.
2026-02-19
v2.1 Sonic HFT Engine
EMA5/EMA20 cross + RSI 72/28 + cooldown 45s. Win rate 37–67%. Auto-batcher Profit Guard.
2026-02-18
v64.53 dYdX DISABLED
Perte catastrophique $72→$0.06. Audit requis avant réactivation.
2026-02-17
v3.0 TURBO Multi-Chain Blockchain Settlement
Sonic + Arbitrum live on-chain. Smart Account EIP-7702. Batch 80% savings. Transactions confirmées on-chain.

◈ OBELISK Terminal v4.39 — Documentation — 2026-03-12