How to compute the simple moving average with Pandas using Python

1 min readTime-SeriesDataFramePandasRollingDates
7-Day Challenge

Land Your First Data Science Job

A proven roadmap to prepare for $75K+ entry-level data roles. Perfect for Data Scientist ready to level up their career.

Build portfolios that hiring managers love
Master the Python and SQL essentials to be industry-ready
Practice with real interview questions from tech companies
Access to the $100k/y Data Scientist Cheatsheet

Join thousands of developers who transformed their careers through our challenge. Unsubscribe anytime.

There is a very simple way to compute the SMA in Python using the DataFrame.rolling() method.

Here is the code

# For the stock prices
import yfinance as yf

# We download the stocks
df = yf.download("AAPL", start="2019-01-01")

# We compute and plot the 20D and 200D SMA
df["Adj Close"].plot(title="AAPL close prices with 20 SMA and 200 SMA", label="Close price", legend=True)
df["Adj Close"].rolling(20).mean().plot(label="20SMA", legend=True)
df["Adj Close"].rolling(200).mean().plot(label="200SMA", legend=True)

The results

Here you are! You now know how to compute the simple moving average with Pandas using Python.

More on financial analysis

If you want to know more about Financial Analysis in Python and avoid the headaches... check out the other articles I wrote by clicking just here:

Financial Analysis - The Python You Need
We gathered the only Python essentials that you will probably ever need.

7-Day Challenge

Land Your First Data Science Job

A proven roadmap to prepare for $75K+ entry-level data roles. Perfect for Data Scientist ready to level up their career.

Build portfolios that hiring managers love
Master the Python and SQL essentials to be industry-ready
Practice with real interview questions from tech companies
Access to the $100k/y Data Scientist Cheatsheet

Join thousands of developers who transformed their careers through our challenge. Unsubscribe anytime.

Free Newsletter

Master Data Science in Days, Not Months 🚀

Skip the theoretical rabbit holes. Get practical data science skills delivered in bite-sized lessons – Approach used by real data scientist. Not bookworms. 📚

Weekly simple and practical lessons
Access to ready to use code examples
Skip the math, focus on results
Learn while drinking your coffee

By subscribing, you agree to receive our newsletter. You can unsubscribe at any time.