The needed data can be found here https://www.lrde.epita.fr/~ricou/pybd/projet/boursorama.tar
-
32 GB of available storage
-
Sufficient RAM (The project requires a significant amount of RAM. If possible, please open only terminal windows for containers and avoid running other processes like Firefox or other applications.)
-
Navigate to
/srv/libvirt-workdir
on the school machines and clone the project.
- Navigate to the
docker
directory.
-
Start the database service:
docker compose up db
Wait for the database service to be ready.
-
Start the analyzer service:
docker compose up analyzer
This process takes about 50 minutes on the school machines.
-
Once the analysis is complete, start the dashboard:
docker compose up dashboard
After extensive research on the Boursorama website, we identified patterns for each market:
- Paris: Symbols that start with "1rP" or "1rEP"
- Brussels: Symbols that start with "FF1"
- Amsterdam: Symbols that start with "1rA"
- Nasdaq: All other symbols that do not match the aforementioned prefixes
Note that this is based on our personal observations. We couldn't find any established patterns, particularly for the NASDAQ market, which accounts for about 70% of the data and is found in files starting with "amsterdam*".
We chose to remove all records with volumes equal to 0, as it seemed unusual to have zero volumes in the middle of the trading day.
We retained all companies, including those that appeared only once over the past five years.
The data insertion process takes approximately 50 minutes. We would like to mention that we developed an extremely efficient multi-processing version, but it's impossible to run it on the EPITA PCs.
- Market selection (multiple choices allowed; use the cross icon to remove a choice by scrolling inside the dropdown)
- Stock selection (multiple choices allowed; use the cross icon to remove a choice by scrolling inside the dropdown)
- Stock selection for Bollinger Bands
- Start date and end date
- Additional feature: End date and slider to choose the interval (1D, 1W, 1M, 3M, 6M, 1Y, 5Y, 10Y)
- 3 selectable graphs with tabs
- Display of summary data