AI-Powered Trading Signal Analysis Pipeline
SigmaPilot Lens analyzes trading signals in real-time using multiple AI models and delivers actionable recommendations. It enriches incoming signals with live market data and technical indicators, then evaluates them through parallel AI analysis to produce follow/ignore decisions.
Note: SigmaPilot Lens provides analysis only — it does NOT execute trades.
- Receives trading signals from upstream strategies
- Enriches with real-time market data and technical analysis
- Evaluates using multiple AI models in parallel (ChatGPT, Gemini, Claude, DeepSeek)
- Delivers recommendations via WebSocket streaming
- Multi-Model AI Consensus — Get perspectives from 4 different AI providers simultaneously
- Real-Time Enrichment — Live market data from Hyperliquid with TA indicators
- Signal Validation — Automatic rejection of stale or price-drifted signals
- Runtime Configuration — Manage LLM API keys and AI prompts via API without restarts
- Production Ready — Load tested, observable, with comprehensive failure handling
# Setup
cp .env.example .env
# Edit .env: set AUTH_MODE and configure tokens
# Run
make build && make up && make migrate
# Configure AI models via API (requires admin token)
curl -X PUT http://localhost:8000/api/v1/llm-configs/chatgpt \
-H "Authorization: Bearer <your-admin-token>" \
-H "Content-Type: application/json" \
-d '{"api_key": "sk-...", "enabled": true}'
# Verify
make healthSigmaPilot Lens supports 3 authentication modes:
| Mode | Use Case | Configuration |
|---|---|---|
none |
Development | No auth required |
psk |
Docker Compose | Pre-shared key tokens |
jwt |
Production | External identity provider |
| Scope | Access |
|---|---|
lens:submit |
Submit signals |
lens:read |
Read events, decisions, DLQ |
lens:admin |
Admin operations (LLM configs, prompts, DLQ retry) + all above |
# .env
AUTH_MODE=psk
AUTH_TOKEN_SUBMIT=<generate-with-secrets.token_urlsafe(32)>
AUTH_TOKEN_READ=<generate-with-secrets.token_urlsafe(32)>
AUTH_TOKEN_ADMIN=<generate-with-secrets.token_urlsafe(32)>
# Usage
curl -X POST http://localhost:8000/api/v1/signals \
-H "Authorization: Bearer <submit-token>" \
-H "Content-Type: application/json" \
-d '{"symbol": "BTC-PERP", ...}'See Configuration Guide for full details.
| Guide | Description |
|---|---|
| Quick Start | Setup and first signal |
| Architecture | System design |
| API Reference | Endpoints and schemas |
| Configuration | Environment variables |
Private repository. All rights reserved.