Python in the Performance Team, Part 1: Finding the Problem

Jonnathan De Jesus working on computer
Share

The team at Members Trust Company (MTC) includes some of the industry’s most innovative players. Possessing a blend of financial experience, administrative acumen, and a plethora of specialized skills, they generate unique solutions that have far-reaching implications. Jonnathan De Jesus, Vice President, Senior Portfolio Manager, is one such example; he has already made a significant impact on the way that investment analysts use their time. With one simple addition – the surprisingly user-friendly Python coding language from 1994 – he has increased an entire team’s effectiveness and created an opportunity for MTC to generate hundreds of thousands of dollars’ worth of productivity without increasing payroll costs by a cent. This discovery came as a result of analyzing existing workflows at MTC and considering it in the context of computer programming, one of his personal pursuits.

The Common Issue That Financial Support Teams Face

With the inordinate amount of resources available to today’s financial analysts, investment analysts and support staff, there’s no shortage of information. Every day, people from around the world upload a limitless stream of data that can help investment analysts make informed decisions regarding the best investments for their clients. The hard part is finding the time to make use of that information.

There are innumerable tasks that these analysts must complete throughout the day that involve unfortunately little of their analytical capabilities. In fact, throughout the year, weeks’ worth of work is spent on necessary but tedious administrative tasks and submitting reports. As a significant time-sink that doesn’t require high-level staff, any means by which this time can be liberated will have a positive impact on the team.

An Opportunity for Automation

De Jesus noticed that one process was taking a significant amount of time to complete: notifying investment managers about newly received assets. This workflow involved multiple steps that repeated several actions. First, the analyst must gather the “New Money Activity,” “Cash Receipt Activity,” and “New Asset Activity” reports. Then, the analyst must email these reports to the portfolio managers, administrative officers and partners. Each recipient needs a uniquely tailored email, and it takes time to generate these reports and parse them for the correct recipients. In total, this process takes 33 minutes without interruptions, and they must repeat it every day.

When taken in aggregate, this process absorbs analysts’ attention for a total of 144 hours per year. Unfortunately, the process was frequently interrupted, meaning that the time spent on this task would inflate further, often reaching 195 or 260 hours over the course of a year. At no point during that time is the analyst earning the company money or improving operations for anyone else on the team, so that time is simply lost as part of the company’s ongoing maintenance expenses. When De Jesus was able to quantify this deficiency, he determined that the best course of action would be to automate this process, but he needed to find the right tools for the job.

Why Python? One Language’s Unique Advantages

Finding the right way to automate this process involved tapping into a separate field: data science. De Jesus considered four popular programming languages to determine which one would be best suited for the task:

  • R – A programming language with powerful analytical capabilities, but limited utility when it comes to automating the specific processes that De Jesus was attempting to improve.
  • Scala – This language offered potential, as it can manipulate large quantities of data, but it required a specific kind of data collation that MTC did not employ.
  • Julia – As a newer language, it has the potential for high flexibility, particularly in the area of artificial intelligence. While it may be a good choice for future automation, there are currently few online resources for self-learners.
  • Python – This language is general-purpose, can be used in a wide variety of applications, and has inspired a wealth of analysis and online resources.

Between these four options, De Jesus identified Python as the most easily accessible and offering the most significant amount of resources for his self-learning process. It dates back to 1994, so it reflects the simplicity of that era’s programming. As De Jesus explored Python’s potential as a resource, he discovered that it blended English and math in such a way that it can easily replicate human workflows. In particular, he could use it to automate the numerous steps involved in pulling the reports he needed, organizing the data into the correct emails, and parsing it for each partner. The result of this was an automation-assisted workflow that sent the right data to the right people in less than one-sixth the time it took before. When the process takes less time, it is also easier to complete without interruptions, saving even more time.

As De Jesus assembled the necessary algorithms, it became clear that there were more opportunities to save time and improve operations at Members Trust Company. In the next entry, we’ll examine several ways that Python proved to be well-suited to enhancing investment analysts’ performance. These benefits promised to help senior analysts with as much assistance as hiring additional staff could provide, but at a fraction of the cost. Due to how simple it is to create and use these algorithms in financial workflows, nearly any firm can take advantage of this technique to improve client service and save money.