Explore decades of daily US stock-market history through a modern lakehouse stack. Ask questions in plain English and watch a local AI model write live SQL.
Interactive demo with simulated data
| Component | Role |
|---|---|
| Postgres | Operational source database |
| Trino | Federated SQL engine |
| MinIO | S3-compatible object storage |
| Apache Iceberg | Open table format with time travel |
| Iceberg REST Catalog | Table versioning and governance |
| Ollama + Llama 3.2 | Local AI text-to-SQL layer |
| FastAPI | Web UI and API |
Daily Prices (3.3M rows, 614 tickers)
|
v
Postgres (COPY from CSV)
|
Trino federates via CTAS
|
+--> Bronze (raw Parquet on MinIO)
+--> Silver (cleaned, partitioned by year, daily returns)
+--> Gold (annual returns, volatility, drawdowns, streaks)
|
Ollama writes SQL from questions, Trino executes, model summarizes
$ ./run.sh data/full_prices.csv data/full_tickers.csv
Press "Run Pipeline" to start...
Annual Returns
First-to-last close per ticker per year
Volatility
Annualized stddev of daily returns * sqrt(252)
Max Drawdown
Worst peak-to-trough per ticker per year
Up Streaks
Longest consecutive up days per ticker
Type a question in plain English. The local Ollama model writes Trino SQL, the query runs live against Iceberg tables on MinIO, and the model summarizes the result.