VeztaVezta
Overview

How Vezta Works

High-level architecture and data flow

Vezta brings together data from multiple prediction market platforms and delivers it to you through a single, unified interface. Here is how the pieces fit together.

Data Flow

How Aggregation Works

Vezta continuously ingests market data from Polymarket and from Kalshi (via DFlow on Solana) through their respective APIs. The backend processes this data through several stages:

1. Market Ingestion

The backend runs scheduled BullMQ jobs that pull market listings, prices, order book data, and trade history from each source. New markets are discovered automatically. Both connectors fetch the top events by volume (capped at 200 events per source on the shared VM).

2. Normalization

Polymarket and Kalshi have different data formats. The NormalizerService standardizes everything into a unified Market schema -- titles, categories, outcomes, prices, volumes, and resolution dates -- so you can compare across platforms seamlessly.

3. Real-Time Updates

Once markets are ingested, Vezta maintains live connections:

  • Polymarket prices stream over a persistent WebSocket connector (wss://ws-subscriptions-clob.polymarket.com)
  • DFlow (Kalshi) prices stream over DflowWsConnector (wss://prediction-markets-api.dflow.net/api/v1/ws)
  • Polymarket RTDS streams BTC/ETH/SOL/XRP Chainlink oracle prices used for short-duration crypto markets

All updates are broadcast to connected web clients via Socket.IO channels.

4. Short-Duration Pipeline

Rapid-cycle crypto Up/Down markets (Polymarket 5-minute, Kalshi 15-minute) run on a dedicated real-time pipeline isolated from the standard sync. New slots are auto-discovered every 15 seconds and registered with the persistent WebSocket connector for instant price updates.

5. Signal Detection

Beyond raw market data, the backend runs two intelligence pipelines:

  • News signal pipeline monitors RSS, GDELT, NewsData, CryptoNews, X/Twitter, and Telegram (~60 sources combined), classifies each article, and links it to relevant markets
  • Insider-signals pipeline detects smart-money wallets on Polymarket through 11-layer bot filtering and 10-metric scoring, then fans out alerts to Telegram channels (@vezta_signals), Expo push, and the in-app monitor feed

What This Means for You

As a trader, aggregation gives you several advantages:

  • Better price discovery -- See prices from both Polymarket and Kalshi side by side. When the same event is available on both platforms, you can compare and trade where conditions are most favorable.
  • Broader market coverage -- Some markets exist only on Polymarket, others only on Kalshi. Vezta surfaces all of them in one place.
  • Unified portfolio -- Vezta tracks all your positions in a single portfolio view, regardless of underlying exchange.
  • Faster reaction time -- Real-time WebSocket updates surface price movements the moment they happen.
  • Smart-money alerts -- The insider-signals pipeline surfaces high-conviction whale trades before they show up in basic leaderboards.

Custody Model

Vezta is non-custodial. Funds remain with the underlying settlement layer. Vezta routes orders, manages metadata, and tracks results, but never takes custody of your assets.

ExchangeCustodySettlement
PolymarketGnosis Safe (1-of-1) on Polygon, deterministic CREATE2 address per user. EOA signs orders, Safe holds USDC.e. Gasless via Builder Relayer.USDC.e on Polygon
Kalshi (via DFlow)Your own Solana wallet -- Phantom, Solflare, etc. Outcome tokens are SPL Token-2022 in your wallet.USDC on Solana

DFlow tokenizes Kalshi's CFTC-regulated markets as SPL tokens on Solana. You sign Solana transactions directly from your wallet -- the backend only proxies quote and status calls. KYC for buying is handled once via DFlow Proof (powered by Stripe Identity) and is free.

Platform Components

ComponentRole
Backend API (vezta-be)Market ingestion, trade routing, portfolio tracking, authentication, signals
PostgreSQL 17Persistent storage for markets, positions, users, signals (~40 Prisma models)
RedisApplication cache, Socket.IO pub/sub adapter, BullMQ job queues
Web App (vezta-fe)Browser-based trading terminal (Next.js 16, dark mode, lime-green accent)
WebSocketReal-time data delivery for prices, orderbook, orders, notifications, signals
Telegram Bots@vezta_signal_bot (insider alerts) and @vezta_bot (interactive trading, in development)

A native mobile app is in design (plans/mobile/) but is not yet shipped.

On this page