avatarMr. Q

Summary

The website content introduces a series on using Python for financial analysis, emphasizing the language's growing importance in the financial industry and providing a practical guide for financial analysts to learn Python efficiently.

Abstract

The article titled "Python for Financial Analysis Series — Introduction" underscores the shift in the financial industry towards Python proficiency, noting its adoption by major financial institutions. It argues that Python, along with Jupyter Notebooks, is becoming the preferred tool for financial analysts, surpassing traditional tools like Excel/VBA. The piece acknowledges the ease of learning Python and its powerful, matured toolboxes that facilitate quick and efficient task completion. The author, with a decade of experience in financial technology, outlines a Python learning series tailored for financial analysts, focusing on essential language and toolbox knowledge, followed by practical application through example projects. The series aims to equip analysts with Python skills to enhance their daily work, with materials now hosted on Google Colab due to changes in Microsoft Azure Notebooks' platform.

Opinions

  • Python is identified as a critical skill for modern financial analysts, with its simplicity and efficiency making it ideal for daily tasks.
  • The author believes that learning Python should be focused and relevant to the specific needs of financial analysts, avoiding unnecessary content found in general online courses.
  • There is an emphasis on the practical application of Python in finance, with the learning series designed to get analysts using Python in real-world scenarios within a month.
  • The article suggests that Python's performance is more than sufficient for the majority of financial analysis tasks.
  • The author advocates for a hands-on approach to learning, with the first two weeks dedicated to Python core essentials and the following weeks to using Python tools like Pandas and Matplotlib.
  • The shift from Microsoft Azure Notebooks to Google Colab is seen as a positive move for beginners, providing an accessible and similar Jupyter Notebook environment.

Python for Financial Analysis Series — Introduction

Do not fall behind in this general skill upgrading revolution within the financial industry.

Highlight:

  • A concise introduction on how we can use Python for financial analysis.

Background

Python has become one of the most popular skills needed in the financial industry. Major banks, big asset managers and famous insurance companies are requiring their employees to know Python. If Excel/VBA was (or maybe still is) the number one tool for financial analysts, Python and Jupyter Notebook are taking off within this community.

Why Python?

Good question! Computer engineers may give us a huge list of why Python is good but also evil. We may also hear the data scientists and statisticians arguing about Python vs R. We probably have found articles about Julia (a new start language used by many hedge funds) outperforming Python.

But when we go back to our financial analysts work, do we care which one is in theory better?

No! We care more about if we can get the job done before 6 pm every day.

Python is such a language easy to learn (even simpler than VBA in Excel). Python is such a language coming with many matured toolboxes, which can help us done the job more quickly (maybe elegantly as well). Python is such a language just powerful enough for most of our daily tasks.

Don’t get me wrong. There are very challenging financial tasks needing better technologies even better computer languages to handle with. But let’s face it, the majority of our daily works are not going to be a big deal for Python at all. So just don’t worry about the performance for now.

So now we want to learn Python, but HOW?

I heard from many people the followings:

After finishing the online classes, it is still difficult to apply what have learnt to our daily works.

I found the class is way too long and teaches things that I will not use in the future.

It seems everything we can find online are off from our job, although they may have covered a great number of contents. For example, as financial analysts, we don’t need web development skills. Data science may sound cool, but do we apply such a thing to our day jobs at all?

The issue with most online courses is that they are created for Python jobs, however, Python is just a tool for financial analysts, it is such a small and niche part to be focused on.

For financial analysts, the best way learning Python is to learn the JUST enough essentials, then put hands on the actual problems. We, as financial analysts are not required to become engineers or data scientists (we may want to be in the future), what we need is to start solving the real problems ASAP.

OK, we understand, but how exactly? To answer this question, I decide to start a series of Python learning articles. The series intended to provide the most efficient way to start working with Python in our day jobs.

Who am I?

I am a normal person working for one of the biggest financial technology companies. For the last 10 years, I have been helping my customers (from major banks to small buy-side firms) to build financial analysis models and applications, using Excel/VBA, now becoming Python. I am not coming from an engineering background and I hold a very common corporate finance degree. I am self-taught “coder”, probably better still to title myself as a financial model builder. More importantly, I understand the numbers produced and the financial meaning of the model are always more crucial than the technology itself. With those experience, I believe this Python series, based on my self-learning path, could help many people who would like to advance the career with Python skills in the financial industry.

About the learning series

One of the key tips I have for myself too is that to adopt any new technology for our daily work, we need to get it done quickly. If one technology cannot be applied to real work in a month time, it is unlikely we will use it in the future.

In this series, we will have three parts. First two parts are the core content, which we need to go through as quickly as possible. The third part is a practical part, which is the key to inspire us to start using Python in our daily jobs.

Python Core (1 Week)

All essentials about language itself, including variables, conditions, loops, functions, exceptions and maybe a little bit of class. We should intend to use a more practical example to learn those key skills.

Python Tools (1 Week)

All essentials about the most used data analysis tools (more precisely Python packages), such as Pandas and Matplotlib. In most of the cases, we will use more packages rather than creating everything ourselves. Pandas (virtual data table) and Matplotlib (data visualization) are the musts for financial analysis.

Continuous learning with example projects (ongoing basis)

With the first two topics done, we should be good to start working with Python in our day-to-day jobs. However, thinking of or getting inspiration for project ideas can be challenging. It’s always good to see some real examples to apply what we have learnt and get inspired.

IMPORTANT UPDATE

Since Microsoft Azure Notebooks has moved to GitHub driven, which may be challenging for a beginner to start with. I have put all the material under Google Colab. It is a very similar Jupyter Notebook environment and you may check it out by click here.

All my code and files are shared and you may click here to open.

Let’s get started!

Get the learning environment set up.

To get hands-on quickly and to avoid wasting time going through too many IT processes, we will use Microsoft Azure Notebooks. It is free and good enough for our learning purpose. I will talk more about Jupyter Notebook in the next article. For now, let’s focus on getting the environment set up.

  1. Go to the online platform: https://notebooks.azure.com/

2. Do the regular sign up and login then go to “My Projects”

3. Create a new project

4. Let’s name it “Python for Finance”

Hello World!

You may have noticed, for most of the programming tutorials, Hello World is always the beginning of everything. It is kind of the coders’ spirit and a magic spell blessing us for the rest of the journey. So let’s keep this convention to start our journey too.

1. Let’s create a new notebook and call it “Hello World” and choose Python 3.6

2. Go into the notebook created

3. In the first coding box (officially called “Cell”) type the following code

‘Hello World’

4. Click button “Run” or use the short cut CTRL + ENTER (or SHIFT + ENTER) to run the code.

5. We should see the notebook says “Hello World” to us

That’s it for the introduction session. Hope you now understand why Python is important for us as financial analysts and what could be the best way to pick up Python for our daily tasks in finance.

See you in the next section! We will dive into Python Core.

Data Science
Finance
Python
Technology
Programming
Recommended from ReadMedium