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 signup

# Login
edgelab 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.0.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.0-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: edgelab-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 0c2010b4a5defee0dc8b90e909cd86aa020ed6a2c3774b3d543f11744ad2472b
MD5 a7c9d915d5e2d24e438776b8775023f2
BLAKE2b-256 43037f17a186616a2419fbf6a3713acaa87c08825a681a47d97b832a7dd62d91

See more details on using hashes here.

File details

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

File metadata

  • Download URL: edgelab-0.1.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 48608af9e68169cf24712fd4f7bd01568d5593fe63c1ccf4abc9868088c73f45
MD5 5d858d0c28f37ffe66caf058a1241ec7
BLAKE2b-256 df20db2f45649f07cad5b2d9ff3aae7f3e1cb420966339f0e828db508108b747

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