Python pourrait devenir 5 fois plus rapide : quelles implications pour la finance ?

eFC logo
Python pourrait devenir 5 fois plus rapide : quelles implications pour la finance ?

Python est l’un des langages de programmation les plus utilisés en finance, il l’est aussi pour des fonctions particulières telles que l’analyse de données plutôt que pour les logiciels de tenue de marché. Ceci tient au fait que Python est un langage interprété, et donc relativement lent comparé aux autres options comme C++ ou Java en raison de son niveau élevé d’abstraction.

Pourtant, Guido van Rossum, le créateur de Python, aimerait le faire évoluer. Dans son intervention lors du récent Python Language Summit, il déclarait avoir l’intention de doubler la vitesse de Python lors du lancement de la version 3.11 prévue pour octobre 2022. D’ici à quatre ans, son intention serait de multiplier par cinq la vitesse de Python.

La présentation de Guido van Rossum, accessible sur Github, explique comment il espère y parvenir, en incluant un interprèteur bytecode adaptatif, en optimisant la pile de trame et l’efficacité du traitement des exceptions. Si ces modifications doublent la vitesse de Python, Guido van Rossum précise que des changements ultérieurs pourraient comprendre une ABI stable (application binary interface) ou la génération d’un code machine capable d’accélérer encore plus Python.

Les utilisateurs d’outils à base de Python pourraient bénéficier de ces évolutions, indique-t-il. En théorie, cela pourrait concerner des banques comme JPMorgan et Bank of America – toutes deux utilisatrices de Python à grande échelle dans leurs systèmes de pricing de risque - même si JPMorgan a pris beaucoup de temps à abandonner Python 2, et les établissements financiers qui utilisent le langage pour l’analyse des données.

Guido van Rossum n’aborde pas les implications probables de ces changements pour les utilisateurs de Python en finance. Mais, compte tenu que C++ est plus de 100 fois plus rapide que Python, il est peu probable que Python devienne exploitable pour les systèmes de trading dans un proche avenir.

Pour Jeffrey Ryan, ancien analyste quantitatif chez Citadel devenu ‘quant indépendant’, le ‘handicap de performance’ de Python fait qu’il est généralement utilisé dans des contextes où la vitesse n’a pas d’importance, contrairement à la facilité à écrire du code.

Un doublement de la vitesse de Python ne fera pas grande différence en finance, indique Jeffrey Ryan. « Le code le plus lourd en calcul à partir de Python est déjà en C (ou C++/Fortran) en interne – pour ce qui touche aux blas/lapack/numpy/tensorflow, etc, » dit-il. « Si la performance absolue a une importance, on l’écrira sans doute d’abord en C/++ avant de l’encapsuler en Python comme le font ces bibliothèques. »

Même si Python devient beaucoup plus rapide en 2022 et au-delà, Jeffrey Ryan pense que les banques et autres utilisateurs de la finance pourraient prendre du temps avant d’adopter sa nouvelle version. « Le passage de 2.X à 3.X a été bien trop douloureux, et il est trop récent pour que la plupart des gens renouvellent l’expérience ; et quand bien même, je pense que cela pourrait motiver les gens à reconsidérer l’usage de Python dans son ensemble et à se tourner vers des langages plus récents devenus aussi plus pertinents – comme Julia ou Golang, » suggère-t-il.

Crédit photo : Chris Liverani sur Unsplash

Have a confidential story, tip, or comment you’d like to share? Contact: sbutcher@efinancialcareers.com in the first instance. Whatsapp/Signal/Telegram also available. Bear with us if you leave a comment at the bottom of this article: all our comments are moderated by human beings. Sometimes these humans might be asleep, or away from their desks, so it may take a while for your comment to appear. Eventually it will – unless it’s offensive or libelous (in which case it won’t.)

A lire aussi…

Secteurs les plus recherchés

Loading...

Recherche emploi

Rechercher articles

Close
Loading...