Changelog

What's new

Features, improvements, and fixes.

Update 074Connectivity

FIX 4.4 liquidity gateway

FIX protocol connectivity for institutional liquidity management platforms. Extends Virtex's venue connectivity to the broader FIX ecosystem.
Update 073Risk & Compliance

OMS balance snapshots on demand

OMS can emit a full balance snapshot on demand for downstream consumers to hard-set their state. Clean reconciliation baseline.
Update 072Infrastructure

v3 gateway adapter migration

Gateways dispatch typed v3 events directly to adapters instead of legacy FIX translation. Cleaner, faster, fewer moving parts.
Update 071Connectivity

Zodia Markets gateway live

Custody and OTC venue gateway for institutional clients. Auth, order entry, and status tracking with Zodia Markets.
Update 070Account & Ops

Broker onboarding workflow

Broker discovery, relationship request/accept/decline lifecycle, onboarding checklist with computed stages, and WebSocket push notifications.
Update 069Risk & Compliance

Ledger reporting API

REST endpoints for querying ledger entries, transaction history, and balance movements.
Update 068Risk & Compliance

Fee events in the ledger

FeeCharged events emitted on fills and projected into the ledger with correlation back to the original order.
Update 067Risk & Compliance

Balance movement history API

Full audit trail of every deposit, withdrawal, fill, and fee that changed a balance. Queryable via API.
Update 066Infrastructure

WebSocket reconnect state snapshots

On WebSocket login, the server sends a full state snapshot — open orders, positions, balances. Clients never miss anything during a disconnect.
Update 065Infrastructure

Snowflake ID generation

All business IDs generated using a Snowflake-style generator. Deterministic, replay-safe, monotonically increasing.
Update 064Connectivity

Banking rails integration

Virtual IBANs with webhook-based balance updates for fiat deposits and withdrawals. Supports GBP, EUR, and USD with automated treasury sweep functions.
Update 063Infrastructure

Idempotent replay guards

Every projection handler is idempotent. Event stream replay doesn’t create duplicate database records.
Update 062Infrastructure

Async projection writer

Database writes decoupled from the event stream reader. DB latency never blocks event processing.
Update 061Risk & Compliance

Balance reconciliation engine

Internal balances reconciled against venue-reported balances on every gateway connect. Drift detection with auto-correction and alerting.
Update 060Client Layer

White-label client experience

Client-facing portal branded as your own. Your logo, your domain, your client relationship — powered by Virtex infrastructure underneath.
Update 059Risk & Compliance

Pre-trade balance checks enforced

OMS rejects orders when insufficient free balance. Funds locked on submission, unlocked on cancel or reject. No more over-trading.
Update 058Client Layer

Interactive CLI (REPL) for trading

Terminal with tab completion: submit orders, cancel, deposit/withdraw, view positions, watch order flow, stream prices, run RFQs, manage accounts and venues. ANSI colour output.
Update 057Infrastructure

MarketData Engine rewrite

Dedicated MarketData Engine with orchestrator managing transport lifecycle separately from data processing. Primitive-only event model — no object allocation on the hot path.
Update 056Infrastructure

v3 event model rewrite

Complete rewrite using typed domain events, pure enum-based status codes, scaled-long arithmetic for prices/quantities, and zero-allocation hot path design.
Update 055Infrastructure

Three-level reference data model

Asset → Instrument → Listing. Assets are the base (BTC, ETH). Instruments are tradeable pairs. Listings are venue-specific with lot/tick sizes.
Update 054Infrastructure

Sequencer module for exactly-once processing

Strict ordering and deduplication of the business event stream. Ensures exactly-once processing semantics across all downstream consumers.
Update 053Infrastructure

Runtime and framework upgrade to latest LTS

Running on the latest JDK LTS and Spring Boot with Jakarta namespace. Staying current.
Update 052Connectivity

Gateway startup reconciliation

Gateways sync open orders and positions from venues on startup. Catches anything that happened while offline.
Update 051Infrastructure

Venue API keys secured in AWS Secrets Manager

