Skip to content
ALGOVERSEINFOTECHAccelerate · Automate · Achieve
← All case studies
Product (ours)·Brokerage & trading infrastructure·2024–2025

MT5 Brokerage Back-Office

Client: Algoverse (product) / brokerage operators

An 11-service MetaTrader 5 brokerage back-office with real-time rates, WebSocket streaming, multi-tenant broker configuration and encrypted secrets.

11
microservices
Real-time
WebSocket rates & orders
Multi-tenant
broker configuration

Deep dive

MetaTrader 5 is the backbone of countless brokerages worldwide, but its native tooling leaves a significant gap: operators need a modern, multi-tenant back-office to manage clients, portfolios and live market data in a way MT5 alone doesn't provide. We built exactly that — a back-office platform assembled as a fleet of about eleven Spring Cloud services sitting behind Eureka service discovery and a Spring Cloud Gateway, so the whole system is horizontally scalable and independently deployable.

The heart of the platform is a tight integration with the external MT5 Manager API, which handles master-broker trade and order routing. Bridging a legacy trading API into a clean microservice architecture is delicate work: it has to be reliable, correctly sequenced, and resilient to the API's own quirks and outages. We wrapped it behind dedicated services so the rest of the system talks to stable internal contracts rather than the raw external API.

Around that core we layered a rates provider, a portfolio processor, client and history services, and a scheduler. These communicate over Kafka, Redis and RabbitMQ — Kafka for the event backbone, Redis for hot caching of rates and session state, and RabbitMQ for reliable task messaging. Splitting responsibilities this way means a spike in market-data volume doesn't slow down, say, client management, because each concern scales on its own path.

On the client side, live rates and account updates stream to a React 19 progressive web app over WebSockets, so traders watch prices and balances move in real time rather than refreshing a page. Delivering it as a PWA means one codebase installs like an app on desktop and mobile, with offline-friendly caching — a meaningful UX win for traders who live in the interface all day.

Because a brokerage back-office handles credentials and real money, security and isolation were non-negotiable. Configuration secrets are encrypted at rest with Jasypt, and broker settings are fully multi-tenant, so a single deployment can serve several distinct operators with completely isolated configuration and data. That multi-tenancy is what turns the platform from a one-off tool into something an operator can run as a product for many downstream brokers.

The problem

Brokerages running on MetaTrader 5 need a modern back-office: manage clients and portfolios, stream live rates, and route orders through the MT5 Manager API — securely, per-tenant, and in real time.

Our approach

  • Composed ~11 Spring Cloud services behind Eureka discovery and a Cloud Gateway.
  • Integrated the external MT5 Manager API for master-broker trade/order routing.
  • Streamed live rates and account updates over WebSockets to a PWA client.
  • Used Kafka, Redis and RabbitMQ for events, caching and messaging.
  • Encrypted configuration secrets with Jasypt; multi-tenant broker settings.

Outcome

  • Real-time back-office and a multi-tenant React 19 PWA client.
  • Clean separation of rates, portfolio, client and history processing.
  • Production-grade secret management and service discovery.
Engineering highlights

The hard parts we solved

Live market data over WebSockets

A dedicated rates pipeline pushes prices and account changes to clients with minimal latency.

Encrypted, multi-tenant config

Jasypt-encrypted secrets and per-tenant broker settings let one platform safely serve many operators.

MT5 Manager API integration

Reliable master-broker trade and order routing bridged into a modern microservice architecture.

Architecture

How it fits together

A simplified view of the system, layer by layer.

  1. Clients
    • Back-office (React)
    • Client PWA
  2. Edge
    • Gateway Server
    • Eureka discovery
    • auth-util
  3. Services
    • backoffice
    • client
    • portfolio-processor
    • rates-provider
    • cron
  4. Messaging
    • Kafka
    • RabbitMQ
    • Redis
  5. External
    • MT5 Manager API

Building something similar?

We've done this before. Let's talk about your system.

Start a project →