O'Reilly logo
live online training icon Live Online training

Python For Finance: First Steps

Getting started using Python to calculate core financial concepts

enter image description here

Topic: Software Development
Abdullah Karasan

Python is a powerful tool for modeling due to its simplicity and robust capabilities, including libraries for mathematical operations, optimization, visualization, manipulation, and more. Combined with its user-friendly environment, Python is quite handy for financial modeling in particular.

Learn how to tackle modern financial issues with ease. Expert Abdullah Karasan walks you through key financial concepts such as return, correlation, covariance, and the risk-return relationship and teaches you how to apply them using Python. You’ll employ these concepts using the capital asset pricing model (CAPM) and the arbitrage pricing theorem (APT), find and extract your own dataset using the APIs of the main financial online data sources (including Yahoo Finance, Quandl, and FRED), and dive into the concept of the time value of money.

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • How to effectively use Python in finance
  • Key financial concepts
  • The main tools for financial modeling

And you’ll be able to:

  • Tackle financial problems with Python
  • Extract your own data
  • Develop your own models
  • Interpret the empirical results of your models

This training course is for you because...

  • You’re a financial analyst who wants to improve your financial modeling skills.
  • You want to improve your finance knowledge.
  • You want to learn how to adapt Python to finance while building your Python skills.


  • A basic understanding of statistics (central tendency and dispersion measures, distributions, etc.)
  • Familiarity with Python (for loops and if clauses, pandas, NumPy, etc.)

Recommended follow-up:

About your instructor

  • Abdullah Karasan was born in Berlin, Germany. After he studied Economics and Business Administration, he obtained his master’s degree from the University of Michigan-Ann Arbor and his PhD in Financial Mathematics from Middle East Technical University (METU)-Ankara. He worked as a Treasury Controller at the Undersecretariat of the Treasury in Turkey. More recently, he has been working as Principal Data Science consultant and instructor at Thinkful and Magnimind.

    His research fields are financial modeling, stochastic analysis, risk modeling machine learning, deep learning. Along with his researches, he is writing a book titled "Machine Learning for Financial Risk Management with Python.


The timeframes are only estimates and may vary according to how the class is progressing

Introduction to Python (25 minutes)

  • Presentation: Python basics—functions, iterations, and conditions; Python libraries
  • Jupyter notebook exercises: Starting from a blank cell, define functions and iterations in Python
  • Q&A

Main financial concepts (30 minutes)

  • Presentation: Financial concepts required to understand more advanced financial topics—return, correlation, covariance, and the risk-return relationship
  • Jupyter notebook exercises: Calculate return, correlation, and covariance
  • Q&A

Break (5 minutes)

Asset pricing models (55 minutes)

  • Presentation: The most important financial models—the capital asset pricing model (CAPM) and the arbitrage pricing theorem (APT); using APIs to access financial data; running regression models and interpretations
  • Jupyter notebook exercises: Retrieve data via APIs and the CAPM application
  • Q&A

Break (5 minutes)

Time value of money (50 minutes)

  • Presentation: The time value of money; net present value (NPV) and internal rate of return (IRR); the relationship between NPV and IRR; calculating NPV and IRR via Python
  • Jupyter notebook exercise: Calculate NPV and IRR for an example dataset

Wrap-up and Q&A (10 minutes)