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.4.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.4-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: edgelab-0.1.4.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.4.tar.gz
Algorithm Hash digest
SHA256 5953d5a022e4cf52e292b36fe4b21f5998874f958101b151f2fe755698afdadc
MD5 833237bb4ff9d9633f052d92e918aae3
BLAKE2b-256 c63a2f8a62a3c7bb1baf2a5e216fa305f63cd48acaf24f70e518f42084c5283e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: edgelab-0.1.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 844adebdd2016059de06994bcc5858ce78d0ea64039807b01f23f9a394b83b87
MD5 a3080bb8d36b9fed1722b4ad2c2c491a
BLAKE2b-256 7d6ce898b72cde5f26be2f43684ade9a3d630f5da326c31e3493016e94cec683

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