summaryrefslogtreecommitdiff
path: root/shared/tests
AgeCommit message (Collapse)Author
36 hoursfix: snapshot delay, env fields, alembic creds, API healthcheck and error ↵TheSiahxyz
handling
36 hoursfeat: add multi-exchange support via ccxt factoryTheSiahxyz
37 hoursfeat(security): add bearer token auth for health/metrics endpointsTheSiahxyz
37 hoursfeat(portfolio): add periodic portfolio snapshots and daily Telegram summaryTheSiahxyz
37 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
37 hoursfix(shared): add transaction rollback on DB errorsTheSiahxyz
37 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
38 hoursfeat(shared): add health checks and Prometheus metricsTheSiahxyz
38 hoursfeat(shared): add Telegram notification serviceTheSiahxyz
38 hoursfeat(shared): add retry with backoff and circuit breakerTheSiahxyz
38 hoursfeat(shared): add structlog-based structured loggingTheSiahxyz
38 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().
38 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.
38 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