Skip to content

Godric9/PYBD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bourse Dashboard — Stock Market Data Visualization

A Dash application for ingesting, storing, and visualizing European stock market data from Euronext and Boursorama, backed by TimescaleDB. images

Data Sources

Euronext

Day-level data in .csv and .xlsx formats, depending of the year. Columns include ISIN, symbol, open/high/low/last prices, volume, and turnover. We have a big drop in data quality starting from mid 2022 to 2024 that have significant gaps in key columns (high, low, close). Missing values are kept as-is rather than removed, since stock data is inherently difficult to interpolate.

Boursorama

Hour-level snapshots stored as Python pickle files, organized by year. Each file contains symbol, last price, and volume at a specific timestamp. Boursorama symbols carry exchange prefixes (1rP for Paris, 1rA for Amsterdam, etc.) which are stripped during ETL to match Euronext symbols.

Getting Started

From the project root:

docker-compose up --build

The initial data load can take 10–15 minutes depending on the date range and number of files. We tried to optimize it the best we could but due to the amount of files and data it is still taking some time.

The dashboard is available at http://localhost:8050 once the import completes.

Useful Commands

# Rebuild after code changes
docker-compose up --build
 
# Connect to the database
docker exec -it bourse-database psql -U bourse -d bourse
 
# Check data counts
# SELECT count(*) FROM companies;
# SELECT count(*) FROM daystocks;
 
# Full reset (wipe database and restart)
docker-compose down -v
docker-compose up --build

Configuration

The ETL date range and source are configured in bourse/app.py:

store_files("2020-01-01", "2025-12-31", "euronext", db)

The third argument controls which source to load: "euronext", "boursorama", or "all".

Dashboard

The web interface provides two main views: a market overview and a detailed stock analysis page.

Market Overview

A grid of stock cards showing each company's name, symbol, sparkline, latest price, and percentage variation. Click "Voir" to access the detail view.

Stock Detail

An interactive analysis page with:

  • Key metrics - Latest price, variation, high, low, and average volume
  • Sidebar - Select a stock, compare with another, adjust date range, toggle between line/candlestick chart, and switch linear/log scale
  • Tabs - Price chart, Bollinger Bands, Volume, and raw data table
CAC40 Chandelier
Bollinger Compare

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors