Voici 6 bibliothèques Python parmi les meilleures pour la finance…

eFC logo

Python est un langage populaire en finance. Mais vous ne pouvez pas faire grand-chose juste avec le langage proprement dit. Pour vous aider, un peu plus de 50 modules sont intégrés au langage. Par exemple, si vous souhaitez calculer une courbe d’escompte, vous aurez besoin des fonctions exponentielle et logarithmique qui se trouvent dans le module ‘mathématique’ intégré.

On y trouve également tout ce qu’un analyste quantitatif financier a besoin pour effectuer une analyse de données, un pricing d’options ou du machine learning. Pour travailler sérieusement, vous devrez importer certaines des milliers de bibliothèques tierces open source qui sont disponibles pour Python. Voici une demi-douzaine parmi les plus populaires…

NumPy 

La bibliothèque NumPy est le point de départ des Pythonistes financiers et vous aurez du mal à trouver une installation Python qui ne l’a pas. Selon le classement Kdnuggets, il s'agissait de la 7ème bibliothèque la plus populaire en 2018. NumPy vous permet de manipuler des tableaux et des matrices, ainsi que d'implémenter des fonctions pour la génération de nombres aléatoires, ce qui est nécessaire pour certaines techniques d'optimisation telles que le boosting et le bagging. A noter qu'une grande partie du code principal est écrit en C, compensant la lenteur relative de Python.

SciPy 

La bibliothèque SciPy s'appuie sur les fonctions de base fournies par NumPy. Elle possède une grande variété de fonctions qui revêtent une importance vitale pour le traitement de données financières, notamment des techniques telles que l’algèbre linéaire, le traitement du signal, les statistiques, l’interpolation et l’optimisation.

Matplotlib 

Une fois que vous aurez vos données, vous voudrez probablement les consulter. C’est là que Matplotlib entre en jeu. Il s’agit d’un module de visualisation, qui vous permet de tracer presque tous les graphiques et diagrammes imaginables, en 2 ou 3 dimensions. Soyez averti - il faut un certain temps pour s’habituer à l’API de Matplotlib. L'interface imite délibérément la fonctionnalité Matlab, ce qui la rend très irritante pour les programmeurs Python natifs. Pour résoudre ce problème, Matplotlib a en réalité deux API, mais cela finit par être déroutant. Néanmoins, cela vaut la peine de faire un effort pour apprendre à utiliser ce puissant package.

pandas 

Pandas s'appuie sur SciPy et NumPy et constitue une bibliothèque largement utilisée pour la manipulation et l'analyse de données. En particulier, elle est idéale pour manipuler les données de séries chronologiques, donc absolument indispensable pour analyser les mouvements des prix sur les marchés financiers. En effet, pandas a été créée à l’origine par les développeurs du fonds quantique géant AQR, avant d’être publiée en tant que projet open source.

Ensemble, numpy, SciPy, matplotlib et pandas font partie de la ‘pile NumPy / SciPy’. L'installation de cette pile peut être un peu fastidieuse, en raison des nombreuses dépendances. Une solution à cela est la distribution Anaconda, qui installe ces packages (et beaucoup d’autres), et vous permet de les utiliser dans un environnement virtuel ordonné comprenant le notebook Jupyter, qui permet d’exécuter des exemples Python dans votre navigateur Web.

Cependant, Anaconda installe plus de 200 bibliothèques et n’est donc pas vraiment léger. Cela rendrait coûteux le déploiement d'un système basé sur Python pour le trading ou la gestion des risques sur un ordinateur cloud ou un cluster. Une alternative est ‘miniconda’, plus minimaliste.

scikit-learn 

Scikit-learn est un autre module de la distribution anaconda. En 2008, il était le plus populaire des progiciels d’apprentissage automatique Python. Comme les pandas, il est construit sur SciPy et NumPy, avec une visualisation pilotée par matplotlib. Il gère les techniques de machine learning les plus courantes, notamment la classification et le clustering

QuantLib 

Un grand nombre de professionnels de l’analyse quantitative en finance travaillent toujours dans la structuration et la valorisation. Heureusement pour eux, il existe une version encapsulée dans Python de la bibliothèque C ++ largement utilisée de QuantLib pour évaluer et calculer le risque des dérivés financiers. Parce qu'il a le C ++ à la base, il est très rapide. Mais comme QuantLib n’est pas une bibliothèque python native et qu’il n’existe pas de documentation spécifique à Python, il existe une courbe d’apprentissage pour le faire fonctionner. Cependant, une bibliothèque de prix dérivés purement Python serait beaucoup trop lente pour faire du pricing à la demande sur un trading desk trépidant.

Robert Carver est l’ex-responsable fixed income du hedge fund quantitatif AHL, ancien trader options exotiques de la banque d’investissement Barclays et auteur de «Systematic Trading» et de «Smart Portfolios». Il est actuellement prop’ trader et utilise un système entièrement automatisé basé sur Python qu'il a lui-même développé.

Vous avez un scoop, une anecdote, un conseil ou un commentaire que vous aimeriez partager ? Contact : tiochem@efinancialcareers.com

A lire aussi…

Secteurs les plus recherchés

Loading...

Recherche emploi

Rechercher articles

Close