Busabase
Busabase is an open-source (MIT) database and workspace for AI agents — data, docs, skills, and apps in one place. Run it locally, self-host it inside your network, or use Busabase Cloud, and turn age
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Typed market-data ingestion, validation, Parquet storage, querying, and time bars
翻訳待ち
Loading the full README.
Read the full README ↗TickerFlow is a Python backend that turns local market CSVs into validated, queryable API data.
Open the live demo → (synthetic OHLCV fixtures)
Problem: make local OHLCV data quality decisions visible before data is queryable.
uv sync --extra dev && uv run pytest; then follow the complete
seed → query demonstration.Market-data pipelines need deterministic ingestion, explicit schemas, visible quality decisions, durable storage, and stable query boundaries. TickerFlow provides that local workflow for financial time series, from CSV normalization through Parquet storage and feature-ready time bars.
/demo page.TickerFlow currently implements the first OHLCV backend slice:
ohlcv/symbol=<SYMBOL>/date=<YYYY-MM-DD>/data.parquet.[start, end)./health, /datasets, /symbols, /ohlcv, and /bars/time through FastAPI./demo.Input CSV fixtures use these columns:
timestamp,symbol,open,high,low,close,volume
Canonical rows use:
timestamp_utc: datetime[us, UTC]
symbol: uppercase string
open: float
high: float
low: float
close: float
volume: float
source: string
Prices are unadjusted fixture values in arbitrary currency units. OHLC prices must be finite, positive, and consistent with low/high bounds. Volume is a finite non-negative numeric quantity. Corporate actions and live data sources are intentionally out of scope.
uv sync --extra dev
uv run ruff format .
uv run ruff check .
uv run mypy src tests
uv run pytest
Run the API locally:
uv run uvicorn tickerflow.api.main:app --reload
Open the market-data demo UI:
open http://127.0.0.1:8000/demo
Example query after writing Parquet data into the configured data directory:
curl "http://127.0.0.1:8000/ohlcv?symbol=AAPL&start=2024-01-02T00:00:00Z&end=2024-01-04T00:00:00Z"
Catalog endpoints:
curl "http://127.0.0.1:8000/datasets"
curl "http://127.0.0.1:8000/symbols?dataset=ohlcv"
Time-bar endpoint:
curl "http://127.0.0.1:8000/bars/time?symbol=AAPL&start=2024-01-02T14:00:00Z&end=2024-01-02T16:00:00Z&interval=1h"
By default, the API reads from .tickerflow. Set TICKERFLOW_DATA_DIR to point at another local Parquet root.
The deterministic demo script lives in docs/DEMO.md.
This is the beginning of the README. Read the rest at the original. Read the full README ↗