4 Commits

Author SHA1 Message Date
Jon
4f1e745534 Add backtesting entry point for offline strategy testing
Introduces a BacktestClient that replays historical 1-min bars against the
existing strategy code, plus a CLI entry point (npm run backtest) that fetches
bars from Alpaca and runs the bot over a date range. Makes wait() pluggable
so the backtest resolves delays instantly while advancing simulated time.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 00:59:22 -07:00
Jon
1d3688e9ae Add @vitest/coverage-v8 dev dependency
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 17:07:04 -07:00
Jon
5e06c06987 Refactor for TDD workflow with Vitest and ESLint
- Move API keys from hardcoded values to .env via dotenv
- Extract business logic into src/trading.ts with dependency injection
- Add typed AlpacaClient interface, replace `any` on Alpaca class
- Add Vitest test suites for trading logic and Alpaca wrapper (14 tests)
- Set up ESLint with @typescript-eslint for linting
- Fix getAsset to pass symbol string directly to SDK
- Fix typo (alpacha -> alpaca), remove unused ws/node-fetch deps
- Update .gitignore for node_modules and .env

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:49:31 -07:00
Jon
04d1202acb added files 2025-02-10 23:21:27 -07:00