Skip to main content

EdgeLab CLI - Algorithmic trading strategy analysis platform

Project description

EdgeLab CLI

Algorithmic Trading Strategy Analysis Platform

EdgeLab CLI is a Python package for developing, testing, and analyzing algorithmic trading strategies using server-side backtesting and machine learning optimization.

🚀 Quick Start

# Install
pip install edgelab

# Sign up
edgelab auth signup

# Login
edgelab auth login

# Create workspace
edgelab init my-strategies

# Analyze strategy
cd my-strategies
edgelab analyze strategies/simple_rsi.py SPY 2023-01-01 2023-12-31

✨ Features

  • 🔬 Server-Side Analysis - No local compute needed, runs on EdgeLab Cloud
  • 📊 4 Analysis Engines - Backtest, Walk-Forward, Monte Carlo, Stress Testing
  • 🤖 ML Optimization - Automatic parameter tuning using XGBoost
  • 📈 Multiple Symbols - Test strategies across multiple stocks simultaneously
  • 🎨 Rich Terminal UI - Beautiful formatted output with progress bars
  • 🔐 Secure - JWT authentication, encrypted API communication

📦 Installation

pip install edgelab

Requirements:

  • Python 3.11+
  • Internet connection (for API access)

🎯 Usage

Authentication

# Create account
edgelab signup

# Login
edgelab login

# Check status
edgelab whoami

# Logout
edgelab logout

Workspace

# Initialize workspace with example strategies
edgelab init my-strategies

# Creates:
# my-strategies/
#   ├── strategies/
#   │   ├── simple_rsi.py
#   │   ├── ema_crossover.py
#   │   └── orb_breakout.py
#   └── results/

Strategy Analysis

# Single symbol
edgelab analyze strategies/my_rsi.py SPY 2023-01-01 2023-12-31

# Multiple symbols
edgelab analyze strategies/my_rsi.py SPY,TSLA,NVDA 2023-01-01 2023-12-31

# With ML optimization
edgelab analyze --ml strategies/my_ml_rsi.py SPY,QQQ,AAPL 2023-01-01 2023-12-31

# Different resolution
edgelab analyze --resolution 15m strategies/my_rsi.py SPY 2023-01-01 2023-12-31

Results Management

# List all analysis runs
edgelab results list

# Show detailed results
edgelab results show <workflow-id>

Strategy Management

# List all your strategies
edgelab strategies list

# Show strategy details
edgelab strategies show my_rsi v1

📝 Writing Strategies

from edgelab.core import Strategy, Bar, SignalType, Indicators

class MyRSI(Strategy):
    @property
    def name(self) -> str:
        return "my_rsi"

    @property
    def version(self) -> str:
        return "v1"

    def on_bar(self, bar: Bar) -> SignalType | None:
        rsi = Indicators.rsi(bar.close, period=14)

        if rsi < 30:
            return SignalType.LONG
        elif rsi > 70:
            return SignalType.SHORT
        else:
            return None

    def stop_loss(self, entry_price: float) -> float:
        return entry_price * 0.98  # 2% stop

    def take_profit(self, entry_price: float) -> float:
        return entry_price * 1.05  # 5% profit

🤖 ML Optimization

from edgelab.core import Strategy, Bar, SignalType, Indicators
from edgelab.ml import ml_optimizable, param_range

@ml_optimizable
class MyMLStrategy(Strategy):
    rsi_period = param_range(10, 20, default=14, step=2)
    oversold = param_range(20, 40, default=30, step=5)

    # ... rest of strategy

📚 Documentation

Full documentation: https://docs.edgelab.com

🆘 Support

📄 License

MIT License - see LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edgelab-0.1.1.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

edgelab-0.1.1-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file edgelab-0.1.1.tar.gz.

File metadata

  • Download URL: edgelab-0.1.1.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.14.0 Darwin/25.0.0

File hashes

Hashes for edgelab-0.1.1.tar.gz
Algorithm Hash digest
SHA256 149df4927daed3d4aee7735d2a7af1a4bf36cac367d24127929e8f372fa32b30
MD5 4e6980cee335561ce40a1ab8481a1f0f
BLAKE2b-256 98416fb5e3f9edeb63bc6d7a5f62c81e5f117f496e87e3e6de648523ba5c00e3

See more details on using hashes here.

File details

Details for the file edgelab-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: edgelab-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.14.0 Darwin/25.0.0

File hashes

Hashes for edgelab-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8de395a0a6a29fc3dcf401ab7be475d298db8352267332030e57ec3fcee5c8b4
MD5 3e3a062677c41fb88f0bfce52c65ae3d
BLAKE2b-256 6cee86f6d36c4c4de2cbdcedd70ad0c304f3a1c35a9c9c8acb32bc0d1db16739

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page