Algorithmic trading is one of those areas where the gap between "sounds simple" and "is actually complex" is enormous.
The basic loop sounds easy: watch prices, detect a signal, place an order. But production-grade algotrading infrastructure needs to handle exchange API rate limits, partial fills, order state reconciliation across disconnects, risk management overrides, and a dozen other edge cases that only show up when real money is on the line.
That's what I spent months building into ZipDex.
What ZipDex does
ZipDex is a crypto trading automation platform with three main features:
1. Strategy bots
Rule-based trading strategies you can configure without writing code. Common strategies like grid trading, DCA (dollar-cost averaging), MACD/RSI signal bots, and more. Set your parameters, connect your exchange API keys, and let it run.
2. Copy trading
Follow other traders' strategies automatically. When a trader you follow opens a position, your account mirrors it proportionally. This is the feature that took the longest to build correctly — the synchronization logic between the source account and all mirror accounts is genuinely tricky.
3. AI-assisted strategies
LLM-powered analysis layered on top of technical indicators. Not autonomous trading — more like a second opinion before entries. The AI component reads market context and sentiment and flags conditions where standard indicators might be misleading.
The hard parts
Exchange connectivity — Crypto exchanges have wildly inconsistent APIs. Rate limits vary, error codes aren't standardized, and WebSocket reliability is a joke on some platforms. I built an abstraction layer over the top of ccxt to normalize this.
Order reconciliation — WebSocket connections drop. When you reconnect, you need to reconcile your local order state with the exchange's actual state. Getting this wrong means missing fills or double-executing orders. This was the most failure-prone part of the system to build.
Risk management — Position size limits, maximum drawdown stops, per-trade risk percentages. These need to run synchronously before any order is placed and cannot be bypassed by any strategy. I built these as a non-negotiable layer that every order passes through.
Copy trading latency — When copying a trader, latency matters. A 500ms delay on a fast-moving entry can mean a significantly different fill price. The copy execution pipeline is one of the most optimized parts of the system.
What it's built with
Node.js backend with a Redis queue for order execution, PostgreSQL for trade history and state, WebSocket connections maintained with exponential backoff reconnection, and a React frontend for configuration and monitoring.
The AI component uses local LLM inference so no trading data leaves the machine.
Check it out at zipdex.io.
Built with: Node.js, Express, Redis, PostgreSQL, WebSockets, ccxt, React
Top comments (0)