AlgoInvest&Trade est une société financière spécialisée dans l'investissement. La société cherche à optimiser ses stratégies d'investissement à l'aide d'algorithmes, afin de dégager davantage de bénéfices pour ses clients. L'objectif de ce projet est de développer, optimiser et backtester un algorithme maximisant le profit et répondant au cachier des charges.
- Déconstruire un problème
- Développer un algorithme pour résoudre un problème
- memory_profiler
- matplotlib
Project
├── core
│ ├── aglorithms : package contenant les algorithmes développés
│ ├── backtesting_results.py
│ ├── model.py : module définissant les dataclass Action et Portfolio
│ ├── performance.py : module permettant de générer les analyses graphiques de résultats
│
├── ressources
│ ├── actions_data : analyses graphiques des résultats
│ ├── backtesting_data : données de backtesting
│
|── requirements.txt
|── documentation
Clonez le repository sur votre machine.
git clone https://github.com/GDSDC/OpenclassroomsProject-P7.gitAccédez au répertoire cloné.
cd OpenclassroomsProject-P7Créez l'environnement virtuel env.
python3 -m venv envActivez votre environnement virtuel env nouvellement créé.
source env/bin/activateInstallez les paquets présents dans la liste requirements.txt
pip install -r requirements.txtLancer simplement le script python main.py présent à la racine du dossier de travail en spécifiant le nom de l'algorithm (bruteforce ou optimized) ainsi que le chemin vers les données.
Le résultat s'affichera directement sur votre console/terminal.
python3 main.py <algorithm_name> <data_path>Liste des algorithmes développés :
bruteforce: bruteforce_algorithmoptimized: optimised_algorithm_dynamicdyn_algo_v2: optimised_algorithm_dynamic_v2greedy_algooptimised_algorithm_greedy

