QuantaTrade AI — System Architecture¶
High-Level Architecture¶
graph TB
subgraph Clients["Client Layer"]
WEB[Trading Platform<br/>Next.js]
PSA[Presale App<br/>Next.js]
INV[Investor Dashboard<br/>Next.js]
ADM[Admin Panel<br/>Next.js]
end
subgraph Gateway["API Gateway Layer"]
GW[API Gateway<br/>REST + WebSocket + gRPC]
AUTH[Auth Service<br/>JWT, MFA, Sessions]
end
subgraph Core["Core Trading Services"]
ME[Matching Engine<br/>CLOB, Order Matching]
OMS[Order Management<br/>Smart Routing, OMS]
PMS[Portfolio Management<br/>Positions, P&L]
LED[Double-Entry Ledger<br/>Balances, Trades, Treasury]
end
subgraph Intelligence["Intelligence Layer"]
MD[Market Data Service<br/>DOM, L2/L3, Feeds]
SIG[Signal Engine<br/>AI Predictions, Scanners]
STRAT[Strategy Engine<br/>Python, Backtesting]
SENT[Sentiment Engine<br/>News, Social, Macro]
end
subgraph Financial["Financial Services"]
CUST[Custody Service<br/>BitGo Integration]
TRES[Treasury Service<br/>Allocation, Reserves]
MARGIN[Margin Engine<br/>Collateral, Liquidation]
MM[Market Maker<br/>Liquidity, Spreads]
end
subgraph Compliance["Compliance Layer"]
KYC[KYC Service<br/>Sumsub, Tiered]
AML[AML Monitor<br/>Transaction Screening]
AUDIT[Audit Logger<br/>Immutable Records]
end
subgraph Blockchain["Blockchain Layer"]
TOKEN[$QTRA Token<br/>ERC20]
SALE[SaleManager<br/>Presale Rounds]
VEST[Vesting Contracts<br/>Allocation, Claims]
STAKE[Staking Contract<br/>Rewards, Lock]
IDX[Chain Indexer<br/>Event Processing]
end
subgraph Data["Data Layer"]
PG[(PostgreSQL<br/>Ledger, Users, Orders)]
TS[(TimescaleDB<br/>Market Data, OHLCV)]
RD[(Redis Cluster<br/>Order Books, Cache)]
KF[Kafka/Redpanda<br/>Event Streaming]
end
WEB --> GW
PSA --> GW
INV --> GW
ADM --> GW
GW --> AUTH
GW --> Core
GW --> Intelligence
GW --> Financial
GW --> Compliance
ME --> LED
OMS --> ME
OMS --> PMS
PMS --> LED
CUST --> LED
TRES --> LED
MARGIN --> LED
KYC --> AUDIT
AML --> AUDIT
IDX --> TOKEN
IDX --> SALE
IDX --> VEST
IDX --> STAKE
Core --> KF
Core --> PG
Core --> RD
Intelligence --> TS
Intelligence --> KF
Financial --> PG
style Clients fill:#f5f5f5
style Gateway fill:#e0f2f1
style Core fill:#e8f5e9
style Intelligence fill:#e1f5fe
style Financial fill:#fff3e0
style Compliance fill:#fce4ec
style Blockchain fill:#f3e5f5
style Data fill:#eceff1
Service Boundaries¶
| Service | Responsibility | Communication |
|---|---|---|
| API Gateway | Routing, rate limiting, auth | REST, WebSocket, gRPC |
| Auth Service | Authentication, sessions, MFA | Sync (REST) |
| Matching Engine | Order matching, CLOB | Kafka events, gRPC |
| Order Management | Order lifecycle, smart routing | Kafka, REST |
| Portfolio Management | Position tracking, P&L | Kafka events |
| Ledger Service | Double-entry accounting | Sync (gRPC) |
| Custody Service | BitGo API, wallets | Async (webhooks) |
| Treasury Service | Capital allocation, reserves | Sync |
| Compliance Service | KYC/AML/sanctions | Sync + async |
| Market Data Service | Feeds, DOM, analytics | WebSocket, Kafka |
| Signal Engine | AI predictions, scanners | Kafka, REST |
| Strategy Engine | Strategy execution, backtesting | Python, Kafka |
| Margin Engine | Collateral, liquidation | Kafka events |
| Market Maker | Liquidity, spreads | Direct to matching engine |
| Chain Indexer | On-chain events | Kafka |
| Audit Logger | Immutable logging | Kafka (consume all) |
Data Flow¶
sequenceDiagram
participant U as User
participant GW as API Gateway
participant AUTH as Auth
participant OMS as Order Management
participant ME as Matching Engine
participant LED as Ledger
participant KF as Kafka
U->>GW: Place Order (REST/WS)
GW->>AUTH: Validate Token
AUTH-->>GW: OK (user, KYC tier)
GW->>OMS: Submit Order
OMS->>OMS: Validate (balance, limits, risk)
OMS->>ME: Route to Matching Engine
alt Internal Match
ME->>ME: Match against CLOB
ME->>KF: Publish Trade Event
KF->>LED: Update Balances
KF->>OMS: Order Filled
else External Route
OMS->>OMS: Route to external venue
OMS->>KF: Publish Fill Event
KF->>LED: Update Balances
end
OMS-->>GW: Order Status
GW-->>U: Confirmation (WS push)
QuantaTrade Codebase Reuse Map¶
Components that can be adapted from QuantaTrade's exchange-platform:
| QuantaTrade Component | QuantaTrade Use | Adaptation Needed |
|---|---|---|
| exchange-core2 (Java) | Matching Engine | Rebrand, adjust scale model for $QTRA pairs |
| order-router | Smart Order Routing | Add external venue connectors |
| api-gateway | API Gateway | Add presale & dashboard routes |
| ws-gateway | WebSocket Server | Same architecture, new topics |
| market-maker (Java) | Market Making Engine | Adapt for QT pairs and venues |
| Prisma schema | Database Models | Extend for KYC, vesting, staking |
| Docker/compose | Local Dev | Adapt service list |
| Admin panel (Next.js) | Admin Panel | Extend with presale management |
Estimated acceleration: 40-60% of Phase 1 M1 can leverage existing QuantaTrade code.