Venue credentials stored in AWS Secrets Manager with local file fallback for dev. Secrets never touch the event stream.
Update 050Infrastructure

BBO order books for lightweight venues

Best-bid/offer top-of-book representation for venues where full depth isn’t needed. Lighter, faster.
Update 049Connectivity

BTC Markets gateway and market data

Australian exchange gateway with commission tracking and liquidity indicator mapping. Full market data feeds.
Update 048Infrastructure

Redis-backed market data pipeline

Python-based market data ingestors push to Redis, Java services consume. Allows non-Java feeds to participate in the market data pipeline.
Update 047Infrastructure

WebSocket trading support

Full order entry and cancellation via WebSocket, in addition to REST. Lower latency for active traders.
Update 046Connectivity

Bullish gateway and market data

WebSocket-based gateway with market data, order entry, and min/max order size enforcement from venue config.
Update 045Connectivity

Phemex gateway live

REST-based gateway adapter for Phemex.
Update 044Connectivity

Gemini gateway live

Full gateway adapter for Gemini with Auth0 integration.
Update 043Execution

Post-only order support

Maker-only orders wired through the OMS to Binance and other venues that support participate-don’t-initiate execution.
Update 042Risk & Compliance

Commission tracking per fill

Commissions captured per fill with currency and liquidity indicator (maker/taker). Stored in database and available via API.
Update 041Connectivity

MEXC gateway and market data

Gateway with Protobuf wire protocol plus live market data from MEXC. Order entry, cancel, status, and streaming book data.
Update 040Execution

Mass cancel for orders

Cancel all open orders for an account or a list of order IDs in a single command.
Update 039Infrastructure

Machine-to-machine API users

Headless API access with M2M tokens for programmatic trading. No browser login needed.
Update 038Connectivity

Binance Futures gateway

Perpetual futures trading on Binance with position mapping and settlement handling.
Update 037Connectivity

Oanda FX gateway

FX price feed and gateway adapter for Oanda. Extends Virtex beyond crypto into traditional FX.
Update 036Risk & Compliance

Ledger service live

Double-entry style ledger records created for every fill, fee, deposit, and withdrawal. Prime brokerage accounting from day one.
Update 035Infrastructure

OpenAPI specification maintained

Auto-generated OpenAPI spec covering all REST endpoints. Bot and SDK clients generated directly from the spec.
Update 034Execution

RFQ workflow live

Full request-for-quote lifecycle: client requests a quote, quoter streams live bid/ask with configurable BPS spread, client can hit or lift. Integrated into CLI and Telegram bot.
Update 033Infrastructure

Role-based access control

Per-endpoint authorisation with roles: ADMIN, USER, QUOTE. Admin users see all accounts; regular users only see accounts they’ve been granted.
Update 032Infrastructure

CQRS architecture formalised

API is a pure read-side projection. Commands go to the event queue, events are projected into Postgres for REST and WebSocket consumption. No business logic in the API layer.
Update 031Execution

Force cancel for unresponsive venues

API endpoint and CLI command to force-cancel orders when venues are unresponsive. Ensures order state never gets stuck.
Update 030Execution

Back-to-back broker order routing

Client orders automatically create a back-to-back order on the broker’s exchange account. Fills flow back through a three-level chain: client → broker → venue.
Update 029Execution

Manual cross/fill support for OTC

OTC-style manual trade entry for off-venue crosses. Generates proper trade capture reports and position updates.
Update 028Connectivity

Bybit gateway live

Spot trading on Bybit with multi-execution message support. Bybit sends multiple fills in a single message — handled correctly.
Update 027Infrastructure

Queue-based config distribution

Reference data, accounts, gateways, and instruments distributed via event streams. All services read from the queue — no database dependency for hot-path config.
Update 026Infrastructure

OAuth2/OIDC authentication

Secure authentication with Google, GitHub, and password login. JWT tokens with role-based authorities.
Update 025Execution

Smart Order Router live

Aggressive orders routed to the venue with the best price across all connected exchanges. Configurable per client and per instrument.
Update 024Execution

TWAP strategy engine

Time-weighted average price algo that slices parent orders across configurable intervals. Strategies survive restarts — state is persisted and resurrected on reboot.
Update 023Connectivity

