summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
26 hoursfeat(security): add bearer token auth for health/metrics endpointsTheSiahxyz
26 hourstest: add Docker Compose E2E test scriptTheSiahxyz
26 hoursfeat(monitoring): add Grafana dashboard provisioningTheSiahxyz
26 hoursci: add Gitea Actions workflow and CI scriptTheSiahxyz
26 hoursfeat(monitoring): add Loki + Promtail for log aggregationTheSiahxyz
26 hoursdocs: update TODO — mark Critical, High, Medium as completedTheSiahxyz
26 hoursfeat(portfolio): add periodic portfolio snapshots and daily Telegram summaryTheSiahxyz
26 hoursfeat: medium priority improvementsTheSiahxyz
- Add 30 edge case tests (zero volume, empty data, extreme values, strategy reset, notifier failures) - Fix VWAP division by zero on zero-price candles - Add DB transaction rollback on errors + transaction() context manager - Add parameter validation to all 7 strategies with 41 validation tests - Fix lint issues across test files
26 hourstest: add edge case tests for zero volume, empty data, extreme valuesTheSiahxyz
26 hoursfix(shared): add transaction rollback on DB errorsTheSiahxyz
26 hoursfeat(strategy): add parameter validation to all strategiesTheSiahxyz
26 hoursfix: lint fixes for integration tests and backtester noqa annotationsTheSiahxyz
26 hourstest: add integration tests for strategy, order, portfolio, and backtest flowsTheSiahxyz
26 hoursfeat(cli): implement backtest, strategy, portfolio, and data commandsTheSiahxyz
26 hoursfix: clean up backtester strategy loading and update DockerfilesTheSiahxyz
26 hoursfix: resolve critical deployment blockersTheSiahxyz
- Add Alembic initial migration (6 tables: candles, signals, orders, trades, positions, portfolio_snapshots) - Expose health ports (8080-8083) in docker-compose with healthchecks - Add numpy dependency to strategy-engine pyproject.toml
27 hoursdocs: add comprehensive TODO with remaining work and prioritiesTheSiahxyz
Categorized into Critical (deployment blockers), High/Medium/Low priority items with estimated effort and quick start guide.
27 hoursfix: resolve lint issues and final integration fixesTheSiahxyz
- Fix ambiguous variable name in binance_rest.py - Remove unused volumes variable in volume_profile_strategy.py - Fix import ordering in backtester main.py and test_metrics.py - Auto-format all files with ruff
27 hoursfeat(backtester): integrate detailed metrics and rich reporterTheSiahxyz
- Add timestamp field to SimulatedTrade, pass candle.open_time from engine - Engine now builds TradeRecord list and computes DetailedMetrics - Reporter uses rich tables for summary and monthly returns display - Add export_csv() and export_json() functions - Update reporter tests for rich output and export functions
27 hoursfeat(backtester): add detailed metrics (Sharpe, Sortino, drawdown)TheSiahxyz
Add metrics.py with TradeRecord/DetailedMetrics dataclasses and compute_detailed_metrics() that pairs BUY/SELL trades FIFO, computes win/loss stats, profit factor, equity curve, max drawdown, Sharpe, Sortino, Calmar ratios, and monthly returns.
27 hoursfeat(strategy): add Volume Profile strategyTheSiahxyz
27 hoursfeat(strategy): add Bollinger Bands strategyTheSiahxyz
27 hoursfeat(strategy): add VWAP strategyTheSiahxyz
27 hoursfeat(strategy): add MACD strategyTheSiahxyz
27 hoursfeat(strategy): add EMA Crossover strategyTheSiahxyz
27 hoursfeat(strategy): add warmup_period to BaseStrategy and YAML config loadingTheSiahxyz
27 hoursfeat(services): integrate structlog, healthcheck, metrics, and TelegramTheSiahxyz
Replace logging.basicConfig/getLogger with structlog setup_logging in all four service entry points. Add HealthCheckServer, ServiceMetrics, and TelegramNotifier initialization to each service. Update OrderExecutor to accept a notifier parameter and send order notifications. Add RedisBroker.ping() for health checks. Update executor tests with notifier=AsyncMock().
27 hoursfeat(shared): add health checks and Prometheus metricsTheSiahxyz
27 hoursfeat(shared): add Telegram notification serviceTheSiahxyz
27 hoursfeat(shared): add retry with backoff and circuit breakerTheSiahxyz
27 hoursfeat(shared): add structlog-based structured loggingTheSiahxyz
27 hoursfeat: rewrite database layer from asyncpg to SQLAlchemy 2.0 async ORMTheSiahxyz
Replace raw asyncpg SQL with SQLAlchemy async engine, async_sessionmaker, and ORM operations. Uses session.merge for candle upserts, session.add for signal/order inserts, update() for status changes, select() for queries. Auto-converts postgresql:// URLs to postgresql+asyncpg://. Keeps init_tables() as backward-compatible alias for connect().
27 hoursfeat: add SQLAlchemy ORM models and Alembic migration setupTheSiahxyz
Add SA 2.0 declarative models (CandleRow, SignalRow, OrderRow, TradeRow, PositionRow, PortfolioSnapshotRow) mirroring existing asyncpg tables. Set up Alembic with async PostgreSQL support and add migrate/migrate-down/ migrate-new Makefile targets. Update shared dependencies with sqlalchemy, alembic, structlog, prometheus-client, pyyaml, aiohttp, and rich.
27 hoursfeat: initial trading platform implementationTheSiahxyz
Binance spot crypto trading platform with microservices architecture: - shared: Pydantic models, Redis Streams broker, asyncpg DB layer - data-collector: Binance WebSocket/REST market data collection - strategy-engine: Plugin-based strategy execution (RSI, Grid) - order-executor: Order execution with risk management - portfolio-manager: Position tracking and PnL calculation - backtester: Historical strategy testing with simulator - cli: Click-based CLI for all operations - Docker Compose orchestration with Redis and PostgreSQL - 24 test files covering all modules
27 hourschore: add .worktrees/ to gitignoreTheSiahxyz
27 hoursdocs: add implementation plan for operations and strategy expansionTheSiahxyz
16-task TDD plan covering SQLAlchemy migration, structlog, Telegram notifications, resilience patterns, Prometheus metrics, 5 new trading strategies, and enhanced backtesting with detailed metrics.
28 hoursdocs: add operations infrastructure & strategy expansion design specTheSiahxyz
Covers DB migration (SQLAlchemy 2.0 + Alembic), structured logging (structlog), Telegram notifications, error recovery with circuit breakers, Prometheus metrics, and 5 new trading strategies (MACD, Bollinger Bands, EMA Crossover, VWAP, Volume Profile) with enhanced backtesting metrics.