Base de la POO: Exercice
Exercice: Traitement des opérations clients d’une société de courtage
Objectif:
Vous avez un fichier CSV contenant l’historique des opérations des clients d’une société. Le fichier a les colonnes suivantes : date, client_id, op_type, op_data. - date : format texte “yyyy-mm-dd” - client_id : un entier identifiant le client - op_type : type d’opération, peut être ‘create_account’, ‘deposit’, ‘withdraw’, ‘trade’ - op_data : - null pour ‘create_account’ - un montant pour ‘deposit’ et ‘withdraw’ - un dictionnaire pour ‘trade’ contenant ‘side’, ‘ticker’, ‘price’, ‘volume’
Votre tâche est de créer un moyen de récupérer facilement le montant en dollars d’un client et les actions qu’il détient avec leur quantité. Cela nécessitera la lecture des données depuis le fichier CSV, le traitement des différentes opérations, et la mise à jour des informations de chaque client.
Structure du code:
- Classe Client pour représenter chaque client avec son solde et son portefeuille d’actions.
- Fonctions pour lire le fichier CSV, traiter chaque opération et mettre à jour les informations des clients.
Instructions: - Complétez le code de la classe Client et les fonctions nécessaires. - Utilisez l’exemple de contenu CSV fourni pour tester votre code.
Exemple de contenu pour le fichier CSV:
date,client_id,op_type,op_data
2024-01-01,1,create_account,
2024-01-02,1,deposit,1000
2024-01-03,1,trade,{"side": "buy", "ticker": "AAPL", "price": 150, "volume": 5}
2024-01-04,1,trade,{"side": "sell", "ticker": "AAPL", "price": 155, "volume": 2}
2024-01-05,2,create_account,
2024-01-06,2,deposit,2000
2024-01-07,2,trade,{"side": "buy", "ticker": "MSFT", "price": 210, "volume": 10}
Code à compléter
Generer un jeu de donnée
Pour generer un fichier d’exemple afin d’essayer votre code, et vous donner un exemple simple de comment utiliser la POO vous pouvez utiliser le code ci-dessous qui écrira un fichier csv. Vous pouvez changer la variable nom_fichier pour choisir le path exacte où le fichier sera créer, sinon par défaut celui-ci sera écrit dans le dossier duquel vous lancerez votre code.