Skip to content
← All work

Case study 17 / 17

TradeNova

Copy trading across seven brokers, built to execute in under 3 seconds.

Status
Ongoing
Market
USA
Type
Trading platform
Services
Product engineering · Real-time systems · UI/UX
TradeNova — Trading platform Ongoing

/01

The spark

TradeNova is a copy trading platform for traders who run several prop-firm or personal accounts. A trade placed on one leader account is mirrored to up to 20 or more follower accounts, across seven futures brokers, with one dashboard to watch them all.

/02

The friction

Copy trading only works if every follower fills fast. Each of the seven brokers speaks a different protocol, from REST and WebSocket to FIX and raw TCP, and one slow or failing broker must never hold up the rest. The target is every follower account executing within 3 seconds, worst case.

/03

The wiring

A Go backend fans each trade out to all follower accounts in parallel, with Kafka carrying signals and results between services. The latency is budgeted stage by stage: detection, messaging, dispatch and broker execution. Each broker session is authenticated at startup and kept fresh, and a circuit breaker per broker isolates failures. Sizing rules (fixed, proportional or percent) and pre-trade risk checks run before any order goes out.

/04

The build

A live dashboard with real-time P&L, an order log, a positions panel and charts, updated over a WebSocket connection. Account management lets traders add and sync broker accounts, and a reports page exports to CSV. Sign-in is token-based, with sessions held in Redis.

/05

Live

In build: six phases planned, the first four complete and the dashboard phase underway. The 3-second figure is the design target; load and failure testing are still ahead, so there are no measured results yet.

/06

What's next

Load testing at 20 accounts, failure testing of the broker circuit breakers, credential encryption, monitoring and alerting, and low-latency hosting.

Next project

TXGRiyadh BIM firm's website, managed end to end from its own admin.