No longer just for programmers, analysts, researchers, and managers are now learning python programming as well.
Named after British comedy group Monty Python, the Python programming language is a general-purpose programming language that strives to be fun to use. Yet, it is also is extremely practical and popular in many industries, particularly finance and banking. Released in 1991, Python has become the most in-demand language this industry overtaking Java -- number one for decades. Here’s some additional information on why:
- Vast ready-made open-source libraries: Python includes large standard libraries of tools suited to the needs of analysts, bankers and other players in a finance company. This includes mathematical functions and calculations (NumPy), data analysis and manipulation (Pandas); algorithmic trading (pyalgotrade); quantitative economics (quantecon.py); Bitcoin/cryptocurrency (Pybitcointools); backtesting strategies (finmarketpy) and more.
- Fast: Emphasizing speed, Python offers quicker deployment and less required code. This allows companies to take their products to market rapidly without digging too far into its most expensive resource, employee time. Popular Python frameworks (collection of packages or modules to write applications) enabling this speed include: Django (makes applications fast and scalable), Flask(micro web framework builds solid web application foundations and to use any other extensions on) Pyramid (open source strives to do as much with little complexity), plus others.
- Simple English: An aphorism included in the Zen of Python about the language is “simple is better than complex.” Python’s syntax is met to be easily readable. Virtually uncluttered, it often uses English keywords while other coding languages use punctuation. It also has few syntactic exceptions and special cases.
- Works Well With Others: Python can work in conjunction with R, a powerful language popular in high frequency/low latency trading funds. Such funds use R statistical computing to run simulations and predictive analysis. Many Python job postings also look for experience with R.
- Uplifting The Standard: With such vast libraries, fast tools, and other characteristics, Python has been replacing Java, a longtime favorite language in banking. It is being used to solve quantitative problems for pricing, trade management, and risk management platforms. Financial brokerages are using Python for APIs. Its libraries have tools for analytics, compliance, and data.
- Loved By Wall Street “Big Banks:” Early Wall Street including using the language for J.P. Morgan’s Athena program and Bank of America when it switched to Python for Quartz, its trading and risk management platform. Both are actively recruiting Python engineers along with Goldman Sachs and Citigroup which seek similar skillsets.
- … And The “Non-Programmers” Who Use: In Summer 2018, Citigroup started offering Python coding classes to banking analysts and traders after these employees requested to learn the language.
- No Longer Relegated To Bank “Back Offices”: As banks start calling themselves technology firms (e.g. Goldman Sachs) a growing percentage of people with Python experience isn’t necessarily looking for programming jobs. In fact, managers at Citigroup managers are also taking Python coding classes!
- Startups love Python too!: When HackerRank, a coding challenge company, looked at the most-in-demand programming languages across industries it found that Python outranked Java, the second most popular programming language in finance, by a 2:1 margin. This discrepancy between Python and runner-up was significantly more than in other industries analyzed in the study which named Python as the fastest growing language in finance.
- No Matter Who You Are Python’s In Demand: Forbes named Python among the top 10 technology job skills in high demand. Also, the number of jobs mentioning Python as a desired skill has nearly tripled over the last year-and-a-half – from 270 to more than 800.
First Published on the IBKR Quant Blog.