Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

The Hong Kong University of Science and Technology

Python and Statistics for Financial Analysis

The Hong Kong University of Science and Technology via Coursera


Course Overview:

Python is now becoming the number 1 programming language for data science. Due to python’s simplicity and high readability, it is gaining its importance in the financial industry. The course combines both python coding and statistical concepts and applies into analyzing financial data, such as stock data.

By the end of the course, you can achieve the following using python:

- Import, pre-process, save and visualize financial data into pandas Dataframe

- Manipulate the existing financial data by generating new variables using multiple columns

- Recall and apply the important statistical concepts (random variable, frequency, distribution, population and sample, confidence interval, linear regression, etc. ) into financial contexts

- Build a trading model using multiple linear regression model

- Evaluate the performance of the trading model using different investment indicators

Jupyter Notebook environment is configured in the course platform for practicing python coding without installing any client applications.


  • Visualizing and Munging Stock Data
    • Why do investment banks and consumer banks use Python to build quantitative models to predict returns and evaluate risks? What makes Python one of the most popular tools for financial analysis? You are going to learn basic python to import, manipulate and visualize stock data in this module. As Python is highly readable and simple enough, you can build one of the most popular trading models - Trend following strategy by the end of this module!
  • Random variables and distribution
    • In the previous module, we built a simple trading strategy base on Moving Average 10 and 50, which are "random variables" in statistics. In this module, we are going to explore basic concepts of random variables. By understanding the frequency and distribution of random variables, we extend further to the discussion of probability. In the later part of the module, we apply the probability concept in measuring the risk of investing a stock by looking at the distribution of log daily return using python. Learners are expected to have basic knowledge of probability before taking this module.
  • Sampling and Inference
    • In financial analysis, we always infer the real mean return of stocks, or equity funds, based on the historical data of a couple years. This situation is in line with a core part of statistics - Statistical Inference - which we also base on sample data to infer the population of a target variable.In this module, you are going to understand the basic concept of statistical inference such as population, samples and random sampling. In the second part of the module, we shall estimate the range of mean return of a stock using a concept called confidence interval, after we understand the distribution of sample mean.We will also testify the claim of investment return using another statistical concept - hypothesis testing.
  • Linear Regression Models for Financial Analysis
    • In this module, we will explore the most often used prediction method - linear regression. From learning the association of random variables to simple and multiple linear regression model, we finally come to the most interesting part of this course: we will build a model using multiple indices from the global markets and predict the price change of an ETF of S&P500. In addition to building a stock trading model, it is also great fun to test the performance of your own models, which I will also show you how to evaluate them!

Taught by

Xuhu Wan


4.3 rating, based on 417 Class Central reviews

4.4 rating at Coursera based on 3516 ratings

