« Utilisé correctement, Python n’est pas plus lent que C++ »
Dès lors qu’il s’agit d’écrire du code rapidement et efficacement, tout est question de concepts de programmation et de bibliothèques, pas de langage.
C++ est sans doute l’un des langages orientés objet les plus « purs » utilisés de nos jours par les quants. Il dispose de nombreux concepts tels que l’héritage multiple qui peuvent être extrêmement puissants. Mais j’ai vu des gens l’utiliser aussi comme langage procédural, et ça n’apporte pas grand-chose.
Python est loin d’être seulement un super langage de prototypage. Sa force principale réside dans l’étendue et la puissance de ses bibliothèques utilisées pour les calculs numériques et statistiques. Je peux par exemple générer une série de variables chronologiques une seule ligne.
Comme avec C++, on peut en faire des choses horribles – les programmeurs venus de l’informatique répètent inlassablement des matrices au lieu d’utiliser des fonctions vectorisées. Utilisé correctement, il n’est pas foncièrement plus lent que C++.
Aucun des deux langages n’est par ailleurs dénué de risques. Python manque de typage statique tandis que C++ a cette capacité unique à générer des fuites de mémoire.
Pourtant, ce qui pour moi met Python au-dessus du lot, c’est sa capacité à utiliser le même langage tout au long du processus quantitatif, de la recherche à la production. Si je trouve certains des meilleurs quants en C++, super. Si je dois choisir entre le risque d’un typage faible et des informaticiens qui recodent des modèles en C++ sans avoir la moindre idée de ce qu’ils font, j’opterai pour le typage faible quoi qu’il arrive.
Have a confidential story, tip, or comment you’d like to share? Contact: alex.mcmurray@efinancialcareers.com in the first instance.
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.)
Crédit photo : cottonbro studio