Blog

Get the latest updates and news from FINCAD. Subscribe and never miss a post! 

Subscribe

Blog
Why Quant Developers Love Python for Custom Analytics
By Helen He | June 5, 2018

By now most of us are aware of the many advantages of Python.  After all it is one of the world’s most popular programming languages for a reason.  

Python’s appeal stems from it being so high level, in that it is very easy to learn and use. Users can literally learn the basics within a couple hours and begin coding. As a scripting language, it is also versatile. Its usage runs the gamut from simplistic to very complicated tasks, and it requires no compiling of data. In fact, Python is used for a myriad of different purposes including web programming, scientific computation, data analysis and artificial intelligence. 

So how did Python have its start?

Python was pioneered by Guido van Rossum, a Dutch programmer who created the scripting language on a whim over his Christmas break in 1987. The first version of the language was then released in 1991. Surprisingly, the programming language did not get its name from one of the largest living snake species (a.k.a., the python), but rather the BBC comedy from the 70’s, “Monty Python’s Flying Circus.” van Rossum liked the name because he thought it was “short, unique and slightly mysterious.” 

When Python was first launched, van Rossum had not intended it to be a systems programming language per se, but instead a computer program for everyone, meaning one did not need to be an expert to work with it. However, key features of Python such as exception handling, object-oriented usability and extensive support libraries have made it an excellent choice for developers. In fact, the syntax in Python enables programmers to do coding more quickly, using fewer steps than other common scripting languages. 

Even though Python has been around for awhile, it has only in the past several years joined the popularity ranks of other top programming languages: C++, Java and C#. This is because Python has undergone major changes since its initial release 30 plus years ago. A brief history is as follows: 

  • Python 1.0 had the module system of Modula-3 and interacted with the Amoeba Operating System with varied functioning tools. 
  • Python 2.0 introduced in 2000 had new features including garbage collector and Unicode support. 
  • Python 3.0 introduced in 2008 refactored Unicode string support and the standard library package structure.
  • Currently most developers use Python 3.5 or 3.6 which have some great library improvements. In fact, many commonly used programming tasks are already scripted into Python, which equates to less coding work for developers – and thus greater productivity. 1

The incredible ease of use and infinite flexibility of Python are primary reasons why we have equipped our FINCAD F3 portfolio and risk analytics solution with Python as a powerful API. The use of Python in F3 supports quants in doing infinite customizations to meet current and future business requirements. And it’s worth mentioning that the newest release of F3 gives users an unlimited ability to create tailored analytics with Python MicroServices. 

Below are examples of some of the cool things you can do in F3 leveraging Python: 

1. Easily create F3 Functions on the fly: Paste Python code into the F3 function CreateDynamic PythonFunction. Once you create the DPF, you can then verify it works in Excel. 

2. Keep track of changes to workbooks and re-use code: F3 does not store workbooks, but rather saves the Python code workbook description language (WDL) that then generates the model component workbook. This makes it easier to, for example, loop over different currencies and re-use code. 

3. Customize Your User Interface (UI): In F3, you can easily build interactive dashboards using Python that fit your needs and preferences. See an example below. 

For more information on how FINCAD F3 uses Python, download the: F3 Enterprise Platform datasheet. 
1Advantages and Disadvantages of Python Programming Language: https://medium.com/@mindfiresolutions.usa/advantages-and-disadvantages-of-python-programming-language-fd0b394f2121


Strengthen your Valuation Models with Python

Would you like to add Python capabilities to your risk framework? Our team is happy to help guide you through the process. Request a call to get started. 

Learn about our new F3 Python Toolkit 


About the author
Helen He
Helen He
Manager, Financial Engineering | FINCAD

Helen joined FINCAD’s R&D team over 10 years ago. During this time, she has made contributions to FINCAD products through conducting industry research and analysis, as well as putting code directly into the code base.

Helen holds a Master’s of Financial Risk Management degree from Simon Fraser University.