Start your review of Python and Statistics for Financial Analysis

  • Ronny De Winter completed this course, spending 2 hours a week on it and found the course difficulty to be medium.

    This is a compact course on statistical analysis using python on downloaded historical stock prices. You learn how to calculate moving averages (MA), buy signals based on MA, strategy profits, stock return frequency distributions, Value at Risk (VaR),...
  • Anonymous

    Anonymous completed this course.

    Executive summary: Recommend, but i personally did not like it and could spend my time better on harder and more useful courses. Complete review: The course is well arranged in terms of what contents they show in each module and it is quite practical,...
  • Anonymous
    The course is well arranged in terms of what contents they show in each module and it is quite practical, with some python codes to help us understand and play with the topics. But there were some things that kept me wondering that I should be spending...
  • Anonymous
    Very easy to understand! 1. Ease of use for beginners First and foremost, Python is one of the easiest programming languages to learn. You don’t need to have any programming experience to start performing data analysis in Python. Unlike R and MATLAB,...
  • Be specific and provide examples when commenting on the course or the instructor. Focus on observable behaviors of the instructor or particular aspects of the course. Describe the situation you are commenting about for the feedback. For example, "we couldn't...
  • Profile image for Chengkai Zhang
    Chengkai Zhang
    I personally feel that the course content is very full, but the problem is that there is no padding to quickly enter the explanation, should be more hints about the pre-course, can also explain more about how to use the functions in the package, no explanation directly to use.
  • Anonymous
    This course is very much useful. I enjoyed the course and learned a lot from it. The content is well organised and focused on practical situations. The course is well arranged in terms of what contents they show in each module and it is quite practical,...
  • Anonymous
    This Course is the worst ever course i have done in my life. I struggled too much in understanding the Faculty's accent (The worst i have ever heard). The subtitles were wrong in some places too. He does not provide explaination of the code used by him, you just have to figure it by yourself. Also there are differences in the codes he used in videos and the codes notes you get in the jupyter. Also in Quiz there are questions which contain web links to aparticular code in jupyter but when you click the link, it shows error in loading.
  • Anonymous
    This course was challenging but extremely rewarding. I was able to discover new aspects regarding teaching including modeling and manipulating statistical data assets, creating graphical visualization, informing future planning, and decision-making, I feel I have gained in-depth knowledge and how it can be improved upon. Everything is good from the start. There are some very good features on the website like grades summary on a single screen. The ticket system is what I like the most. Very good supportive course materials and assessor team. I highly recommended it. They made me a more competent person in my profession.
  • Anonymous
    When I was struggling on how to import data from different information sources into python for use, this course gave me the answer. The course taught me how to build models, based on historical data, to analyze future trends. In summary, I found the course particularly helpful for people who are just getting started with Python for data analysis like myself. However, the duration of the course is short, so some knowledge (especially the statistical probability part) is a bit abstract, so it is a bit difficult to understand.
  • Berbelek completed this course, spending 2 hours a week on it and found the course difficulty to be easy.

    I have mixed feelings about the course. It shows very practical aspects of building trading stategy in Python, which is still quite unique topic here. It also offers a lot of practice and ready to use and modify solutions delivered as Jupyter notebooks....
  • Anonymous
    I was looking forward to a course that gives me in depth analysis of pyhton mixed with statistics and this course was good enough. plus point includes the finance part was also taught thoroughly. I really enjoyed the course. It was a bit difficult course but i managed. It gave me a picture of what i wanted in future.

    anyone who is looking for a course where python, statistics and finance are linked together this course is great opportunity.
  • Anonymous
    While the course uses minimal deprecated code which makes me question of other code within can be simplified, it provides excellent insights on statistics with concise and effective explanations, something which was lacking in the UMichigan course I had previously taken in spite of its significantly greater length. I recommend this course as a great foundation to begin financial analysis for Python!
  • Anonymous
    This course is a good introductory course into the application of data analytics with python. In reality, without a very good understanding in statistics and python, you will struggle to follow along. I often found myself re-reading simple code as it was not explained well, and I have some experience in Python.

    For someone trying to learn data analytics, I would say this is a good course to audit, and do some exercises. I completed this in a very short period of time so maybe if you split it up it may be easier to do.

    Happy Learning :)
  • Anonymous
    Interesting and very good
    This course has helped me a lot in my journey to become a good data scientist.
    At university I learned statistics and statistical inference, I already knew how to calculate. But this course helped me to know how to use them on Python and how to use them for information. Getting information is a big step towards my goal of becoming a great data scientist.
  • Anonymous
    This was a great course provided one has some background in both python and statistics. The course is very fast paced, concise, and dense, covering some complex topics at a practical level. It appears that the course is a bit dated and that it is constrained from being updated frequently or consistenly. Nonetheless, I learned a great deal from the course and enjoyed it immensely.
  • Anonymous
    The technology enabling and supporting fintech is important to understand and this course provide a brief introduction to each areas of technology that enable fintech business changes, including identity and privacy technologies ,blockchain and encryption,bigdata analytics,al and automation and can also learn essential components of technology driven financial strategies .
  • Profile image for Abdul Majeed
    Abdul Majeed
    This is a very helpful course not only in financial or making financial decision but our daily life activities as well. Although the instructor's pronunciations of some worlds were somehow confusing but I think one of they few data analysis course I took with notebooks being properly designed and documented which simplifies and demonstrates the concept discussed in the lecture videos.
  • Anonymous

    Anonymous completed this course.

    Overall, I would recommend this for a beginner of python. The classes, until the end in my opinion, were easy to follow. Some of the quizzes were a little strange and unorganized where a few of the answers honestly didnt quite make sense, but for the...
  • Anonymous
    This course is very much useful. I enjoyed the course and learned a lot from it. The content is well organised and focused on practical situations. The course is well arranged in terms of what contents they show in each module and it is quite practical,...

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.