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 auth signup

# Login
edgelab auth login

# Check status
edgelab auth whoami

# Logout
edgelab auth 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.5.tar.gz (20.2 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.5-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: edgelab-0.1.5.tar.gz
  • Upload date:
  • Size: 20.2 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.5.tar.gz
Algorithm Hash digest
SHA256 bcbd03b3a8fda30331a6eb2efd1f470da9a9283c89cc604b7fc386419d4fc786
MD5 e612b08706056fe1d667081223202f88
BLAKE2b-256 ee1aa73fbc80fcd75156f6978bc59336d32af5ac2763e54d3f7c10cffa201284

See more details on using hashes here.

File details

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

File metadata

  • Download URL: edgelab-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 28.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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8cba23f528875909b91287398d31f0b98b29f82d77bf50cad6cdfc4f9129af4e
MD5 acd840f760046742c9a24f9d66311177
BLAKE2b-256 ad69ccfea285987f3c4b93c502d3cfc4acc54ec8c46e5c7db2af48ae6db9c45e

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