Skip to content

squidKid-deluxe/QTradeX-Algo-Trading-SDK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

29 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ QTradeX Core β€” Build, Backtest & Optimize AI-Powered Crypto Trading Bots

QTradeX Demo Screenshot

πŸ“Έ See screenshots.md for more visuals
πŸ“š Read the core docs on QTradeX SDK DeepWiki
πŸ€– Explore the bots at QTradeX AI Agents DeepWiki
πŸ’¬ Join our Telegram Group for discussion & support


⚑️ TL;DR

QTradeX is a lightning-fast Python framework for designing, backtesting, and deploying algorithmic trading bots, built for crypto markets with support for 100+ exchanges, AI-driven optimization, and blazing-fast vectorized execution.

Like what we're doing? Give us a ⭐!


🎯 Why QTradeX?

Whether you're exploring a simple EMA crossover or engineering a strategy with 20+ indicators and genetic optimization, QTradeX gives you:

βœ… Modular Architecture
βœ… Tulip + CCXT Integration
βœ… Custom Bot Classes
βœ… Fast, Disk-Cached Market Data
βœ… Near-Instant Backtests (even on Raspberry Pi!)


πŸ” Features at a Glance

  • 🧠 Bot Development: Extend BaseBot to craft custom strategies
  • πŸ” Backtesting: Plug-and-play CLI & code-based testing
  • 🧬 Optimization: Use QPSO or LSGA to fine-tune parameters
  • πŸ“Š Indicators: Wrapped Tulip indicators for blazing performance
  • 🌐 Data Sources: Pull candles from 100+ CEXs/DEXs with CCXT
  • πŸ“ˆ Performance Metrics: Evaluate bots with ROI, Sortino, Win Rate
  • πŸ€– Speed: Up to 50+ backtests/sec on low-end hardware

βš™οΈ Project Structure

 qtradex/ β”œβ”€β”€ core/ # Bot logic and backtesting β”œβ”€β”€ indicators/ # Technical indicators β”œβ”€β”€ optimizers/ # QPSO and LSGA β”œβ”€β”€ plot/ # Trade/metric visualization β”œβ”€β”€ private/ # Execution & paper wallets β”œβ”€β”€ public/ # Data feeds and utils β”œβ”€β”€ common/ # JSON RPC, BitShares nodes └── setup.py # Install script 

πŸš€ Quickstart

Install

git clone https://github.com/squidKid-deluxe/QTradeX-Algo-Trading-SDK.git QTradeX cd QTradeX pip install -e .

πŸ§ͺ Example Bot: EMA Crossover

import qtradex as qx import numpy as np class EMACrossBot(qx.BaseBot): def __init__(self): self.tune = {"fast_ema": 10, "slow_ema": 50} def indicators(self, data): return { "fast_ema": qx.ti.ema(data["close"], self.tune["fast_ema"]), "slow_ema": qx.ti.ema(data["close"], self.tune["slow_ema"]), } def strategy(self, tick_info, indicators): fast = indicators["fast_ema"] slow = indicators["slow_ema"] if fast > slow: return qx.Buy() elif fast < slow: return qx.Sell() return qx.Thresholds(buying=0.5 * fast, selling=2 * fast) def plot(self, *args): qx.plot( self.info, *args, ( # key name label color axis idx axis name ("fast_ema", "EMA 1", "white", 0, "EMA Cross"), ("slow_ema", "EMA 2", "cyan", 0, "EMA Cross"), ) ) # Load data and run data = qx.Data( exchange="kucoin", asset="BTC", currency="USDT", begin="2020-01-01", end="2023-01-01" ) bot = EMACrossBot() qx.dispatch(bot, data)

πŸ”— See more bots in QTradeX AI Agents


🚦 Usage Guide

Step What to Do
1️⃣ Build a bot with custom logic by subclassing BaseBot
2️⃣ Backtest using qx.core.dispatch + historical data
3️⃣ Optimize with qpso.py or lsga.py (tunes stored in /tunes)
4️⃣ Deploy live

🧭 Roadmap

  • πŸ“ˆ More indicators (non-Tulip sources)
  • 🏦 TradFi Connectors: Stocks, Forex, and Comex support

Want to help out? Check out the Issues list for forseeable improvements and bugs.


πŸ“š Resources


πŸ“œ License

WTFPL β€” Do what you want. Just be awesome about it 😎


⭐ Star History

Star History Chart

✨ Ready to start? Clone the repo, run your first bot, and tune away. Once tuned - LET THE EXECUTIONS BEGIN!