Skip to content

Résolvez des problèmes en utilisant des algorithmes en Python.

Notifications You must be signed in to change notification settings

GDSDC/OpenclassroomsProject-P7

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

167 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

OpenClassrooms Projet P7

Objectif

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.

Compétences acquises

  • Déconstruire un problème
  • Développer un algorithme pour résoudre un problème

Technologies Utilisées

Requirements

  • memory_profiler
  • matplotlib

Architecture et répertoires

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

Configuration locale

Installation

1. Récupération du projet sur votre machine locale

Clonez le repository sur votre machine.

git clone https://github.com/GDSDC/OpenclassroomsProject-P7.git

Accédez au répertoire cloné.

cd OpenclassroomsProject-P7

2. Création d'un environnement virtuel

Créez l'environnement virtuel env.

python3 -m venv env

3. Activation et installation de votre environnement virtuel

Activez votre environnement virtuel env nouvellement créé.

source env/bin/activate

Installez les paquets présents dans la liste requirements.txt

pip install -r requirements.txt

Utilisation en ligne de commande

Lancer 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_algorithm
  • optimized: optimised_algorithm_dynamic
  • dyn_algo_v2: optimised_algorithm_dynamic_v2
  • greedy_algo optimised_algorithm_greedy

Présentation

presentation

About

Résolvez des problèmes en utilisant des algorithmes en Python.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages