Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yelinz/analytics-zoomcamp
https://github.com/yelinz/analytics-zoomcamp
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/yelinz/analytics-zoomcamp
- Owner: Yelinz
- License: mit
- Created: 2024-07-13T19:14:32.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-12T22:58:36.000Z (5 months ago)
- Last Synced: 2024-10-08T01:42:10.486Z (4 months ago)
- Language: Jupyter Notebook
- Size: 85 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# E2E Stock Market Analysis
## Description
This project is a simple stock market analysis tool that allows users to analyze stock prices and make predictions based on historical data. The tool uses the Yahoo Finance API to retrieve historical stock prices and scikit-learn for predictions.
The historic prices of the largest US, EU and JP companies are used, next to a varienty of Indexes and ETFs, additionally some Macro conditions such as GDP are also analyzed.
The output is which of the input stocks will perform better in the future.
This project was made in the DTC Course [Stock Market Analytics](https://github.com/DataTalksClub/stock-markets-analytics-zoomcamp)
Solution based on week 5 content.## Installation
Needed system dependencies:
- conda
- more than 8 GB RAMTo install the necessary dependencies, run the following command:
```bash
conda create -n stock-zoomcamp-env
conda activate stock-zoomcamp-env
conda install -c conda-forge libta-lib
conda install pip
pip install -r requirements.txt
```If issues arise with TA-lib installation refer to their [README](https://pypi.org/project/TA-Lib/) for soluttions
## Usage
To run the application, use the following command:```bash
python main.py
```Per default data is assumed to be local.
To enable download, transformation and training use the cli arguments:
```bash
python main.py --download --transform --train
```Example data is available here: https://drive.google.com/file/d/1EQ4Ss8mlRHaX48uU_uqMX5qHMm9dRrqv/view?usp=drive_link
Put the downloaded files into the `local_data` folder in the project root.
### Cron
To use the script as a cronjob add this to the crontab:
```
0 1 * * * python /path/to/main.py --download --transform
```## Contributing
Contributions are welcome! Please fork the repository and submit a pull request with your proposed changes.Code style and checking with [ruff](https://docs.astral.sh/ruff/)
Install the development requirements in the conda environment with the following command:
```bash
pip install -r requirements-dev.txt
```