Binance live market data service

Dedicated Binance WebSocket service for real-time book and trade feeds, separate from the order gateway.
Update 022Risk & Compliance

Lot and tick size enforcement

Orders validated and rounded to venue-specific lot sizes and tick sizes before submission. No more rejected orders from size mismatches.
Update 021Account & Ops

Dynamic account creation on first login

New users get an account automatically on first JWT login. Accounts, entities, and gateway configs can be created at runtime.
Update 020Infrastructure

API key authentication with HMAC

HMAC-based API key/secret pairs for programmatic access. Keys stored as salted hashes — never plaintext.
Update 019Connectivity

Coinbase gateway live

Order entry, cancellation, position sync, and reject parsing on Coinbase.
Update 018Infrastructure

Exchange simulator for onboarding and testing

Full-featured exchange simulator for client onboarding, sandbox testing, and development. Supports fills, rejects, positions, and WebSocket connectivity — no live venue needed.
Update 017Infrastructure

WebSocket real-time streaming

Live order updates, position changes, market data quotes, and notifications streamed over WebSocket. Subscribers only receive events for their accounts.
Update 016Client Layer

Telegram trading bot

Place orders, cancel, check positions, get price quotes, and run RFQs — all via Telegram. Live updates pushed over WebSocket.
Update 015Infrastructure

REST API

Full API surface for orders, positions, trades, instruments, accounts, and users. Paged responses, validation, and auto-generated OpenAPI spec.
Update 014Client Layer

Web trading UI live

React-based trading frontend with AG Grid tables, TradingView charts, order entry, positions, child orders, and transaction history. Real-time streaming via WebSocket.
Update 013Account & Ops

Multi-entity, multi-account hierarchy

Entities (legal entities / firms) contain accounts. Accounts have counterparties, venues, and routing rules. Full CRUD via API.
Update 012Risk & Compliance

Account-based position tracking

Positions tracked per account with locked and free breakdown. Updated on fills, deposits, withdrawals, and expired orders.
Update 011Execution

Guaranteed cancel confirmation

Orders stay in pending-cancel state until the venue explicitly confirms. No optimistic cancellation that can desync state between Virtex and the exchange.
Update 010Infrastructure

Distributed tracing with OpenTelemetry

Spans propagated across all services for end-to-end distributed tracing. See exactly where time is spent from order submission to venue fill.
Update 009Execution

Limit, Market, and IOC order types

Full support for limit orders, market orders, and immediate-or-cancel with time-in-force handling.
Update 008Execution

Parent/child order management

Client-facing parent orders automatically spawn venue-specific child orders. Fills, cancels, and status changes cascade correctly. Supports three-level chains for broker routing.
Update 007Infrastructure

Instrument reference data from CCDATA

Assets, instruments, and venue-specific listings sourced from CCDATA. Full mapping between venue symbols and canonical symbols across the platform.
Update 006Connectivity

Historical and live market data via Tardis

Stream historical and live order book data across all supported venues. Handles subscriptions, reconnection, and replay.
Update 005Connectivity

Binance Spot gateway live

Full order lifecycle on Binance Spot — new orders, cancellations, WebSocket streaming for fills, and commission tracking. Native integration, no third-party dependencies.
Update 004Execution

FIX 5.0 order protocol across the platform

All internal messages use FIX 5.0 semantics for consistency. NewOrderSingle, ExecutionReport, OrderCancelRequest — a standard protocol from order entry to venue.
Update 003Execution

Deterministic sub-microsecond order processing

All order state transitions happen on a single thread with no locks. Guarantees deterministic replay and sub-microsecond processing latency.
Update 002Infrastructure

Event-sourced order management system live

The entire order management system is built on an immutable event log. Every order, fill, cancel, and position change is recorded. The system can be fully replayed to reconstruct identical state.
Update 001Infrastructure

Core platform deployed to dedicated infrastructure

Virtex runs on private server infrastructure from day one — no shared cloud tenancy. The base deployment pipeline, environment configuration, and CI/CD scaffolding are live.