Efficiently retrieve and manage financial candlestick data with caching, REST API, and WebSocket support.
Go to file
rob e14a607bfc Fix SINCE mode requests returning wrong data
When requesting candles with start date but no end date (SINCE mode),
EDM was skipping gap processing entirely because gap_end was None.
This caused requests to return cached data clipped to the most recent
N candles, ignoring the requested start date.

Fix: Normalize gaps with end=None to use current time, so SINCE mode
requests properly fetch data from the requested start time to now.

Bug symptoms:
- Request start=2026-03-01, limit=100
- Got 100 candles starting from 2026-03-04 (most recent 100)
- Expected 100 candles starting from 2026-03-01

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-08 01:15:47 -04:00
src/exchange_data_manager Fix SINCE mode requests returning wrong data 2026-03-08 01:15:47 -04:00
tests Update docs, enable exchanges, and fix tests 2026-03-06 13:36:38 -04:00
.gitignore Implement M1, M2, M3 milestones - full exchange data manager 2026-03-03 04:05:30 -04:00
CLAUDE.md Update docs, enable exchanges, and fix tests 2026-03-06 13:36:38 -04:00
Dockerfile Implement M1, M2, M3 milestones - full exchange data manager 2026-03-03 04:05:30 -04:00
README.md Initial project setup 2026-03-02 22:45:06 -04:00
config.yaml Update docs, enable exchanges, and fix tests 2026-03-06 13:36:38 -04:00
docker-compose.yml Implement M1, M2, M3 milestones - full exchange data manager 2026-03-03 04:05:30 -04:00
pyproject.toml Add real exchange integration tests for three-tier cache system 2026-03-03 17:37:04 -04:00

README.md

Exchange Data Manager

Efficiently retrieve and manage financial candlestick data with caching, REST API, and WebSocket support.

Installation

pip install -e .

Usage

TODO: Add usage instructions

Documentation

Full documentation is available at: https://pages.brrd.tech/rob/exchange-data-manager/

Development

# Clone the repository
git clone https://gitea.brrd.tech/rob/exchange-data-manager.git
cd exchange-data-manager

# Create virtual environment
python -m venv .venv
source .venv/bin/activate

# Install for development
pip install -e ".[dev]"

# Run tests
pytest

License

TODO: Add license