cd ../projects
Fintech · Backtesting Engine·2026·private repository·repo: stunning-fchess

Algome

Algorithmic trading SaaS: custom strategy execution & backtesting

private repository
algome · dashboard

A professional quant platform for systematic Forex and equities traders: event-driven backtesting with realistic execution, Docker-sandboxed strategy code, survivorship-bias-aware data, and immutable, auditable results.

$ cat problem.md

Backtests lie when execution is unrealistic, data is biased, or results can't be reproduced. Serious systematic trading needs an auditable, reproducible engine.

$ whoami --role

Design & build (solo)

  • FastAPI
  • PostgreSQL
  • TimescaleDB
  • Redis
  • SQLAlchemy
  • Docker
  • React 18
  • Recharts

$ cat approach.md

  1. 01Event-driven backtest engine with proper execution / fill modeling
  2. 02Code-first Python strategies with strict versioning
  3. 03Untrusted strategy code executed in Docker sandboxes
  4. 04Survivorship-bias-aware market data with corporate actions
  5. 05Immutable results with full lineage tracing for auditability

$ ls highlights/

Event-driven engine with realistic fills
Docker-sandboxed strategy execution
Immutable, auditable backtest lineage
Sharpe / Sortino / drawdown analytics

$ cat api.md

REST · OpenAPI 3.1 · FastAPI·/api/v1·auth: none declared (v1)

Algome runs systematic backtesting end-to-end: define a multi-file strategy, version and sandbox-validate its code, then enqueue worker-executed backtests over survivorship-bias-aware Forex data. Results come back with institutional metrics (Sharpe, Sortino, CAGR, drawdown, profit factor, VaR/CVaR, a confidence score), per-asset breakdowns, full trade logs, and paper portfolios.

// Code-first strategies are validated in a sandbox (syntax, forbidden imports, required BaseStrategy interface, security) before runs execute asynchronously on workers. v1 ships without an auth layer.

Strategies & validation

POST

/api/v1/strategies

Create a strategy across one or more asset classes.

POST

/api/v1/strategies/versions

New immutable, content-hashed version (multi-file).

POST

/api/v1/strategies/versions/{id}/validate

Sandbox-validate: syntax, forbidden imports, BaseStrategy interface, security.

GET

/api/v1/strategies/templates/{id}

Starter templates: basic, advanced, wyckoff.

Backtesting engine

POST

/api/v1/backtests

Enqueue an async, worker-executed backtest run.

GET

/api/v1/backtests/{id}/result

Sharpe, Sortino, CAGR, drawdown, profit factor, VaR/CVaR, confidence score.

GET

/api/v1/backtests/{id}/assets/{asset}

Per-asset metrics with equity + drawdown curves.

GET

/api/v1/backtests/{id}/trades

Every executed trade, paginated.

Market data & portfolios

GET

/api/v1/market-data/data

OHLCV candles by symbol, timeframe, and date range.

GET

/api/v1/market-data/summary

Datasets, symbols, timeframes, and coverage.

POST

/api/v1/portfolios

Create a paper portfolio (default 100k balance).

POST

/api/v1/portfolios/{id}/deposit

Deposit / withdraw paper funds.

Examples

enqueue a backtest run
curl -X POST $API/api/v1/backtests \
  -H 'Content-Type: application/json' \
  -d '{
    "strategy_version_id": 12,
    "assets": ["EURUSD", "GBPUSD"],
    "timeframes": ["1H"],
    "start_date": "2020-01-01T00:00:00Z",
    "end_date": "2024-01-01T00:00:00Z"
  }'
response
// 201 Created — executed asynchronously by a worker
{
  "id": 87,
  "strategy_version_id": 12,
  "status": "pending",
  "engine_version": "1.0.0",
  "assets": ["EURUSD", "GBPUSD"],
  "job_id": "rq:job:…",
  "created_at": "2026-06-15T12:00:00Z"
}

$ ls screenshots/

algome · strategy editor
algome · backtest config
algome · backtest terminal
algome · results & analytics
algome · market data