Skip to content

Repository files navigation

Collab Trading

Terminal-Based Collaborative Trading System

A phased collaborative trading platform with a modular local engine, plugin-based strategies, and AWS cloud expansion roadmap. Built for traders who want to collaborate on trade ideas and strategies in real-time.

Python pandas License


What It Does

Collab Trading is a terminal-based collaborative trading system that enables traders to:

  • Share trade ideas and signals in real-time
  • Run backtests on collaborative strategies
  • Track performance across multiple contributors
  • Deploy to AWS for cloud-based collaboration

Phase 1: Local Engine (Current)

The foundation — modular strategy engine with data, broker, and CLI layers.

Phase 2: AWS Handlers (Planned)

S3 for data persistence, EC2 for compute, Lambda for event processing, CloudWatch for logging.

Phase 3: Docker + CI (Planned)

Containerized deployment with GitHub Actions CI pipeline.

Phase 4: Production (Planned)

Multi-environment deployment, hardening, and scaling.


Architecture

collab_trading/
├── collab_trading/
│   ├── __init__.py
│   ├── __main__.py           # CLI entry point
│   ├── cli/
│   │   └── main.py           # Command-line interface
│   ├── core/
│   │   ├── engine.py         # Core trading engine
│   │   ├── strategy.py       # Strategy base class
│   │   ├── data.py           # Data provider abstraction
│   │   └── broker.py         # Broker interface
│   ├── aws/
│   │   ├── s3_handler.py     # S3 data persistence (Phase 2)
│   │   ├── ec2_handler.py    # EC2 compute (Phase 2)
│   │   └── lambda_handler.py # Lambda functions (Phase 2)
│   ├── config/
│   │   └── settings.py       # Configuration management
│   └── strategies/
│       └── antigravity_strategy.py  # Plugin-based strategy
├── tests/
├── scripts/
├── pyproject.toml
└── README.md

CLI Commands

# Show configuration
python -m collab_trading.cli.main status

# Run smoke test
python -m collab_trading.cli.main self-test

# Backtest a strategy
python -m collab_trading.cli.main backtest GBPUSD --lookback 5

# Run a single scan pass
python -m collab_trading.cli.main run --once

Plugin-Based Strategies

Strategies are swappable classes that implement the BaseStrategy interface:

class BaseStrategy:
    def analyze(self, data: pd.DataFrame) -> Signal:
        """Analyze market data and return a signal."""
        raise NotImplementedError

    def backtest(self, data: pd.DataFrame) -> BacktestResult:
        """Run strategy on historical data."""
        raise NotImplementedError

Built-in strategies:

  • antigravity_strategy.py — placeholder strategy (easily replaceable)
  • Compatible with backtrader, ccxt, or any custom library

Quick Start

git clone https://github.com/JayV42069/collab_trading.git
cd collab_trading

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements-dev.txt
pip install -e .

cp .env.example .env
python -m collab_trading.cli.main status

Run Tests

pytest tests/ -v

Tech Stack

Python 3.10+ · pandas · NumPy · boto3 · watchdog · pytest · ruff · mypy


Roadmap

Phase Scope Status
1 Local engine: strategy, data, broker, CLI, tests ✅ Active
2 AWS handlers (S3, EC2, Lambda), CloudWatch logging 📋 Planned
3 Docker + docker-compose, CI pipeline 📋 Planned
4 Production hardening, multi-env deploy 📋 Planned

License

MIT — see LICENSE for details.

About

Real-time collaborative order flow analysis workspace

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages