Skip to content

Condor: Telegram Interface for Hummingbot

Condor is a powerful Telegram bot that provides a mobile-friendly interface to interact with your Hummingbot trading infrastructure. It allows you to monitor portfolios, manage trading bots, execute trades on both centralized (CEX) and decentralized (DEX) exchanges, and configure your entire trading setupβ€”all from Telegram.

🌟 Key Features

  • πŸ“Š Portfolio Dashboard - Real-time portfolio tracking with PnL indicators, holdings breakdown, and graphical analysis
  • πŸ€– Bot Monitoring - Monitor and manage Hummingbot trading bots with live status and metrics
  • πŸ’± CEX/CLOB Trading - Place orders, manage positions, and configure leverage on centralized exchanges
  • πŸ”„ DEX Trading - Execute token swaps and manage liquidity positions via Gateway
  • βš™οΈ Configuration - Complete system configuration through Telegram menus
  • πŸ” Security - User ID whitelist and credential protection

πŸ—οΈ Architecture

Condor acts as a secure bridge between your Hummingbot instances and the Telegram platform. It translates user commands from Telegram into API requests that your Hummingbot instances understand.

System Architecture

Telegram User
     ↓
Condor Bot
     ↓
     β”œβ”€β†’ Hummingbot Backend API β†’ Trading Bots
     β”œβ”€β†’ Gateway β†’ DEX Protocols (Uniswap, Jupiter, etc.)
     └─→ GPT-4o + MCP (future AI features)

Integration Points

Hummingbot Backend API

  • Portfolio data aggregation
  • Bot status and control
  • Order and position management
  • Exchange connectivity

Gateway

  • DEX token swaps
  • Liquidity pool management
  • Wallet management
  • Multi-chain support

Project Structure

condor/
β”œβ”€β”€ main.py                     # Entry point
β”œβ”€β”€ servers.py                  # Server manager
β”œβ”€β”€ handlers/                   # Command handlers
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ portfolio.py            # Portfolio dashboard
β”‚   β”œβ”€β”€ bots/                   # Bot monitoring
β”‚   β”‚   β”œβ”€β”€ __init__.py
β”‚   β”‚   β”œβ”€β”€ menu.py
β”‚   β”‚   └── controller_handlers.py
β”‚   β”œβ”€β”€ cex/                    # CEX/CLOB trading
β”‚   β”‚   β”œβ”€β”€ __init__.py
β”‚   β”‚   β”œβ”€β”€ trade.py
β”‚   β”‚   β”œβ”€β”€ orders.py
β”‚   β”‚   └── positions.py
β”‚   β”œβ”€β”€ dex/                    # DEX trading
β”‚   β”‚   β”œβ”€β”€ __init__.py
β”‚   β”‚   β”œβ”€β”€ swap.py
β”‚   β”‚   β”œβ”€β”€ liquidity.py
β”‚   β”‚   └── pools.py
β”‚   └── config/                 # Configuration
β”‚       β”œβ”€β”€ __init__.py
β”‚       β”œβ”€β”€ servers.py
β”‚       β”œβ”€β”€ api_keys.py
β”‚       └── gateway/            # Gateway management
β”‚           β”œβ”€β”€ __init__.py
β”‚           β”œβ”€β”€ menu.py
β”‚           β”œβ”€β”€ deployment.py
β”‚           β”œβ”€β”€ wallets.py
β”‚           β”œβ”€β”€ connectors.py
β”‚           β”œβ”€β”€ networks.py
β”‚           β”œβ”€β”€ pools.py
β”‚           └── tokens.py
β”œβ”€β”€ utils/                      # Utilities
β”‚   β”œβ”€β”€ auth.py
β”‚   β”œβ”€β”€ telegram_formatters.py
β”‚   β”œβ”€β”€ portfolio_graphs.py
β”‚   └── trading_data.py
└── data/                       # Persistence
    └── condor_bot_data.pickle

Core Components

  1. Telegram Interface: The user-facing component running on Telegram clients, handling user input and displaying interactive menus.
  2. Command Handlers: The logic layer that processes specific commands (e.g., /portfolio, /bots) and determines the appropriate action.
  3. API Integration Layer: A secure communication module that interacts with the Hummingbot Backend API using standard REST protocols.
  4. Data Processing Utilities: Helper functions that format raw data from Hummingbot into clear, readable messages and visualizations (charts/graphs).

πŸš€ Why Use Condor?

  • Accessibility: Manage your bots on the go without needing SSH access or complex terminal commands.
  • Simplicity: Abstract away technical complexities with intuitive menus and buttons.
  • Efficiency: Quickly react to market changes by managing positions and bots instantly.